Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Esta página mostra-lhe como configurar uma ligação ao Databricks usando o Driver JDBC do Databricks, versão 3 e superiores.
Configurar a conexão
Para se ligar ao seu espaço de trabalho Azure Databricks usando o driver JDBC, precisa de especificar as definições de ligação, incluindo o nome do servidor do seu espaço, as definições dos recursos de computação e as credenciais de autenticação.
Observação
O driver JDBC não suporta a ligação ao sistema de computação de jobs.
Defina estas propriedades na URL da ligação JDBC, transmita-as ao método DriverManager.getConnection ou use uma combinação de ambos. Consulte a documentação do provedor para saber a melhor forma de se conectar usando seu aplicativo, cliente, SDK, API ou ferramenta SQL específica.
A URL de conexão JDBC deve estar no seguinte formato. As propriedades são insensíveis a maiúsculas e minúsculas.
jdbc:databricks://<server-hostname>:<port>/<schema>;[property1]=[value];[property2]=[value];...
Como alternativa, especifique as configurações usando a java.util.Properties classe ou uma combinação:
String url = "jdbc:databricks://<server-hostname>:<port>/<schema>";
Properties properties = new java.util.Properties();
properties.put("<property1>", "<value1");
properties.put("<property2>", "<value2");
// ...
Connection conn = DriverManager.getConnection(url, properties);
String url = "jdbc:databricks://<server-hostname>:<port>/<schema>;[property1]=[value];[property2]=[value];";
Connection conn = DriverManager.getConnection(url, "token", "12345678901234667890abcdabcd");
Os elementos de URL de conexão são descritos na tabela a seguir.
Para obter informações sobre propriedades adicionais, incluindo propriedades de autenticação, propriedades de configuração SQL e propriedades de log, consulte Propriedades de conexão com suporte.
Observação
Os elementos e propriedades de uma URL não fazem distinção entre letras maiúsculas e minúsculas.
| Elemento ou propriedade de URL | Descrição |
|---|---|
<server-hostname> |
O valor do nome de anfitrião do servidor do recurso de computação do Azure Databricks. |
<port> |
O valor da porta do recurso de computação do Azure Databricks. O valor predefinido é 443. |
<schema> |
O nome do esquema. Alternativamente, defina a ConnSchema propriedade. Consulte Propriedades de conexão suportadas. |
httpPath |
O valor do caminho HTTP do recurso de computação do Azure Databricks. O conector forma o endereço HTTP para conectar anexando o valor httpPath ao host e à porta especificados na URL de conexão. Por exemplo, para se conectar ao endereço http://localhost:10002/cliserviceHTTP, você usaria a seguinte URL de conexão: jdbc:databricks://localhost:10002;httpPath=cliservice |
Para obter a URL de conexão JDBC para um cluster do Azure Databricks :
- Faça logon no seu espaço de trabalho do Azure Databricks.
- Na barra lateral, clique em Computação e, em seguida, clique no nome do cluster de destino.
- Na guia Configuração, expanda Opções avançadas.
- Clique na guia JDBC/ODBC.
- Copie o URL JDBC para usar como URL de conexão JDBC, ou construa o URL a partir dos valores nos campos nome de host do servidor , porta , e caminho HTTP .
Para obter a URL de conexão JDBC para um armazém Databricks SQL :
- Faça logon no seu espaço de trabalho do Azure Databricks.
- Na barra lateral, clique em SQL Warehouses e, em seguida, clique no nome do armazém de destino.
- Clique no separador Detalhes da conexão.
- Copie o URL JDBC para usar como URL de conexão JDBC, ou construa o URL a partir dos valores nos campos nome de host do servidor , porta , e caminho HTTP .
Configurar tags de consulta
Importante
Esta funcionalidade está em Pré-visualização Privada. Para solicitar acesso, entre em contato com a equipe da sua conta.
Anexe etiquetas-chave-valor às consultas SQL para fins de rastreamento e análise. As etiquetas aparecem na system.query.history tabela para identificação e análise de consultas.
Para adicionar tags de consulta à conexão, inclua a propriedade query_tags no URL JDBC.
jdbc:databricks://<server-hostname>:<port>/<schema>;query_tags=key1:value1,key2:value2
As tags de consulta usam um formato de par chave:valor separado por vírgula:
-
query_tags=key:value(tag única) -
query_tags=key1:value1,key2:value2,key3:value3(várias tags)
Configurar ligações proxy
Configure o conector para se ligar através de um servidor proxy em vez de se ligar diretamente ao Databricks. O conector suporta autenticação básica e SPNEGO ao ligar através de um servidor proxy. Consulte Propriedades de conexão suportadas.
Para usar definições de proxy ao nível do sistema, defina UseProxy=1 e UseSystemProxy=1.
Para configurar manualmente as definições do proxy:
- Defina
UseProxy=1. - Defina
ProxyHost,ProxyPort, eProxyIgnoreList. - Para autenticar com o servidor proxy, escolha um método:
-
Básico: Definir
ProxyAuth=1,ProxyUID, eProxyPWD. -
SPNEGO (ambientes Kerberos): Autentique o principal Kerberos a nível de sistema e, em seguida, configure
ProxyAuth=2.
-
Básico: Definir
Configurar um proxy para o Cloud Fetch
O Cloud Fetch requer uma configuração de proxy separada da ligação principal do driver. Use as propriedades de ligação UseCFProxy, CFProxyHost, CFProxyPort, CFProxyAuth, CFProxyUID e CFProxyPwd para encaminhar o tráfego Cloud Fetch através de um proxy. Consulte Propriedades de conexão suportadas.
Se a sua rede for privada, permita *.blob.core.windows.net e *.store.core.windows.net, e adicione os downloads e revogações de certificados necessários à sua lista de permissões.
Troubleshooting
Se não conseguires resolver problemas de proxy, define EnableQueryResultDownload=0 para desativar o Cloud Fetch e volta ao download direto.
Para diagnosticar problemas de desempenho, defina LogLevel=4 para ativar o registo ao nível INFO. O driver regista a velocidade de download por bloco, por isso, grandes conjuntos de resultados geram múltiplas linhas de registo.
CloudFetch download speed: 21.24 MB/s
CloudFetch download speed: 20.60 MB/s
O driver regista um aviso quando a velocidade de download cai abaixo de aproximadamente 1 MB/s. O componente logarítmico é com.databricks.client.spark.jdbc.ResultFileDownloadHandler. Se os downloads estiverem lentos ou parados, aumente CloudFetchThreadPoolSize para descarregar mais blocos de ficheiros em paralelo.
Configuração do SSL
Se estiver a ligar-se a um espaço de trabalho Databricks com SSL ativado, configure o conector para se ligar a um socket com SSL. O conector utiliza autenticação unidirecional para verificar a identidade do servidor.
A autenticação unidirecional requer um certificado SSL assinado e de confiança. Configure o conector para aceder a uma TrustStore específica. Se não especificares um TrustStore, o conector usa o TrustStore padrão do Java (jssecacerts), ou cacerts se o jssecacerts não estiver disponível.
Para configurar o SSL:
- Defina
SSL=1. - Se não estiver a usar uma TrustStore Java predefinida, configure uma personalizada:
- Crie uma TrustStore contendo o seu certificado de servidor assinado e de confiança.
- Defina
SSLTrustStorecomo o percurso completo da TrustStore. - Definir
SSLTrustStorePwdpara a palavra-passe da TrustStore. - Se a TrustStore não for uma JKS TrustStore, defina
SSLTrustStoreTypecomoBCFKS(BouncyCastle FIPS Keystore) ouPKCS12.
Para alterar a estratégia de revogação de certificados, defina as seguintes propriedades:
-
CheckCertRevocation: Defina para0aceitar certificados revogados. A predefinição é1. -
AcceptUndeterminedRevocation: Defina para1aceitar certificados com estado de revogação indeterminado (por exemplo, quando o CRLDP está inacessível ou com prazo de expiração). A predefinição é0.
Autenticar o controlador
Para informações sobre como configurar a autenticação do driver JDBC, consulte Definições de autenticação para o driver JDBC Databricks.