Configurações de capacidade do driver para o driver JDBC do Databricks (Simba)
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
- Catálogo e esquema padrão
- tags de consulta para acompanhamento
- Extrair grandes resultados de consultas em JDBC
- Serialização de setas em JDBC
- Cloud Fetch em JDBC
- Considerações sobre versionamento de buckets S3
- Ativar registro
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
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:
- No console AWS, acesse o serviço S3 .
- Clique no bucketS3 que o senhor usa para o armazenamento raiz do workspace.
- Abra a tab Gerenciamento e clique em Criar regra de ciclo de vida .
- Insira um nome para a regra do ciclo de vida .
- Mantenha o campo prefixo vazio.
- Em Ações da regra do ciclo de vida , selecione Excluir permanentemente versões não atuais de objetos .
- Defina um valor em "Dias após os objetos deixarem de ser atuais" . A Databricks recomenda o uso de 1 dia.
- 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.