Källconnector för Databricks¶
Denna guide beskriver hur du konfigurerar digna för att ansluta till Databricks via ODBC med en DSN-lös anslutningssträng.
digna-delen av konfigurationen är densamma för alla tekniker — var anslutningar skapas, hur egenskapsvärden krypteras, hur en anslutning testas och vad profileringslägena innebär. Den beskrivs i Översikt över databasanslutningar. Denna sida täcker det som är specifikt för Databricks.
Unity Catalog krävs
digna läser de tillgängliga katalogerna från system.information_schema.catalogs, så arbetsytan måste ha Unity Catalog aktiverat. Tidigare digna-releaser erbjöd en separat teknik, "Databricks Legacy", för arbetsytor utan Unity Catalog; den är inte längre tillgänglig.
1. Installera ODBC-drivrutinen¶
Installera Databricks ODBC Driver på maskinen som kör digna-backenden enligt Databricks installationsguide.
Beroende på version registrerar drivrutinen sig som Simba Spark ODBC Driver eller som Databricks ODBC Driver. Läs av det exakta registrerade namnet på din värd enligt beskrivningen i Installera ODBC-drivrutinen på digna-värden.
2. Samla in anslutningsuppgifterna¶
Alla värden kommer från det SQL-warehouse (eller kluster) som du vill att digna ska använda. Öppna det i Databricks-arbetsytan och gå till Connection details:
| Fält i Databricks | Används som |
|---|---|
| Server hostname | Host |
| Port | Port, normalt 443 |
| HTTP path | HTTPPath |
För autentisering, skapa en personlig åtkomsttoken (personal access token) — se Databricks personal access token authentication. Token tillhör en användare eller ett service principal, och det kontot behöver USE CATALOG, USE SCHEMA och SELECT på källdata.
3. ODBC-egenskaper¶
Ett exempel, inte en specifikation
Uppsättningen nedan är en kombination som är känd för att fungera. Egenskaperna tillhör Databricks/Simba-drivrutinen, så deras namn, standardvärden och tillåtna värden skiljer sig mellan drivrutinsversioner — drivrutinen har bytt namn och fått utökade autentiseringsalternativ mer än en gång — och mellan plattformar. Använd detta som utgångspunkt och läs dokumentationen för den drivrutinsversion du har installerat.
Lägg till följande egenskaper på skärmen Add DB Connection:
| Nyckel | Exempelvärde | Noteringar |
|---|---|---|
Driver | Simba Spark ODBC Driver | Måste matcha drivrutinsnamnet som är registrerat på digna-värden |
Host | <workspace>.cloud.databricks.com | Warehousets server hostname, t.ex. adb-1234567890123456.12.azuredatabricks.net |
Port | 443 | |
HTTPPath | /sql/1.0/warehouses/<warehouse-id> | HTTP-sökvägen för warehouset eller klustret |
SSL | 1 | Databricks-endpoints stöder endast TLS |
ThriftTransport | 2 | HTTP-transport, vilket är vad SQL-endpoints använder |
AuthMech | 3 | Tokenautentisering |
UID | token | Det bokstavliga ordet token, inte ett användarnamn |
PWD | dapi… | Den personliga åtkomsttoken. Kryssa i Encrypted |
UseNativeQuery | 1 | Skickar dignas SQL oförändrad — se nedan |
Den resulterande anslutningssträngen ser ut så här:
Driver=Simba Spark ODBC Driver;Host=<workspace>.cloud.databricks.com;Port=443;HTTPPath=/sql/1.0/warehouses/<warehouse-id>;SSL=1;ThriftTransport=2;AuthMech=3;UID=token;PWD=dapi…;UseNativeQuery=1
Behåll UseNativeQuery=1
Med UseNativeQuery=0 — drivrutinens standardvärde — skriver drivrutinen om inkommande SQL till det den anser vara portabel ODBC-syntax. digna genererar redan Databricks SQL, så omskrivningen kan ändra citering med backticks och datumliteraler, och profileringen misslyckas då på satser som är giltiga som de är skrivna.
OAuth i stället för en token¶
För ett service principal med OAuth-autentisering maskin-till-maskin, ersätt AuthMech, UID och PWD med:
| Nyckel | Exempelvärde | Noteringar |
|---|---|---|
AuthMech | 11 | OAuth |
Auth_Flow | 1 | Client credentials |
Auth_Client_ID | <application id> | Service principal |
Auth_Client_Secret | <client secret> | Kryssa i Encrypted |
4. digna-konfiguration¶
På skärmen Add DB Connection, ange följande:
Name: Name of the connection. This is used for referencing the connection in other screens.
Technology: Databricks
Profiling Mode: Standard, Permanent or Session
Work Schema: Schema for the work tables of "Permanent" profiling, e.g. "digna_work"
5. Att tänka på med Databricks¶
- Warehouset måste vara igång, eller kunna starta, när digna ansluter. Ett warehouse som startar från stoppat läge kan ta längre tid än anslutningstimeouten — om testet misslyckas vid första försöket efter en period av inaktivitet, försök igen.
- Katalogerna kommer från arbetsytan. Till skillnad från de flesta tekniker når en Databricks-anslutning alla kataloger som kontot har behörighet att se, så en enda anslutning kan betjäna källor i flera kataloger.
- Profileringslägen. Permanent skapar arbetstabellerna i Work Schema i källans katalog, så kontot behöver
CREATE TABLEdär. Session använderCREATE TEMPORARY TABLEoch rör inte Work Schema. Standard kräver endast läsbehörighet. - Serverlösa warehouses fungerar på samma sätt; endast
HTTPPathskiljer sig.
6. Verifiera drivrutinen (valfritt)¶
Att konfigurera en ODBC-datakälla krävs inte för en DSN-lös anslutning, men drivrutinens egen dialogruta är ett bekvämt sätt att bekräfta att drivrutinen, warehouset och token fungerar innan du anger dem i digna.
Steg 1¶

Steg 2¶

Steg 3¶

Steg 4¶

Steg 5 – Testa anslutningen¶
Klicka på knappen TEST. En lyckad anslutning ska se ut så här:

Värden, HTTP-sökvägen och token som anges här är exakt de värden som egenskaperna i avsnitt 3 tar.