Partilhar via


Propriedades de conexão suportadas

Este artigo descreve as propriedades de conexão suportadas pelo Databricks JDBC Driver (OSS).

Propriedades de autenticação e proxy

As seguintes propriedades de conexão são suportadas pelo Databricks JDBC Driver (OSS). As propriedades são insensíveis a maiúsculas e minúsculas.

Propriedade Valor padrão Descrição
AsyncExecPollInterval 200 O tempo, em milissegundos, entre cada interrogação para o estado de execução da consulta assíncrona. Assíncrono refere-se ao fato de que a chamada RPC usada para executar uma consulta no Spark é assíncrona. Isso não significa que as operações assíncronas JDBC são suportadas.
Auth_Flow 0 O fluxo de autenticação OAuth2 para a conexão do driver. Esta propriedade é necessária se AuthMech estiver 11.
Auth_JWT_Key_File null O caminho para o arquivo de chave privada (formato PEM) para autenticação JWT.
Auth_JWT_Alg RS256 O algoritmo para autenticação JWT de chave privada. Os algoritmos suportados são: RSA: RS256, RS384, RS512, PS256, PS384, PS512 e EC: ES256, ES384, ES512
Auth_JWT_Key_Passphrase null A frase secreta para desencriptar uma chave privada encriptada.
Auth_KID null O identificador de chave (KID) necessário para a autenticação JWT. Isso é obrigatório ao usar a chave privada JWT.
AuthMech Necessário O mecanismo de autenticação, onde 3 especifica o mecanismo é um token de acesso pessoal do Azure Databricks e 11 especifica que o mecanismo é tokens OAuth 2.0. Propriedades adicionais são necessárias para cada mecanismo. Veja Autenticar o driver.
CFProxyAuth 0 Se definido como 1, o driver usa o usuário e a senha de autenticação de proxy, representados por CFProxyUID e CFProxyPwd.
CFProxyHost null Uma cadeia de caracteres que representa o nome do host proxy a ser usado quando UseCFProxy também estiver definido como 1.
CFProxyPort null Um inteiro que representa o número da porta proxy a ser usada quando UseCFProxy também está definido como 1.
CFProxyUID null Uma cadeia de caracteres que representa o nome de usuário a ser usado para autenticação de proxy quando CFProxyAuth e UseCFProxy também são definidas como 1.
CFProxyPwd null Uma cadeia de caracteres que representa a senha a ser usada para autenticação de proxy quando CFProxyAuth e UseCFProxy também são definidas como 1.
ConnCatalog ou catalog SPARK O nome do catálogo padrão a ser usado.
ConnSchema ou schema default O nome do esquema padrão a ser usado. Isso pode ser especificado substituindo <schema> na URL pelo nome do esquema a ser usado ou definindo a propriedade ConnSchema como o nome do esquema a ser usado.
EnableComplexDatatypeSupport 0 Se definido como 1, o suporte para tipos de dados complexos (ARRAYs, STRUCTs, MAPs) como objetos Java nativos em vez de strings está habilitado.
GoogleServiceAccount null Permite a autenticação usando uma conta de serviço do Google.
GoogleCredentialsFile null O caminho para o arquivo de chave JSON para autenticação da conta de serviço do Google.
EnableOIDCDiscovery 1 Se definido como 1, a URL de descoberta do OpenID Connect será usada.
OIDCDiscoveryEndpoint null O URL de descoberta do OpenID Connect para recuperar a configuração do OIDC.
Auth_RefreshToken null O token de atualização OAuth2 usado para recuperar um novo token de acesso.
OAuth2ConnAuthAuthorizeEndpoint null A URL do ponto de extremidade de autorização usada em um fluxo OAuth2.
OAuth2ConnAuthTokenEndpoint null A URL do ponto de extremidade do token para o fluxo OAuth2.
ProxyAuth 0 Se definido como 1, o driver usa o usuário e a senha de autenticação de proxy, representados por ProxyUID e ProxyPwd.
ProxyHost null Uma cadeia de caracteres que representa o nome do host proxy a ser usado quando UseProxy também estiver definido como 1.
ProxyPort null Um inteiro que representa o número da porta proxy a ser usada quando UseProxy também está definido como 1.
ProxyPwd null Uma cadeia de caracteres que representa a senha a ser usada para autenticação de proxy quando ProxyAuth e UseProxy também são definidas como 1.
ProxyUID null Uma cadeia de caracteres que representa o nome de usuário a ser usado para autenticação de proxy quando ProxyAuth e UseProxy também são definidas como 1.
SSL 1 Se o conector se comunica com o servidor Spark por meio de um soquete habilitado para SSL.
UseProxy 0 Se definido como 1, o driver usa as configurações de proxy fornecidas (por exemplo: ProxyAuth, ProxyHost, ProxyPort, ProxyPwde ProxyUID).
UseSystemProxy 0 Se definido como 1, o driver usa as configurações de proxy que foram definidas no nível do sistema. Se quaisquer propriedades de proxy adicionais forem definidas na URL de conexão, essas propriedades de proxy adicionais substituirão aquelas que foram definidas no nível do sistema.
UseCFProxy 0 Se definido como 1, o driver usa as configurações de proxy de busca na nuvem se elas forem fornecidas, caso contrário, use o proxy regular.
UseJWTAssertion false Permite a autenticação JWT de chave privada para casos de uso M2M em que a autenticação de segredo do cliente é restrita.
UserAgentEntry browser A entrada User-Agent deve ser incluída no pedido HTTP. Esse valor está no seguinte formato: [ProductName]/[ProductVersion] [Comment]
UseThriftClient 0 Se o driver JDBC deve usar o cliente Thrift para se conectar a um cluster multiuso. O valor padrão funciona para armazéns SQL.

