Databricks OSS ODBC-drivrutin

Important

Databricks OSS ODBC-drivrutinen, version 0.5.0, är i betaversion. För information om den allmänt tillgängliga version 2.x-drivrutinen, se Databricks ODBC-drivrutinsdokumentation.

Om du vill rapportera ett problem eller önska en ny funktion medan drivrutinen är i betaversion kontaktar du Databricks kontoteam.

Databricks OSS ODBC-drivrutinen är en ODBC 3.8-drivrutin för Databricks SQL- och Lakehouse//RT warehouses. Den är designad för att vara en kompatibel ersättning för Databricks ODBC Driver version 2.x för stödda arbetsbelastningar. Befintliga applikationer, DSN och anslutningssträngar som använder gemensam 2.x-funktionalitet bör generellt fungera utan ändringar.

Krav

Databricks OSS ODBC-drivrutin och Databricks ODBC-drivrutin version 2.x använder samma registrerade ODBC-drivrutinsnamn, paketidentifierare, installationsvägar och biblioteksnamn. Att installera en version framför den andra ersätter den befintliga installationen. För att byta drivrutin, installera om paketet för den version du vill använda.

Databricks OSS ODBC-drivrutin stöds på följande plattformar:

Operativsystem Paket och arkitektur Krav
Windows MSI för x64 och x86 Drivrutinsarkitekturen måste matcha applikationsarkitekturen.
macOS Universal .pkg för Intel och Apple silicon macOS 13.3 eller senare.
Linux .deb och .rpm för x86_64, aarch64 och i686 glibc 2.28 eller senare och en kompatibel ODBC-drivrutinshanterare.

Du behöver också servervärdnamn och HTTP-sökväg för ett Databricks SQL- eller Lakehouse//RT-datavaruhus. Se Hämta anslutningsinformation för en Azure Databricks-beräkningsresurs.

Installera Databricks OSS ODBC-drivrutin

  1. På Databricks OSS ODBC Driver-arkivet, ladda ner Databricks OSS ODBC Driver version 0.5.0 för ditt operativsystem och din arkitektur.
  2. Installera det nedladdade paketet:
    • I Windows extraherar du den nedladdade filen och kör 32- eller 64-bitars MSI-filen. Installationsprogrammet registrerar Databricks ODBC-drivrutin med Windows ODBC Driver Manager.

    • På macOS, kör DatabricksODBC-<version>-macOS.pkg.

    • I Linux installerar du paketet .deb eller .rpm och registrerar drivrutinen i unixODBC:

      sudo odbcinst -i -d -f /opt/databricks/databricksodbc/Setup/odbcinst.ini
      

Drivrutinsbiblioteken installeras på samma platser som i version 2.x:

  • 64-bitarsversion av Windows: C:\Program Files\Databricks ODBC Driver\lib\databricksodbc64.dll
  • Windows 32-bitars:C:\Program Files (x86)\Databricks ODBC Driver\lib\databricksodbc32.dll
  • macOS: /Library/databricks/databricksodbc/lib/libdatabricksodbc.dylib
  • Linux 64-bit: /opt/databricks/databricksodbc/lib/64/libdatabricksodbc64.so
  • Linux 32-bitars: /opt/databricks/databricksodbc/lib/32/libdatabricksodbc32.so

Konfigurera en anslutning

Börja med din befintliga 2.x DSN eller anslutningssträng. Vanliga egenskaper som Driver, Host, Port, , HTTPPath, SSL, Catalog, och Schema är kompatibla. Drivrutinen accepterar också vanliga 2.x-egenskaper som inte behövs för HTTP-transporten, så att befintliga DSN:er kan återanvändas.

För att skapa en DSN eller en DSN-lös anslutningssträng med dessa inställningar, se Skapa en ODBC-DSN för Databricks ODBC-drivrutin eller Skapa en DSN-lös ODBC-anslutningssträng för Databricks ODBC-drivrutin.

