Configurar uma conexão com o Databricks usando o driver JDBC do Databricks
Este artigo mostra como configurar uma conexão com Databricks usando o Databricks JDBC Driver, versão 3 e acima.
Configurar a conexão
Para se conectar ao Databricks workspace usando o driver JDBC, o senhor precisa especificar várias configurações de conexão, como o nome do host do servidor Databricks workspace, as configurações de recurso compute e as credenciais de autenticação para se conectar ao workspace.
O driver JDBC não suporta a conexão com o Job compute.
O senhor pode definir o valor dessas propriedades no URL da conexão JDBC, definir e passá-las para o método DriverManager.getConnection ou 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íficos.
O URL da conexão JDBC deve estar no seguinte formato. As propriedades não diferenciam maiúsculas de minúsculas.
jdbc:databricks://<server-hostname>:<port>/<schema>;[property1]=[value];[property2]=[value];...
Como alternativa, especifique as configurações usando a classe java.util.Properties 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 do 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 do SQL e propriedades de registro, consulte Propriedades de conexão suportadas.
Os elementos e propriedades do URL não diferenciam maiúsculas de minúsculas.
Elemento ou propriedade do URL | Descrição |
|---|---|
| O valor do nome do host do servidor do recurso Databricks compute . |
| O valor da porta do recurso Databricks compute . O valor default é |
| O nome do esquema. Como alternativa, você pode definir a propriedade |
| O valor do caminho HTTP do recurso Databricks compute . O conector forma o endereço HTTP ao qual se conectar anexando o valor |
Para obter o JDBC URL de Databricks conexão para um clustering:
- Faça login no seu espaço de trabalho do Databricks.
- Na barra lateral, clique em computar e, em seguida, clique no nome do clustering de destino.
- Em Configuration (Configuração ) tab, expanda Advanced options (Opções avançadas ).
- Clique no link JDBC/ODBC tab.
- Copie o URL do JDBC para usar como URL de conexão JDBC ou construa o URL a partir dos valores nos campos Nome do host do servidor , Porta e Caminho HTTP .
Para obter o JDBC URL de conexão para um Databricks SQL depósito:
- Faça login no seu espaço de trabalho do Databricks.
- Na barra lateral, clique em SQL warehouse e, em seguida, clique no nome do warehouse de destino.
- Clique em Connection details (Detalhes da conexão) tab.
- Copie o URL do JDBC para usar como URL de conexão JDBC ou construa o URL a partir dos valores nos campos Nome do host do servidor , Porta e Caminho HTTP .
Configurar tags de consulta
Visualização
Este recurso está em Visualização Privada. Para solicitar acesso, entre em contato com sua equipe account .
Você pode anexar tags de key-valor às suas consultas SQL para fins de acompanhamento e análise. As tags de consulta aparecem na tabela system.query.history para identificação e análise de consulta.
Para adicionar tags de consulta à sua conexão, inclua a propriedade query_tags no seu URL JDBC:
jdbc:databricks://<server-hostname>:<port>/<schema>;query_tags=key1:value1,key2:value2
tags de consulta usam uma keyseparada por vírgulas formato de par:
query_tags=key:value( tag única)query_tags=key1:value1,key2:value2,key3:value3(várias tags)
Configurar conexões proxy
O senhor pode configurar o conector para se conectar por meio de um servidor proxy em vez de se conectar diretamente ao Databricks. Ao se conectar por meio de um servidor proxy, o conector oferece suporte à autenticação básica e SPNEGO.
Para configurar uma conexão proxy:
- Defina a propriedade
UseProxycomo 1. - Para definir as configurações de proxy no nível do sistema, defina a propriedade
UseSystemProxycomo 1, caso contrário, defina-a para o driver da seguinte maneira:- Defina a propriedade
ProxyHostcomo o endereço IP ou nome de host do seu servidor proxy. - Defina a propriedade
ProxyPortcomo a porta que o servidor proxy usa para escutar as conexões do cliente. - Defina a propriedade
ProxyIgnoreListcomo um nome de host separado por vírgula. - Autentique-se com o servidor proxy:
-
Para usar a autenticação básica
- Defina a propriedade
ProxyAuthcomo 1. - Defina a propriedade
ProxyUIDcomo seu nome de usuário para acessar o servidor. - Defina a propriedade
ProxyPWDcomo sua senha para acessar o servidor.
- Defina a propriedade
-
Para usar a autenticação SPNEGO:
- Autentique seu kerberos principal no nível do sistema.
- Defina a propriedade
ProxyAuthcomo 2.
-
- Defina a propriedade
Para usar um proxy diferente especificamente para o CloudFetch, siga as etapas acima com as seguintes propriedades: UseCFProxy, CFProxyHost, CFProxyPort, CFProxyAuth, CFProxyUID, CFProxyPwd
Configuração de SSL
Se estiver se conectando ao Databricks que tem o Secure Sockets Layer (SSL) ativado, o senhor pode configurar o conector para se conectar a um soquete ativado para SSL. Ao se conectar a um servidor por SSL, o conector usa autenticação unidirecional para verificar a identidade do servidor.
A autenticação unidirecional requer um certificado SSL assinado e confiável para verificar a identidade do servidor. Você pode configurar o conector para acessar um TrustStore específico que contém o certificado apropriado. Se o senhor não especificar um TrustStore, o conector usará o TrustStore default Java chamado jssecacerts. Se jssecacerts não estiver disponível, o conector usará cacerts em vez disso.
Para configurar o SSL:
- Defina a propriedade SSL como 1.
- Se o senhor não estiver usando um dos default Java Trust Stores, crie um Trust Store e configure o conector para usá-lo:
- Crie um Trust Store contendo seu certificado de servidor confiável e assinado.
- Defina a propriedade SSLTrustStore para o caminho completo do TrustStore.
- Defina a propriedade SSLTrustStorePwd como a senha para acessar o TrustStore.
- Se o TrustStore não for um JKS TrustStore, defina a propriedade SSLTrustStoreType para o tipo correto. Os tipos suportados são:
- SSLTrustStoreType=BCFKS (repositório de chaves FIPS BouncyCastle)
- SSLTrustStoreType=PKCS12 (Padrões de criptografia de chave pública nº 12)
Em certos casos, quando você deseja alterar a estratégia de revogação do certificado, o conector fornece os seguintes parâmetros:
- A propriedade CheckCertRevocation, quando definida como 0, aceitará certificados que tenham sido revogados (default valor da propriedade é 1)
- A propriedade AcceptUndeterminedRevocation, quando definida como 1, aceitará certificados em que não for possível identificar o status de revogação dos certificados (o CRLDP não pode ser acessado/tempo limite etc.); o valor default dessa propriedade é 0
Autentique o driver
Para obter informações sobre como configurar a autenticação para o driver JDBC , consulte Configurações de autenticação para o driver JDBC Databricks.