propriedades de configuração do SQL

As seguintes propriedades de configuração SQL são suportadas pelo Databricks JDBC Driver (OSS). Eles também são descritos em Parâmetros de configuração. As propriedades não diferenciam maiúsculas de minúsculas.

Propriedade Valor padrão Descrição
ansi_mode TRUE Se é necessário habilitar o comportamento ANSI SQL estrito para determinadas funções e regras de transmissão.
enable_photon TRUE Se o mecanismo de consulta vetorizada Photon deve ser habilitado.
legacy_time_parser_policy EXCEPTION Os métodos usados para analisar e formatar datas e marcadores temporais. Os valores válidos são EXCEPTION, LEGACYe CORRECTED.
max_file_partition_bytes 128m O número máximo de bytes para colocar numa única partição ao ler a partir de fontes baseadas em ficheiro. A configuração pode ser qualquer inteiro positivo e, opcionalmente, incluir uma medida como b (bytes), k ou kb (1024 bytes).
read_only_external_metastore false Controla se um metastore externo é tratado como de leitura apenas.
statement_timeout 172800 Define um tempo limite de instrução SQL entre 0 e 172800 segundos.
timezone UTC Defina o fuso horário local. IDs de região no formato area/city, como America/Los_Angeles ou deslocamentos de zona no formato (+|-)HH, (+|-)HH:mm ou (+|-)HH:mm:ss, por exemplo, -08, +01:00 ou -13:33:33. Além disso, UTC é suportado como um alias para +00:00
use_cached_result true Se o Databricks SQL armazena em cache e reutiliza os resultados sempre que possível.

Propriedades de registo

As seguintes propriedades de log são suportadas pelo Databricks JDBC Driver (OSS). As propriedades não diferenciam maiúsculas de minúsculas.

Propriedade Valor padrão Descrição
LogLevel OFF O nível de log, que é um valor de 0 a 6:
  • 0: Desative todos os registros.
  • 1: Habilite o registo no nível FATAL, que regista eventos de erro muito graves que levarão o conector a abortar.
  • 2: Habilite o registro no nível ERROR, que registra eventos de erro que ainda podem permitir que o conector continue em execução.
  • 3: Habilite o registro no nível WARNING, que registra eventos que podem resultar em um erro se uma ação não for tomada.
  • 4: Habilite o registro no nível INFO, que registra informações gerais que descrevem o progresso do conector.
  • 5: Habilite o registro em log no nível DEBUG, que registra informações detalhadas que são úteis para depurar o conector.
  • 6: Habilite o registro em log no nível TRACE, que registra toda a atividade do conector.

Use essa propriedade para habilitar ou desabilitar o registro em log no conector e para especificar a quantidade de detalhes incluídos nos arquivos de log.
LogPath Para determinar o caminho padrão para logs, o driver usa o valor definido para essas propriedades do sistema, nesta ordem de prioridade:
  • user.dir
  • java.io.tmpdir
  • o diretório atual, ou seja, .