Vid en ny anslutning använder du egenskaperna i följande exempel. För ett DSN, ange samma nyckel-värdepar med din ODBC-drivrutinshanterare.

Följande exempel använder OAuth-autentisering för användar-till-dator (U2M). Radbrytningar är inkluderade för läsbarhet. Inkludera dem inte i anslutningssträngen:

Driver=<path-to-driver>;
Host=<server-hostname>;
Port=443;
HTTPPath=<http-path>;
SSL=1;
AuthMech=11;
Auth_Flow=2;
Catalog=main;
Schema=default

Följande autentiseringsmetoder stöds:

Autentiseringsmetod Properties
OAuth från användare till dator (U2M) AuthMech=11;Auth_Flow=2. PWD är inte ett krav. Persistent token-cachelagring är aktiverad som standard. Ange EnableTokenCache=0 för att inaktivera det, eller ange TokenCachePassPhrase för att använda en lösenfras vid kryptering av cachen.
OAuth maskin-till-maskin (M2M) AuthMech=11;Auth_Flow=1;Auth_Client_ID=<client-id>;Auth_Client_Secret=<client-secret>.
OAuth-tokenvidarebefordran AuthMech=11;Auth_Flow=0;Auth_AccessToken=<oauth-token>.
Personlig åtkomsttoken för Azure Databricks AuthMech=3;UID=token;PWD=<personal-access-token>.

Migrera från version 2.x

  1. Gå igenom de kända begränsningarna för funktioner som används av din applikation.
  2. Anteckna den installerade 2.x-versionen och säkerhetskopiera dina DSN, anslutningssträngar och drivrutinskonfigurationsfiler.
  3. Installera Databricks OSS ODBC-drivrutin.
  4. Återanvänd ditt befintliga DSN eller din anslutningssträng.
  5. Testa skapande av anslutningar, identifiering av metadata, förberedda instruktioner, parameterbindning, avbrytning, hämtning av stora resultatmängder och representativa arbetsflöden i applikationer.

Databricks OSS ODBC-drivrutin kan rapportera mer specifika Databricks-typnamn och deklarerade decimala precision och skala än 2.x. Verifiera applikationer som jämför metadatavärden exakt.

För att återställa efter att ha bytt ut en installation, installera om det nödvändiga 2.x-paketet och återställ den säkerhetskopierade konfigurationen.

Kända begränsningar

Följande begränsningar gäller medan drivrutinen är i beta:

  • Drivrutinen har stöd för Databricks SQL- och Lakehouse//RT-warehouse. Den stöder inte beräkningar för allmänt bruk.
  • SQL skickas alltid direkt till Azure Databricks. Drivrutinen utför inte den översättning enligt SQL-92 som är tillgänglig i 2.x. UseNativeQuery accepteras för kompatibilitet men ändrar inte beteendet.
  • Asynkron exekvering genom SQL_ATTR_ASYNC_ENABLE och SQLCompleteAsync stöds inte.
  • PUT, GET och REMOVE filåtgärder i Unity Catalog-volymer stöds inte.
  • Binära indataparametrar stöds inte.
  • Arrayer med parametrar, inklusive pyodbc fast_executemany för sträng- och Unicode-värden, stöds, men drivrutinen skickar en begäran om körning per rad.
  • Stora resultatuppsättningar hämtas automatiskt med Cloud Fetch och kan inte tvingas att visas inline. Hämtning av resultat stöder Databricks SQL-datatyper, förutom FILE och OBJECT. Komplexa värden returneras som text.
  • HTTPS-proxyservrar stöder grundläggande autentisering, men inte Kerberos- eller SPNEGO-autentisering.
  • Konfiguration av certifikatåterkallelse och krypterade ömsesidiga TLS-privata nycklar stöds inte.
  • Vissa avancerade 2.x-egenskaper stöds inte. Drivrutinen loggar en varning när en egenskap inte tillämpas.