Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
In dit artikel leest u hoe u een verbinding met Databricks configureert met behulp van het Databricks JDBC-stuurprogramma, versie 3 en hoger.
De verbinding configureren
Als u verbinding wilt maken met uw Azure Databricks-werkruimte met behulp van het JDBC-stuurprogramma, moet u verschillende verbindingsinstellingen opgeven, zoals de hostnaam van de server van uw Azure Databricks-werkruimte, de instellingen voor de rekenresource en verificatiereferenties om verbinding te maken met de werkruimte.
Opmerking
Het JDBC-stuurprogramma biedt geen ondersteuning voor verbinding maken met jobs compute.
U kunt de waarde van deze eigenschappen instellen op de JDBC-verbindings-URL, deze instellen en doorgeven aan de methode DriverManager.getConnectionof een combinatie van beide. Raadpleeg de documentatie van de provider voor hoe u het beste verbinding kunt maken met uw specifieke app, client, SDK, API of SQL-hulpprogramma.
De URL van de JDBC-verbinding moet de volgende indeling hebben. Eigenschappen zijn niet hoofdlettergevoelig.
jdbc:databricks://<server-hostname>:<port>/<schema>;[property1]=[value];[property2]=[value];...
U kunt ook de instellingen opgeven met behulp van de java.util.Properties-klasse of een combinatie:
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");
Verbindings-URL-elementen worden beschreven in de volgende tabel.
Zie Ondersteunde verbindingseigenschappenvoor meer informatie over aanvullende eigenschappen, waaronder verificatie-eigenschappen, SQL-configuratie-eigenschappen en logboekregistratie-eigenschappen.
Opmerking
URL-elementen en -eigenschappen zijn niet hoofdlettergevoelig.
| URL-element of -eigenschap | Beschrijving |
|---|---|
<server-hostname> |
De hostnaamwaarde van de Azure Databricks-rekenresource. |
<port> |
De poortwaarde van de Azure Databricks-rekenresource. De standaardwaarde is 443. |
<schema> |
De naam van het schema. U kunt ook de eigenschap ConnSchema instellen. Zie Ondersteunde verbindingseigenschappen. |
httpPath |
De HTTP-padwaarde van de Azure Databricks-rekenresource. De connector vormt het HTTP-adres waarmee verbinding moet worden gemaakt door de httpPath waarde toe te voegen aan de host en poort die is opgegeven in de verbindings-URL. Als u bijvoorbeeld verbinding wilt maken met het HTTP-adres http://localhost:10002/cliservice, gebruikt u de volgende verbindings-URL: jdbc:databricks://localhost:10002;httpPath=cliservice |
Ophalen van de JDBC-verbindings-URL voor een Azure Databricks--cluster:
- Meld u aan bij uw Azure Databricks-werkruimte.
- Klik in de zijbalk op Compute en klik vervolgens op de naam van het doelcluster.
- Vouw op het tabblad Configuratie geavanceerde opties uit.
- Klik op het tabblad JDBC/ODBC .
- Kopieer de JDBC-URL om te gebruiken als de JDBC-verbindings-URL of maak de URL op basis van waarden in de hostnaam van de server, poorten http-pad velden.
Om de JDBC-verbindings-URL voor een Databricks SQL warehousete verkrijgen:
- Meld u aan bij uw Azure Databricks-werkruimte.
- Klik in de zijbalk op SQL Warehouses en klik vervolgens op de naam van het doelwarehouse.
- Klik op het tabblad Verbindingsgegevens.
- Kopieer de JDBC-URL om te gebruiken als de JDBC-verbindings-URL of maak de URL op basis van waarden in de hostnaam van de server, poorten http-pad velden.
Querytags configureren
Belangrijk
Deze functie bevindt zich in Private Preview. Neem contact op met uw accountteam om toegang aan te vragen.
U kunt sleutel-waardetags koppelen aan uw SQL-query's voor tracerings- en analysedoeleinden. Querytags worden weergegeven in de system.query.history tabel voor queryidentificatie en -analyse.
Als u querytags aan uw verbinding wilt toevoegen, neemt u de query_tags eigenschap op in uw JDBC-URL:
jdbc:databricks://<server-hostname>:<port>/<schema>;query_tags=key1:value1,key2:value2
Querytags maken gebruik van een door komma's gescheiden sleutel:waardepaarindeling:
-
query_tags=key:value(enkele tag) -
query_tags=key1:value1,key2:value2,key3:value3(meerdere tags)
Proxyverbindingen configureren
U kunt de connector configureren om verbinding te maken via een proxyserver in plaats van rechtstreeks verbinding te maken met Databricks. Wanneer u verbinding maakt via een proxyserver, ondersteunt de connector basis- en SPNEGO-verificatie.
Een proxyverbinding configureren:
- Stel de eigenschap
UseProxyin op 1. - Als u proxy-instellingen op systeemniveau wilt configureren, stelt u
UseSystemProxyeigenschap in op 1, anders stelt u deze in voor het stuurprogramma op de volgende manier:- Stel de eigenschap
ProxyHostin op het IP-adres of de hostnaam van uw proxyserver. - Stel de eigenschap
ProxyPortin op de poort die de proxyserver gebruikt om te luisteren naar clientverbindingen. - Stel de eigenschap
ProxyIgnoreListin op een door komma's gescheiden hostnaam. - Verifiëren met de proxyserver:
- De basisverificatie gebruiken
- Stel de eigenschap
ProxyAuthin op 1. - Stel de eigenschap
ProxyUIDin op uw gebruikersnaam voor toegang tot de server. - Stel de eigenschap
ProxyPWDin op uw wachtwoord voor toegang tot de server.
- Stel de eigenschap
- SPNEGO-verificatie gebruiken:
- Authenticeer uw Kerberos-principal op systeemniveau.
- Stel de eigenschap
ProxyAuthin op 2.
- De basisverificatie gebruiken
- Stel de eigenschap
Als u een andere proxy specifiek voor CloudFetch wilt gebruiken, volgt u de bovenstaande stappen met de volgende eigenschappen: UseCFProxy, CFProxyHost, CFProxyPort, CFProxyAuth, CFProxyUID, CFProxyPwd
SSL configureren
Als u verbinding maakt met Databricks waarvoor SSL (Secure Sockets Layer) is ingeschakeld, kunt u de connector configureren om verbinding te maken met een socket met SSL. Bij het maken van verbinding met een server via SSL gebruikt de connector verificatie in één richting om de identiteit van de server te verifiëren.
Verificatie in één richting vereist een ondertekend, vertrouwd SSL-certificaat voor het verifiëren van de identiteit van de server. U kunt de connector configureren voor toegang tot een specifieke TrustStore die het juiste certificaat bevat. Als u geen TrustStore opgeeft, gebruikt de connector de standaard Java TrustStore met de naam jssecacerts. Als jssecacerts niet beschikbaar is, gebruikt de connector in plaats daarvan cacerts.
SSL configureren:
- Stel de SSL-eigenschap in op 1.
- Als u geen van de standaard Java-vertrouwensarchieven gebruikt, maakt u een vertrouwensarchief en configureert u de connector deze te gebruiken.
- Maak een vertrouwensopslag met uw ondertekende, vertrouwde serversertificaat.
- Stel de eigenschap SSLTrustStore in op het volledige pad van de TrustStore.
- Stel de eigenschap SSLTrustStorePwd in op het wachtwoord voor toegang tot de TrustStore.
- Als de TrustStore geen JKS TrustStore is, stelt u de eigenschap SSLTrustStoreType in op het juiste type. De ondersteunde typen zijn:
- SSLTrustStoreType=BCFKS (BouncyCastle FIPS Keystore)
- SSLTrustStoreType=PKCS12 (Public Key Cryptography Standards #12)
In bepaalde gevallen, waarbij u de certificaatintrekkingsstrategie wilt wijzigen, biedt de connector de volgende parameters:
- De eigenschap CheckCertRevocation wanneer deze is ingesteld op 0 accepteert certificaten die zijn ingetrokken (de standaardwaarde van de eigenschap is 1)
- De eigenschap AcceptUndeterminedRevocation wanneer deze is ingesteld op 1, accepteert certificaten waarbij de intrekkingsstatus van de certificaten niet kan worden geïdentificeerd (CRLDP is onbereikbaar/time-out, enzovoort), de standaardwaarde van deze eigenschap is 0
Authenticeer de bestuurder
U kunt de verbinding met het JDBC-stuurprogramma verifiëren met behulp van een van de volgende verificatiemechanismen:
- OAuth-gebruikers-naar-machine-verificatie (U2M) (aanbevolen)
- M2M met behulp van door Azure beheerde identiteiten
- Persoonlijk toegangstoken van Azure Databricks
OAuth-verificatie van gebruikers-naar-machine (U2M)
Het JDBC-stuurprogramma ondersteunt OAuth-gebruikers-naar-machine-verificatie (U2M) voor realtime menselijke aanmelding en toestemming om het databricks-doelgebruikersaccount te verifiëren. Dit wordt ook wel browsergebaseerde OAuth-verificatie genoemd.
Azure Databricks heeft de OAuth-client-id gemaakt databricks-sql-jdbc voor klanten. Dit is ook de standaard-OAuth-client-id die wordt gebruikt in het JDBC-stuurprogramma. Als u OAuth U2M-verificatie wilt configureren, voegt u de volgende eigenschappen toe aan uw bestaande JDBC-verbindings-URL of java.util.Properties-object:
| Vastgoed | Waarde |
|---|---|
AuthMech |
11 |
Auth_Flow |
2 |
TokenCachePassPhrase |
De wachtwoordzin die wordt gebruikt voor het versleutelen van uw OAuth U2M-referenties in de cache. Dit voorkomt herhaalde verificaties op basis van een browser. Stel EnableTokenCache in op 0 om het opslaan van tokens in cache uit te schakelen. |
machine-naar-machine (M2M) OAuth-verificatie
Het JDBC-stuurprogramma ondersteunt verificatie van OAuth-machine-naar-machine (M2M), ook wel OAuth 2.0-clientreferentieverificatie genoemd, met behulp van een van de volgende principals of identiteiten. Zie Toegang tot de service-principal autoriseren voor Azure Databricks met OAuth.
- Een Databricks-service-principal
- Een door Azure beheerde service-principal
- Een door het Azure beheerde identiteit (door het systeem toegewezen of door de gebruiker toegewezen)
M2M met een door Databricks beheerde service-principal
Verificatie configureren met behulp van een door Databricks beheerde service-principal:
- Maak een door Databricks beheerde service-principal en wijs deze toe aan Databricks-accounts en -werkruimten.
- Maak een Databricks OAuth-geheim voor de service-principal. Zie de installatiehandleiding voor OAuth M2M.
- Toegangsmachtigingen verlenen aan clusters en SQL-warehouses.
- Voeg de volgende eigenschappen toe aan uw bestaande JDBC-verbindings-URL of
java.util.Properties-object:
| Vastgoed | Waarde |
|---|---|
AuthMech |
11 |
Auth_Flow |
1 |
OAuth2ClientID |
De waarde van de toepassings-id (client) van de service-principal. |
OAuth2Secret |
Het Azure Databricks OAuth-geheim van de service-principal. |
M2M met een door Azure beheerde service-principal
Verificatie configureren met behulp van een door Azure beheerde service-principal:
- Maak een Databricks OAuth-geheim voor de service-principal. Zie de installatiehandleiding voor OAuth M2M.
- Toegangsmachtigingen verlenen aan clusters en SQL-warehouses.
- Voeg de volgende eigenschappen toe aan uw bestaande JDBC-verbindings-URL of
java.util.Properties-object:
| Vastgoed | Waarde |
|---|---|
AuthMech |
11 |
Auth_Flow |
1 |
OAuth2ClientID |
De waarde van de toepassings-id (client) van de service-principal. |
AzureTenantID |
De Azure-tenant-id die is gevonden in Azure Active Directory. |
OAuth2Secret |
Het Azure Databricks OAuth-geheim van de service-principal. |
M2M met behulp van door Azure beheerde identiteiten
Verificatie configureren met behulp van door Azure beheerde identiteiten:
- Beheerde identiteiten configureren voor uw Azure-resources.
- Toegangsmachtigingen verlenen aan clusters en SQL-warehouses.
- Voeg de volgende eigenschappen toe aan uw bestaande JDBC-verbindings-URL of
java.util.Properties-object:
| Vastgoed | Waarde |
|---|---|
AuthMech |
11 |
Auth_Flow |
3 |
OAuth2ClientID |
De client-id van de beheerde identiteit. Dit is alleen een vereiste parameter als u een door de gebruiker toegewezen beheerde identiteit gebruikt. |
Azure_workspace_resource_id |
De Azure-resource-id van uw Databricks-werkruimte |
Persoonlijk toegangstoken van Azure Databricks
Als u uw JDBC-stuurprogrammaverbinding wilt verifiëren met behulp van een Azure Databricks-persoonlijk toegangstoken, voegt u de volgende eigenschappen toe aan uw JDBC-verbindings-URL of java.util.Properties-object:
| Vastgoed | Waarde |
|---|---|
AuthMech |
3 |
user |
De waarde token, als een tekenreeks. |
PWD of password |
Uw persoonlijke toegangstokenwaarde van Azure Databricks als een tekenreeks. |