Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Auf dieser Seite erfahren Sie, wie Sie eine Verbindung zu Databricks mithilfe des Databricks JDBC-Treibers, Version 3 und höher, konfigurieren.
Konfigurieren der Verbindung
Zum Herstellen einer Verbindung mit Ihrem Azure Databricks-Arbeitsbereich mithilfe des JDBC-Treibers müssen Sie Verbindungseinstellungen angeben, einschließlich des Serverhostnamens Ihres Arbeitsbereichs, der Einstellungen für Computerressourcen und der Authentifizierungsanmeldeinformationen.
Hinweis
Der JDBC-Treiber unterstützt keine Verbindungen zu 'jobs compute'.
Legen Sie diese Eigenschaften bei der Verbindungs-URL fest, übergeben Sie sie an die DriverManager.getConnection-Methode oder verwenden Sie eine Kombination aus beidem. In der Dokumentation des Anbieters erfahren Sie, wie Sie eine Verbindung mit Ihrer spezifischen App, Ihrem Client, dem SDK, der API oder dem SQL-Tool herstellen können.
Die JDBC-Verbindungs-URL muss im folgenden Format vorliegen. Bei Eigenschaften wird die Groß-/Kleinschreibung nicht berücksichtigt.
jdbc:databricks://<server-hostname>:<port>/<schema>;[property1]=[value];[property2]=[value];...
Alternativ können Sie die Einstellungen mithilfe der java.util.Properties Klasse oder einer Kombination angeben:
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");
Verbindungs-URL-Elemente werden in der folgenden Tabelle beschrieben.
Informationen zu zusätzlichen Eigenschaften, einschließlich Authentifizierungseigenschaften, SQL-Konfigurationseigenschaften und Protokollierungseigenschaften, finden Sie unter Unterstützten Verbindungseigenschaften.
Hinweis
Bei URL-Elementen und -Eigenschaften wird die Groß-/Kleinschreibung nicht beachtet.
| URL-Element oder -Eigenschaft | BESCHREIBUNG |
|---|---|
<server-hostname> |
Der Wert des Hostnamens des Servers der Azure Databricks-Computeressource. |
<port> |
Der Wert des Ports der Azure Databricks-Computeressource. Der Standardwert ist 443. |
<schema> |
Der Name des Schemas. Alternativ können Sie die ConnSchema Eigenschaft festlegen. Weitere Informationen finden Sie unter Unterstützte Verbindungseigenschaften. |
httpPath |
Der Wert des HTTP-Pfads der Azure Databricks-Computeressource. Der Connector bildet die HTTP-Adresse, mit der eine Verbindung hergestellt werden soll, indem der Wert httpPath an den Host und den in der Verbindungs-URL angegebenen Port angefügt wird. Um beispielsweise eine Verbindung mit der HTTP-Adresse http://localhost:10002/cliserviceherzustellen, verwenden Sie die folgende Verbindungs-URL: jdbc:databricks://localhost:10002;httpPath=cliservice |
So rufen Sie die JDBC-Verbindungs-URL für einen Azure Databricks-Cluster ab:
- Melden Sie sich bei Ihrem Azure Databricks-Arbeitsbereich an.
- Klicken Sie in der Randleiste auf "Berechnen", und klicken Sie dann auf den Namen des Zielclusters.
- Erweitern Sie auf der Registerkarte Konfiguration die Option Erweiterte Optionen.
- Klicken Sie auf die Registerkarte JDBC/ODBC.
- Kopieren Sie die JDBC-URL, um sie als JDBC-Verbindungs-URL zu verwenden, oder erstellen Sie die URL aus Werten im Server-Hostname, Portund HTTP-Pfad Felder.
So rufen Sie die JDBC-Verbindungs-URL für ein Databricks SQL Warehouseab:
- Melden Sie sich bei Ihrem Azure Databricks-Arbeitsbereich an.
- Klicken Sie in der Randleiste auf SQL Warehouses, und klicken Sie dann auf den Namen des Ziellagers.
- Klicken Sie auf die Registerkarte Verbindungsdetails.
- Kopieren Sie die JDBC-URL, um sie als JDBC-Verbindungs-URL zu verwenden, oder erstellen Sie die URL aus Werten im Server-Hostname, Portund HTTP-Pfad Felder.
Konfigurieren von Abfragetags
Von Bedeutung
Dieses Feature befindet sich in Privater Vorschau. Wenden Sie sich an Ihr Kontoteam, um den Zugriff anzufordern.
Fügen Sie Schlüsselwert-Tags an SQL-Abfragen an, um sie für Nachverfolgungs- und Analysezwecke zu nutzen. Tags werden in der system.query.history Tabelle für die Abfrageidentifikation und -analyse angezeigt.
Wenn Sie Ihrer Verbindung Abfragetags hinzufügen möchten, fügen Sie die query_tags Eigenschaft in die JDBC-URL ein.
jdbc:databricks://<server-hostname>:<port>/<schema>;query_tags=key1:value1,key2:value2
Abfragetags verwenden ein durch Trennzeichen getrenntes Schlüssel:Wert-Paarformat:
-
query_tags=key:value(einzelnes Tag) -
query_tags=key1:value1,key2:value2,key3:value3(mehrere Tags)
Konfigurieren von Proxyverbindungen
Konfigurieren Sie den Connector so, dass er über einen Proxyserver verbunden wird, anstatt eine direkte Verbindung mit Databricks herzustellen. Der Connector unterstützt die grundlegende und SPNEGO-Authentifizierung beim Herstellen einer Verbindung über einen Proxyserver. Weitere Informationen finden Sie unter Unterstützte Verbindungseigenschaften.
Um Proxyeinstellungen auf Systemebene zu verwenden, legen Sie fest UseProxy=1 und UseSystemProxy=1.
So konfigurieren Sie Proxyeinstellungen manuell:
- Legen Sie
UseProxy=1fest. - Set
ProxyHost,ProxyPortundProxyIgnoreList. - Um sich mit dem Proxyserver zu authentifizieren, wählen Sie eine Methode aus:
-
Basic: Set
ProxyAuth=1,ProxyUID, undProxyPWD. -
SPNEGO (Kerberos-Umgebungen): Authentifizieren Sie Ihren Kerberos-Prinzipal auf Systemebene, und legen Sie dann fest
ProxyAuth=2.
-
Basic: Set
Konfigurieren eines Proxys für Cloud Fetch
Cloud Fetch erfordert eine separate Proxykonfiguration von der Haupttreiberverbindung. Verwenden Sie die Verbindungs-Eigenschaften UseCFProxy, CFProxyHost, CFProxyPort, CFProxyAuth, CFProxyUID und CFProxyPwd, um den Cloud-Fetch-Datenverkehr über einen Proxy weiterzuleiten. Weitere Informationen finden Sie unter Unterstützte Verbindungseigenschaften.
Wenn Ihr Netzwerk privat ist, erlauben Sie
Problembehandlung
Wenn Sie Proxyprobleme nicht beheben können, setzen Sie EnableQueryResultDownload=0 um "Cloud Fetch" zu deaktivieren und kehren Sie zum direkten Download zurück.
Um Leistungsprobleme zu diagnostizieren, legen Sie diese Einstellung LogLevel=4 fest, um die Protokollierung auf INFO-Ebene zu aktivieren. Der Treiber protokolliert die Downloadgeschwindigkeit pro Datenabschnitt, sodass große Ergebnismengen mehrere Protokollzeilen generieren:
CloudFetch download speed: 21.24 MB/s
CloudFetch download speed: 20.60 MB/s
Der Treiber protokolliert eine Warnung, wenn die Downloadgeschwindigkeit unter ca. 1 MB/s fällt. Die Protokollkomponente lautet com.databricks.client.spark.jdbc.ResultFileDownloadHandler. Wenn Downloads langsam oder verzögert sind, erhöhen Sie CloudFetchThreadPoolSize, um mehr Dateiblöcke parallel herunterzuladen.
Konfigurieren von SSL
Wenn Sie eine Verbindung mit einem Databricks-Arbeitsbereich mit AKTIVIERTem SSL herstellen, konfigurieren Sie den Connector, um eine Verbindung mit einem SSL-fähigen Socket herzustellen. Der Connector verwendet eine unidirektionale Authentifizierung, um die Identität des Servers zu überprüfen.
Für die unidirektionale Authentifizierung ist ein signiertes, vertrauenswürdiges SSL-Zertifikat erforderlich. Konfigurieren Sie den Connector für den Zugriff auf einen bestimmten TrustStore. Wenn Sie keinen TrustStore angeben, verwendet der Connector den Standard-Java TrustStore (jssecacerts) oder cacerts, wenn jssecacerts nicht verfügbar ist.
So konfigurieren Sie SSL:
- Legen Sie
SSL=1fest. - Wenn Sie keinen Standard-Java TrustStore verwenden, konfigurieren Sie einen benutzerdefinierten:
- Erstellen Sie einen TrustStore mit Ihrem signierten, vertrauenswürdigen Serverzertifikat.
- Legen Sie
SSLTrustStoreauf den vollständigen Pfad der Truststore fest. - Setzen Sie
SSLTrustStorePwdals TrustStore-Kennwort. - Wenn der TrustStore kein JKS TrustStore ist, setzen Sie
SSLTrustStoreTypeentweder aufBCFKS(BouncyCastle FIPS Keystore) oder aufPKCS12.
Um die Zertifikatsperrstrategie zu ändern, legen Sie die folgenden Eigenschaften fest:
-
CheckCertRevocation: Auf0einstellen, um widerrufene Zertifikate zu akzeptieren. Der Standardwert lautet1. -
AcceptUndeterminedRevocation: Stellen Sie1so ein, dass Zertifikate mit unbestimmtem Widerrufsstatus akzeptiert werden (z. B. wenn CRLDP nicht erreichbar ist oder Zeitüberschreitungen auftreten). Der Standardwert lautet0.
Fahrer authentifizieren
Informationen zum Konfigurieren der Authentifizierung für den JDBC-Treiber finden Sie unter Authentifizierungseinstellungen für den Databricks JDBC Driver.