Configuración de la funcionalidad del controlador para el controlador JDBC de Databricks (Simba)

Nota:

Esta página se aplica a las versiones del controlador JDBC (heredado) debajo de la versión 3. Para el controlador JDBC de Databricks, versión 3 y posteriores, consulte Databricks JDBC Driver.

En esta página se describe cómo configurar opciones de funcionalidad de controlador especiales y avanzadas para el controlador JDBC de Databricks.

El controlador JDBC de Databricks proporciona la siguiente configuración de funcionalidad de controlador especial y avanzada.

Compatibilidad con consultas SQL-92 de ANSI en JDBC

Los controladores JDBC de Spark heredados aceptan consultas SQL en el dialecto ANSI SQL-92 y los traducen a Databricks SQL antes de enviarlos al servidor.

Si la aplicación genera Databricks SQL directamente o usa la sintaxis no ANSI SQL-92 específica de Azure Databricks, establezca UseNativeQuery=1 en la configuración de conexión. Esta configuración pasa las consultas SQL textualmente a Azure Databricks sin traducción.

Catálogo y esquema predeterminados

Para especificar el catálogo y el esquema predeterminados, agregue ConnCatalog=<catalog-name>;ConnSchema=<schema-name> a la dirección URL de conexión JDBC.

Etiquetas de consulta para el seguimiento

Importante

** Esta característica está disponible en versión preliminar privada. Para solicitar acceso, póngase en contacto con el equipo de su cuenta.

Adjunte etiquetas clave-valor a las consultas SQL con fines de seguimiento y análisis. Las etiquetas de consulta aparecen en la system.query.history tabla para la identificación y el análisis de consultas.

Para agregar etiquetas de consulta a la conexión, incluya el parámetro ssp_query_tags en la URL de conexión JDBC.

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

Defina etiquetas de consulta como pares clave-valor separados por comas, donde cada clave y valor están separados por dos puntos. Por ejemplo: key1:value1,key2:value2.

Extracción de resultados de consultas grandes en JDBC

Para lograr el mejor rendimiento al extraer resultados de consultas grandes, use la última versión del controlador JDBC, que incluye las siguientes optimizaciones.

Serialización de Arrow en JDBC

La versión 2.6.16 del controlador JDBC y versiones posteriores admiten un formato de serialización de resultados de consulta optimizado que usa Apache Arrow.

Nota:

Cloud Fetch solo está disponible para AWS y Azure áreas de trabajo.

Cloud Fetch en JDBC

La versión 2.6.19 del controlador JDBC y versiones posteriores admite Cloud Fetch, una funcionalidad que captura los resultados de las consultas a través del almacenamiento en la nube configurado en la implementación de Azure Databricks.

Al ejecutar una consulta, Azure Databricks almacena los resultados en el almacenamiento en la nube del área de trabajo como archivos serializados con flecha de hasta 20 MB. Una vez completada la consulta, el controlador envía solicitudes de captura y Azure Databricks devuelve direcciones URL de firma de acceso compartido (SAS) a los archivos de resultados. A continuación, el controlador usa estas direcciones URL para descargar los resultados directamente desde Azure almacenamiento.

Cloud Fetch solo se aplica a los resultados de la consulta de más de 1 MB. El controlador recupera resultados más pequeños directamente de Azure Databricks.

Azure Databricks recolección de elementos no utilizados automáticamente recopila archivos acumulados, lo que los marca para su eliminación después de 24 horas y los elimina permanentemente después de 24 horas adicionales.

Habilitar registro

Para habilitar el registro en el controlador JDBC, establezca la LogLevel propiedad en un valor entre 1 (solo eventos graves) y 6 (toda la actividad del controlador). Establezca la LogPath propiedad en la ruta de acceso completa de la carpeta donde desea guardar los archivos de registro.

Para obtener más información, consulte Configuración del registro en la Guía del controlador JDBC de Databricks.