Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
En esta página se muestra cómo configurar una conexión a Databricks mediante databricks JDBC Driver, versión 3 y posteriores.
Configuración de la conexión
Para conectarse al área de trabajo de Azure Databricks mediante el controlador JDBC, debe especificar la configuración de conexión, incluido el nombre de host del servidor del área de trabajo, la configuración de recursos de proceso y las credenciales de autenticación.
Nota:
El controlador JDBC no admite la conexión a 'jobs compute'.
Establezca estas propiedades en la dirección URL de conexión JDBC, páselas al método DriverManager.getConnection o use una combinación de ambos. Consulte la documentación del proveedor para obtener la mejor manera de conectarse mediante la aplicación específica, el cliente, el SDK, la API o la herramienta SQL.
La dirección URL de conexión JDBC debe tener el formato siguiente. Las propiedades no distinguen mayúsculas de minúsculas.
jdbc:databricks://<server-hostname>:<port>/<schema>;[property1]=[value];[property2]=[value];...
Como alternativa, especifique la configuración mediante la clase java.util.Properties o una combinación:
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");
Los elementos de la dirección URL de conexión se describen en la tabla siguiente.
Para obtener información sobre las propiedades adicionales, incluidas las propiedades de autenticación, las propiedades de configuración de SQL y las propiedades de registro, consulte Propiedades de conexión admitidas.
Nota:
Los elementos y propiedades de la dirección URL no distinguen mayúsculas de minúsculas.
| Elemento o propiedad URL | Descripción |
|---|---|
<server-hostname> |
Valor del nombre de host del servidor del recurso de proceso de Azure Databricks. |
<port> |
Valor de puerto del recurso de proceso de Azure Databricks. El valor predeterminado es 443. |
<schema> |
Nombre del esquema. Como alternativa, establezca la ConnSchema propiedad . Consulte Propiedades de conexión admitidas. |
httpPath |
Valor de ruta de acceso HTTP del recurso de proceso de Azure Databricks. El conector forma la dirección HTTP a la que se va a conectar anexando el valor de httpPath al host y el puerto especificados en la dirección URL de conexión. Por ejemplo, para conectarse a la dirección HTTP http://localhost:10002/cliservice, usaría la siguiente dirección URL de conexión: jdbc:databricks://localhost:10002;httpPath=cliservice |
Para obtener la dirección URL de conexión de JDBC para un clúster de Azure Databricks :
- Inicie sesión en su área de trabajo de Azure Databricks.
- En la barra lateral, haga clic en Proceso y, a continuación, haga clic en el nombre del clúster de destino.
- En la pestaña Configuración, expanda Opciones avanzadas.
- Haga clic en la pestaña JDBC/ODBC.
- Copie la URL JDBC para usarla como URL de conexión JDBC, o construya la URL a partir de los valores en los campos Nombre de host Server, Puerto y Ruta de acceso HTTP .
Para obtener la dirección URL de conexión de JDBC para una almacenamiento de Databricks SQL:
- Inicie sesión en su área de trabajo de Azure Databricks.
- En la barra lateral, haga clic en SQL Warehouses y, a continuación, haga clic en el nombre del almacén de destino.
- Haga clic en la pestaña Detalles de conexión.
- Copie la URL JDBC para usarla como URL de conexión JDBC, o construya la URL a partir de los valores en los campos Nombre de host Server, Puerto y Ruta de acceso HTTP .
Configuración de etiquetas de consulta
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 consultas SQL con fines de seguimiento y análisis. Las etiquetas aparecen en la system.query.history tabla para la identificación y el análisis de consultas.
Para agregar etiquetas de consulta a tu conexión, incluye la propiedad query_tags en tu JDBC URL.
jdbc:databricks://<server-hostname>:<port>/<schema>;query_tags=key1:value1,key2:value2
Las etiquetas de consulta usan un formato de par clave:valor separado por comas:
-
query_tags=key:value(etiqueta única) -
query_tags=key1:value1,key2:value2,key3:value3(varias etiquetas)
Configuración de conexiones de proxy
Configure el conector para conectarse a través de un servidor proxy en lugar de conectarse directamente a Databricks. El conector admite la autenticación básica y SPNEGO al conectarse a través de un servidor proxy. Consulte Propiedades de conexión admitidas.
Para usar la configuración de proxy de nivel de sistema, establezca UseProxy=1 y UseSystemProxy=1.
Para configurar manualmente las opciones de proxy:
- Establezca
UseProxy=1. - Establezca
ProxyHost,ProxyPortyProxyIgnoreList. - Para autenticarse con el servidor proxy, elija un método:
-
Básico: establezca
ProxyAuth=1,ProxyUIDyProxyPWD. -
SPNEGO (entornos Kerberos): autentique su principal de Kerberos en el nivel de sistema y luego establezca
ProxyAuth=2.
-
Básico: establezca
Configuración de un proxy para Cloud Fetch
Cloud Fetch requiere una configuración de proxy independiente de la conexión del controlador principal. Utilice las propiedades de conexión UseCFProxy, CFProxyHost, CFProxyPort, CFProxyAuth, CFProxyUID y CFProxyPwd para enrutar el tráfico de Cloud Fetch a través de un proxy. Consulte Propiedades de conexión admitidas.
Si la red es privada, permita *.blob.core.windows.net y *.store.core.windows.net, y agregue las descargas y revocaciones de certificados necesarias a la lista de permitidos.
Solución de problemas
Si no puede resolver problemas de proxy, establezca EnableQueryResultDownload=0 esta opción para deshabilitar Cloud Fetch y revertir a la descarga directa.
Para diagnosticar problemas de rendimiento, establezca LogLevel=4 para habilitar el registro en el nivel INFO. El controlador registra la velocidad de descarga por fragmento, por lo que los conjuntos de resultados grandes generan varias líneas de registro:
CloudFetch download speed: 21.24 MB/s
CloudFetch download speed: 20.60 MB/s
El controlador registra una advertencia cuando la velocidad de descarga cae por debajo de aproximadamente 1 MB/s. El componente de registro es com.databricks.client.spark.jdbc.ResultFileDownloadHandler. Si las descargas son lentas o se detiene, aumente CloudFetchThreadPoolSize para descargar más fragmentos de archivo en paralelo.
Configuración de SSL
Si se conecta a un área de trabajo de Databricks con SSL habilitado, configure el conector para conectarse a un socket habilitado para SSL. El conector usa la autenticación unidireccional para comprobar la identidad del servidor.
La autenticación unidireccional requiere un certificado SSL firmado y de confianza. Configure el conector para acceder a un TrustStore específico. Si no especifica trustStore, el conector usa el Java TrustStore predeterminado (jssecacerts) o cacerts si jssecacerts no está disponible.
Para configurar SSL:
- Establezca
SSL=1. - Si no usa un Java TrustStore predeterminado, configure uno personalizado:
- Cree un TrustStore que contenga el certificado de servidor de confianza firmado.
- Establezca
SSLTrustStoreen la ruta de acceso completa de TrustStore. - Establezca
SSLTrustStorePwden la contraseña de TrustStore. - Si TrustStore no es un JKS TrustStore, configure
SSLTrustStoreTypecomoBCFKS(BouncyCastle FIPS Keystore) oPKCS12.
Para cambiar la estrategia de revocación de certificados, establezca las siguientes propiedades:
-
CheckCertRevocation: se establece en0para aceptar certificados revocados. El valor predeterminado es1. -
AcceptUndeterminedRevocation: se establece en1para aceptar certificados con estado de revocación no predeterminado (por ejemplo, cuando CRLDP no es accesible o agota el tiempo de espera). El valor predeterminado es0.
Autenticar el controlador
Para obtener información sobre cómo configurar la autenticación para el controlador JDBC, consulte Configuración de autenticación del controlador JDBC de Databricks.