Pular para o conteúdo principal

Configurações de capacidade do driver para o driver JDBC do Databricks (Simba)

nota

Esta página aplica-se às versões do driver JDBC Databricks anteriores à versão 3. Para o driver JDBC Databricks versão 3 e superior, consulte Driver JDBC Databricks.

Esta página descreve como configurar as definições de capacidade especiais e avançadas do driver JDBC da Databricks.

O driver JDBC da Databricks fornece as seguintes configurações especiais e avançadas de recursos do driver.

Suporte a consultas ANSI SQL-92 em JDBC

Os drivers JDBC legados Spark aceitam consultas SQL no dialeto ANSI SQL-92 e as traduzem para Databricks SQL antes de enviá-las ao servidor.

Se o seu aplicativo gera Databricks SQL diretamente ou usa sintaxe SQL-92 não ANSI específica do Databricks, defina UseNativeQuery=1 na sua configuração de conexão. Essa configuração envia as consultas SQL literalmente para o Databricks, sem tradução.

Catálogo e esquema padrão

Para especificar o catálogo e esquema padrão, adicione ConnCatalog=<catalog-name>;ConnSchema=<schema-name> na URL de conexão JDBC.

tags de consulta para acompanhamento

info

Visualização

Este recurso está em Visualização Privada. Para solicitar acesso, entre em contato com sua equipe account .

Adicione tags key-valor às suas consultas SQL para fins de acompanhamento e análise. tags de consulta aparecem na tabela system.query.history para identificação e análise de consultas.

Para adicionar tags de consulta à sua conexão, inclua o parâmetro ssp_query_tags no URL da sua conexão JDBC:

jdbc:databricks://<server-hostname>:443;httpPath=<http-path>;ssp_query_tags=key1:value1,key2:value2

Defina tags de consulta como pares key-valor separados por vírgulas, onde cada key e valor são separados por dois pontos. Por exemplo, key1:value1,key2:value2.

Extrair grandes resultados de consultas em JDBC

Para obter o melhor desempenho ao extrair resultados de consultas extensas, utilize a versão mais recente do driver JDBC, que incorpora as seguintes otimizações.

Serialização de setas em JDBC

JDBC O driver versão 2.6.16 e o acima oferecem suporte a um formato otimizado de serialização de resultados de consulta que usa Apache Arrow.

Cloud Fetch em JDBC

O driver JDBC versão 2.6.19 e superior suporta o Cloud Fetch, uma funcionalidade que busca resultados de consultas através do armazenamento cloud configurado na sua implementação Databricks .

Ao executar uma consulta, Databricks carrega os resultados para um local de armazenamentoDBFS interno como arquivos serializados em Arrow de até 20 MB. Após a conclusão da consulta, o driver envia solicitações de busca e Databricks retorna URLs pré-assinadas para os arquivos de upload. O driver utiliza então esses URLs para download os resultados diretamente do DBFS.

O recurso Cloud Fetch só se aplica a resultados de consulta maiores que 1 MB. O driver recupera resultados menores diretamente do Databricks.

O Databricks coleta automaticamente o lixo dos arquivos acumulados, marcando-os para exclusão após 24 horas e excluindo-os permanentemente após mais 24 horas.

O Cloud Fetch requer um workspace E2 e um bucket Amazon S3 sem controle de versão ativado. Se você tiver o controle de versão ativado, consulte Configurações avançadas para habilitar o Cloud Fetch.

Para saber mais sobre a arquitetura Cloud Fetch, consulte Como alcançamos conectividade de alta largura de banda com ferramentas de BI.

Considerações sobre versionamento de buckets S3

O Cloud Fetch grava conjuntos de resultados temporários no armazenamento interno workspace ( DBFS root do seu workspace). Se você habilitar o versionamento de buckets S3, o Databricks não poderá coletar versões antigas desses arquivos após o período de retenção de 24 horas. Isso pode levar a um crescimento exponencial do armazenamento, à medida que versões desatualizadas dos arquivos se acumulam.

A Databricks recomenda configurar uma política de ciclo de vida do S3 de um dia para eliminar automaticamente as versões desatualizadas.

Para definir uma política de ciclo de vida:

  1. No console AWS, acesse o serviço S3 .
  2. Clique no bucketS3 que o senhor usa para o armazenamento raiz do workspace.
  3. Abra a tab Gerenciamento e clique em Criar regra de ciclo de vida .
  4. Insira um nome para a regra do ciclo de vida .
  5. Mantenha o campo prefixo vazio.
  6. Em Ações da regra do ciclo de vida , selecione Excluir permanentemente versões não atuais de objetos .
  7. Defina um valor em "Dias após os objetos deixarem de ser atuais" . A Databricks recomenda o uso de 1 dia.
  8. Clique em Criar regra .

Ativar registro

Para habilitar o registro no driver JDBC, defina a propriedade LogLevel para um valor entre 1 (somente eventos graves) e 6 (toda a atividade do driver). Defina a propriedade LogPath para o caminho completo da pasta onde você deseja salvar os arquivos de log.

Para obter mais informações, consulte Configurando o log no guia Databricks JDBC Driver.