O caminho completo para a pasta onde o conector guarda os ficheiros de registo quando o registo está ativado, como um texto. Para garantir que a URL de conexão seja compatível com todos os aplicativos JDBC, escape das barras invertidas (\) no caminho do arquivo digitando outra barra invertida.
Se o valor LogPath for inválido, o conector enviará as informações registradas para o fluxo de saída padrão (System.out).
LogFileSize Sem máximo O tamanho máximo permitido do arquivo de log, especificado em MB
LogFileCount Sem máximo O número máximo de arquivos de log permitidos

Habilitar e configurar o registo

O driver JDBC suporta os frameworks Simple Logging Facade for Java (SLF4J) e java.util.logging (JUL). O driver usa a estrutura de log JUL por padrão.

Para ativar e configurar o registo para o driver JDBC:

  1. Habilite a estrutura de log que você deseja usar:

    • Para registo de logs SLF4J, defina a propriedade do sistema -Dcom.databricks.jdbc.loggerImpl=SLF4JLOGGER e forneça a implementação de ligação SLF4J (compatível com a versão 2.0.13 e superior do SLF4J) e o respetivo ficheiro de configuração no classpath.
    • Para o registro em log JUL, defina a propriedade do sistema -Dcom.databricks.jdbc.loggerImpl=JDKLOGGER. Este é o padrão.
  2. Defina a propriedade LogLevel na cadeia de conexão para o nível desejado de informações a serem incluídas nos arquivos de log.

  3. Defina a propriedade LogPath na cadeia de conexão para o caminho completo para a pasta onde você deseja salvar os arquivos de log.

    Por exemplo, a seguinte URL de conexão habilita o nível de log 6 e salva os arquivos de log na pasta C:temp:

    jdbc: databricks://localhost:11000;LogLevel=6;LogPath=C:\\temp
    
  4. Reinicie o aplicativo JDBC e reconecte-se ao servidor para aplicar as configurações.

Propriedades das operações de volume

As seguintes propriedades de operações de volume do Unity Catalog são suportadas pelo Databricks JDBC Driver (OSS). As propriedades não diferenciam maiúsculas de minúsculas.

Propriedade Valor padrão Descrição
VolumeOperationAllowedLocalPaths `` A lista separada por vírgulas de caminhos locais permitidos para download e upload de arquivos UC Volume Ingestion. Os caminhos também incluem subdiretórios.

Gerenciar arquivos usando volumes

O Databricks oferece recursos de ingestão em massa (upload/download/remove) usando volumes do Unity Catalog, permitindo que os usuários transfiram conjuntos de dados de e para arquivos locais, como arquivos CSV. Consulte Quais são os volumes do Catálogo Unity?. Para habilitar as operações de volume do Catálogo Unity, defina a propriedade de conexão VolumeOperationAllowedLocalPaths como uma lista separada por vírgulas de caminhos locais permitidos para as operações de volume.

O Catálogo Unity deve estar habilitado para usar esse recurso. Funcionalidade semelhante está disponível usando a interface do usuário do Databricks. Consulte Carregar ficheiros para um volume do Catálogo Unity.

Os comandos de ingestão do Unity Catalog são instruções SQL. Os exemplos abaixo demonstram operações PUT, GETe REMOVE.

Carregar um ficheiro local

Para carregar o arquivo local /tmp/test.csv no caminho de volume do Catálogo Unity como /Volumes/main/default/e2etests/file1.csv, use a operação PUT.

  PUT '/tmp/test.csv' INTO '/Volumes/main/default/e2etests/file1.csv' OVERWRITE

Descarregar um ficheiro

Para baixar um ficheiro do caminho de volume do Unity Catalog /Volumes/main/default/e2etests/file1.csv para um ficheiro local /tmp/test.csv, use a operação GET:

  GET '/Volumes/main/default/e2etests/file1.csv' TO '/tmp/test.csv'

Excluir um arquivo

Para eliminar um ficheiro com um caminho de volume do Unity Catalog /Volumes/main/default/e2etests/file1.csv, use a operação REMOVE:

  REMOVE '/Volumes/main/default/e2etests/file1.csv'