Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Important
Ta funkcja jest dostępna w wersji zapoznawczej.
ODBC (Open Database Connectivity) to powszechnie przyjęty standard, który umożliwia aplikacjom klienckim łączenie się z bazami danych i platformami danych big data oraz pracę z nimi.
Sterownik Microsoft ODBC dla Fabric Data Engineering pozwala podłączać, zapytywać i zarządzać obciążeniami Spark w Fabric z niezawodnością i prostotą standardu ODBC. Oparty na API Livy firmy Fabric, sterownik zapewnia bezpieczną i elastyczną łączność Spark SQL z C/C++, .NET, Python oraz innymi aplikacjami kompatybilnymi z ODBC na Linuksie.
Kluczowe funkcje
- Zgodność z ODBC 3.x: Pełna implementacja specyfikacji ODBC 3.x.
- Uwierzytelnianie Microsoft Entra ID: Wiele przepływów uwierzytelniania, w tym Azure CLI, dane klienta, uwierzytelnianie oparte na certyfikatach oraz uwierzytelnianie za pomocą tokenów dostępu.
- Wsparcie zapytań SQL w Spark: Bezpośrednie wykonywanie instrukcji SQL Spark.
-
Kompleksowe wsparcie typów danych: Obsługa wszystkich typów danych SQL Spark, w tym typów złożonych (
ARRAY,MAP, iSTRUCT). - Ponowne wykorzystanie sesji: Wbudowane zarządzanie sesjami dla lepszej wydajności.
- Obsługa dużych tabel: Optymalizacja obsługi dużych zestawów wyników z konfigurowalnymi rozmiarami stron.
- Async prefetch: Ładowanie danych w tle dla lepszej wydajności.
- Wsparcie proxy: konfiguracja proxy HTTP dla środowisk korporacyjnych.
- Wsparcie dla wieloschematowych domów nad jeziorem: Połącz się z konkretnym schematem w domku nad jeziorem.
Note
W przypadku platformy Apache Spark typu open source baza danych i schemat są używane synonimowo. Na przykład uruchomienie SHOW SCHEMAS lub SHOW DATABASES w notatniku Fabric daje ten sam wynik: listę wszystkich schematów w domku nad jeziorem.
Wymagania wstępne
Zanim użyjesz sterownika Microsoft ODBC dla Microsoft Fabric Data Engineering na Linuksie, upewnij się, że masz następujące wymagania wstępne:
- System operacyjny: Ubuntu 22.04 lub nowszy, Debian 11 lub nowszy, albo Red Hat Enterprise Linux (RHEL) 8 lub nowszy na x86-64.
-
unixODBC: Menedżer sterowników ODBC dla Linuksa. Zainstaluj pakiety
unixodbciunixodbc-devpakiety. - Fabric access: Dostęp do przestrzeni roboczej Fabric.
- Dane uwierzytelniające Microsoft Entra ID: Odpowiednie dane uwierzytelniające do uwierzytelniania.
- Identyfikatory przestrzeni roboczej i domów nad jeziorem: identyfikatory GUID dla twojej przestrzeni roboczej Fabric i domku nad jeziorem.
- Azure CLI (opcjonalnie): Wymagane przy użyciu uwierzytelniania Azure CLI.
Pobierz i zainstaluj na Linuksie
Microsoft ODBC Driver for Microsoft Fabric Data Engineering w wersji 1.0.0 jest dostępny w wersji publicznej.
Aby zainstalować sterownik:
Wyodrębnij
ms-sparksql-odbc-linux-1.0.0.zip.Otwórz terminal w rozpakowanym katalogu.
Zainstaluj pakiet Debian:
sudo dpkg -i microsoft-fabric-odbc-driver-1.0.0-Linux.deb
Pakiet instaluje następujące pliki:
| File | Lokalizacja zainstalowana |
|---|---|
| Biblioteka sterowników | /usr/lib/libmicrosoftfabricodbc.so |
| Szablon rejestracji kierowcy | /usr/share/microsoft-fabric-odbc-driver/odbcinst.ini.template |
| Szablon konfiguracji DSN | /usr/share/microsoft-fabric-odbc-driver/odbc.ini.template |
| License | /usr/share/doc/microsoft-fabric-odbc-driver/LICENSE |
| Przewodnik użytkowania | /usr/share/doc/microsoft-fabric-odbc-driver/USAGE_Linux.md |
Rejestruj sterownik ręcznie
Pakiet automatycznie rejestruje sterownik w unixODBC. Aby zarejestrować sterownika ręcznie, wykonaj:
sudo odbcinst -i -d -f /usr/share/microsoft-fabric-odbc-driver/odbcinst.ini.template
Weryfikowanie instalacji
Sprawdź, czy sterownik jest zarejestrowany i że biblioteka jest zainstalowana:
odbcinst -q -d
ls -la /usr/lib/libmicrosoftfabricodbc.so
Polecenie odbcinst powinno zawierać .[Microsoft ODBC Driver for Microsoft Fabric Data Engineering]
Odinstaluj sterownik
Aby odinstalować sterownik, wykonaj następujące polecenie:
sudo dpkg -r microsoft-fabric-odbc-driver
To polecenie usuwa pliki sterownika i rejestruje sterownik z unixODBC.
Przykład szybkiego startu
Poniższe przykłady łączą się z Fabric i uruchamiają zapytanie SQL w Spark. Wypełnij wymagania wstępne i zainstaluj sterownik, zanim uruchomisz przykład.
Przykład języka Python
import pyodbc
connection_string = (
"DRIVER={Microsoft ODBC Driver for Microsoft Fabric Data Engineering};"
"WorkspaceId=<workspace-id>;"
"LakehouseId=<lakehouse-id>;"
"AuthFlow=AZURE_CLI;"
)
conn = pyodbc.connect(connection_string, timeout=30)
cursor = conn.cursor()
cursor.execute("SELECT 'Hello from Fabric!' AS message")
row = cursor.fetchone()
print(row.message)
conn.close()
Przykład C/C++
#include <sql.h>
#include <sqlext.h>
#include <iostream>
int main() {
SQLHENV henv = SQL_NULL_HENV;
SQLHDBC hdbc = SQL_NULL_HDBC;
SQLHSTMT hstmt = SQL_NULL_HSTMT;
SQLAllocHandle(SQL_HANDLE_ENV, SQL_NULL_HANDLE, &henv);
SQLSetEnvAttr(henv, SQL_ATTR_ODBC_VERSION, (SQLPOINTER)SQL_OV_ODBC3, 0);
SQLAllocHandle(SQL_HANDLE_DBC, henv, &hdbc);
const char* connectionString =
"DRIVER={Microsoft ODBC Driver for Microsoft Fabric Data Engineering};"
"WorkspaceId=<workspace-id>;"
"LakehouseId=<lakehouse-id>;"
"AuthFlow=AZURE_CLI;";
SQLRETURN result = SQLDriverConnect(
hdbc,
NULL,
(SQLCHAR*)connectionString,
SQL_NTS,
NULL,
0,
NULL,
SQL_DRIVER_NOPROMPT);
if (SQL_SUCCEEDED(result)) {
std::cout << "Connected successfully!" << std::endl;
SQLAllocHandle(SQL_HANDLE_STMT, hdbc, &hstmt);
result = SQLExecDirect(
hstmt,
(SQLCHAR*)"SELECT 'Hello from Fabric!' AS message",
SQL_NTS);
if (SQL_SUCCEEDED(result)) {
char message[256];
SQLLEN indicator;
while (SQLFetch(hstmt) == SQL_SUCCESS) {
SQLGetData(
hstmt,
1,
SQL_C_CHAR,
message,
sizeof(message),
&indicator);
std::cout << message << std::endl;
}
}
SQLFreeHandle(SQL_HANDLE_STMT, hstmt);
SQLDisconnect(hdbc);
}
SQLFreeHandle(SQL_HANDLE_DBC, hdbc);
SQLFreeHandle(SQL_HANDLE_ENV, henv);
return 0;
}
Zbuduj i uruchom przykład:
g++ -o fabric_test fabric_test.cpp -lodbc -std=c++17
./fabric_test
Przykład platformy .NET
using System.Data.Odbc;
string connectionString =
"DRIVER={Microsoft ODBC Driver for Microsoft Fabric Data Engineering};" +
"WorkspaceId=<workspace-id>;" +
"LakehouseId=<lakehouse-id>;" +
"AuthFlow=AZURE_CLI;";
using var connection = new OdbcConnection(connectionString);
await connection.OpenAsync();
Console.WriteLine("Connected successfully!");
using var command = new OdbcCommand(
"SELECT 'Hello from Fabric!' AS message",
connection);
using var reader = await command.ExecuteReaderAsync();
if (await reader.ReadAsync())
{
Console.WriteLine(reader.GetString(0));
}
Format łańcucha połączenia
Podstawowe parametry połączenia
Użyj poniższego formatu parametry połączenia:
DRIVER={Microsoft ODBC Driver for Microsoft Fabric Data Engineering};<parameter1>=<value1>;<parameter2>=<value2>;...
Składniki parametrów połączenia
| Component | Description | Przykład |
|---|---|---|
DRIVER |
Identyfikator sterownika ODBC | {Microsoft ODBC Driver for Microsoft Fabric Data Engineering} |
WorkspaceId |
Identyfikator przestrzeni roboczej Fabric (GUID) | 4bbf89a8-66bb-443f-91af-df31e6a7560b |
LakehouseId |
Identyfikator Fabric lakehouse (GUID) | d8faa650-1343-496b-b9cc-d4168a676f90 |
AuthFlow |
Metoda uwierzytelniania |
AZURE_CLI, CLIENT_CREDENTIAL, CLIENT_CERTIFICATElub ACCESS_TOKEN |
Przykładowe parametry połączenia
Podstawowe połączenie
DRIVER={Microsoft ODBC Driver for Microsoft Fabric Data Engineering};WorkspaceId=<workspace-id>;LakehouseId=<lakehouse-id>;AuthFlow=AZURE_CLI
Powiązanie z opcjami wydajności
DRIVER={Microsoft ODBC Driver for Microsoft Fabric Data Engineering};WorkspaceId=<workspace-id>;LakehouseId=<lakehouse-id>;AuthFlow=AZURE_CLI;ReuseSession=true;LargeTableSupport=true;PageSizeBytes=18874368
Powiązanie z logowaniem
DRIVER={Microsoft ODBC Driver for Microsoft Fabric Data Engineering};WorkspaceId=<workspace-id>;LakehouseId=<lakehouse-id>;AuthFlow=AZURE_CLI;LogLevel=DEBUG;LogFile=/tmp/odbc_driver.log
Uwierzytelnianie
Sterownik Microsoft ODBC dla Microsoft Fabric Data Engineering obsługuje wiele metod uwierzytelniania poprzez Microsoft Entra ID. Konfiguruj uwierzytelnianie, używając parametru AuthFlow w parametry połączenia lub DSN.
Metody uwierzytelniania
AuthFlow Wartość |
Description |
|---|---|
AZURE_CLI |
Tworzenie przy użyciu poświadczeń Azure CLI |
CLIENT_CREDENTIAL |
Zasada usługi z klientem sekretem |
CLIENT_CERTIFICATE |
Główny pracownik z certyfikatem |
ACCESS_TOKEN |
Wstępnie uzyskany token dostępu nosiciela |
Note
Interaktywna autoryzacja przeglądarki nie jest dostępna na serwerach headless z Linuksem. Zamiast tego używaj Azure CLI, danych do uwierzytelniania klienta, uwierzytelniania opartego na certyfikatach lub tokenów dostępu.
Uwierzytelnianie CLI platformy Azure
Używaj uwierzytelniania Azure CLI do tworzenia i aplikacji interaktywnych.
connection_string = (
"DRIVER={Microsoft ODBC Driver for Microsoft Fabric Data Engineering};"
"WorkspaceId=<workspace-id>;"
"LakehouseId=<lakehouse-id>;"
"AuthFlow=AZURE_CLI;"
"Scope=https://api.fabric.microsoft.com/.default;"
)
conn = pyodbc.connect(connection_string)
Przed połączeniem sprawdź, czy Azure CLI jest zainstalowany i zaloguj się:
az --version
az login
Aby zainstalować Azure CLI na Debianie lub Ubuntu, użyj menedżera pakietów:
sudo apt-get update
sudo apt-get install -y azure-cli
Uwierzytelnianie danych klienta
Używaj uwierzytelniania klienta do automatycznych usług i zadań w tle.
connection_string = (
"DRIVER={Microsoft ODBC Driver for Microsoft Fabric Data Engineering};"
"WorkspaceId=<workspace-id>;"
"LakehouseId=<lakehouse-id>;"
"AuthFlow=CLIENT_CREDENTIAL;"
f"TenantId={tenant_id};"
f"ClientId={client_id};"
f"ClientSecret={client_secret};"
)
Podaj następujące parametry:
-
TenantId: ID tenanta Microsoft Entra. -
ClientId: identyfikator aplikacji (klienta). -
ClientSecret: Sekret klienta.
Sekrety przechowywania w bezpiecznym sejfowym magazynie lub zmienne środowiskowe. Nie przechowuj sekretów w tekstowych łańcuchach połączeń ani plikach INI.
Uwierzytelnianie oparte na certyfikatach
Używaj uwierzytelniania opartego na certyfikatach dla aplikacji korporacyjnych wymagających certyfikatów uwierzytelniających.
connection_string = (
"DRIVER={Microsoft ODBC Driver for Microsoft Fabric Data Engineering};"
"WorkspaceId=<workspace-id>;"
"LakehouseId=<lakehouse-id>;"
"AuthFlow=CLIENT_CERTIFICATE;"
"TenantId=<tenant-id>;"
"ClientId=<client-id>;"
"CertificatePath=/path/to/cert.pfx;"
"CertificatePassword=<password>;"
)
Podaj następujące parametry:
-
TenantId: ID tenanta Microsoft Entra. -
ClientId: identyfikator aplikacji (klienta). -
CertificatePath: Ścieżka do pliku certyfikatu PFX lub PKCS12. -
CertificatePassword: Hasło do certyfikatu.
Uwierzytelnianie tokenu dostępu
Używaj uwierzytelniania za pomocą tokena dostępu, gdy Twoja aplikacja pozyskuje token za pomocą innego mechanizmu.
access_token = acquire_token_from_custom_source()
connection_string = (
"DRIVER={Microsoft ODBC Driver for Microsoft Fabric Data Engineering};"
"WorkspaceId=<workspace-id>;"
"LakehouseId=<lakehouse-id>;"
"AuthFlow=ACCESS_TOKEN;"
f"AccessToken={access_token};"
)
Parametry konfiguracji
Wymagane parametry
Uwzględnij te parametry w każdym parametry połączenia:
| Parameter | Typ | Description | Przykład |
|---|---|---|---|
WorkspaceId |
UUID | Identyfikator obszaru roboczego sieci szkieletowej | 4bbf89a8-... |
LakehouseId |
UUID | Identyfikator jeziora Fabric | d8faa650-... |
AuthFlow |
String | Typ przepływu uwierzytelniania | AZURE_CLI |
Parametry opcjonalne
Ustawienia połączenia
| Parameter | Typ | Wartość domyślna | Description |
|---|---|---|---|
Database |
String | Żadne | Określona baza danych do nawiązania połączenia z |
Scope |
String | https://api.fabric.microsoft.com/.default |
Zakres OAuth |
Ustawienia wydajności
| Parameter | Typ | Wartość domyślna | Description |
|---|---|---|---|
ReuseSession |
logiczny | true |
Ponowne wykorzystanie istniejącej sesji Spark |
LargeTableSupport |
logiczny | false |
Włączanie optymalizacji dla dużych zestawów wyników |
EnableAsyncPrefetch |
logiczny | false |
Włącz pobieranie danych w tle |
PageSizeBytes |
Integer |
18874368 (18 MB) |
Rozmiar strony do paginacji wyników od 1 do 18 MB |
Ustawienia rejestrowania
| Parameter | Typ | Wartość domyślna | Description |
|---|---|---|---|
LogLevel |
String | INFO |
Poziom logaritmu: TRACE, DEBUG, INFO, WARN, lub ERROR |
LogFile |
String | odbc_driver.log |
Absolutna lub względna ścieżka pliku log |
Ustawienia serwera proxy
| Parameter | Typ | Wartość domyślna | Description |
|---|---|---|---|
UseProxy |
logiczny | false |
Włącz proxy |
ProxyHost |
String | Żadne | Nazwa hosta proxy |
ProxyPort |
Integer | Żadne | Port serwera proxy |
ProxyUsername |
String | Żadne | Nazwa użytkownika uwierzytelniania proxy |
ProxyPassword |
String | Żadne | Hasło uwierzytelniania serwera proxy |
Konfiguracja DSN
Na Linuksie konfiguruj nazwy źródeł danych (DSN) w plikach INI zamiast w rejestrze Windows.
| File | Scope | Access |
|---|---|---|
/etc/odbc.ini |
DSN ogólnosystemowe | Wymaga sudo |
~/.odbc.ini |
Specyficzne dla użytkownika DSN | Tylko bieżący użytkownik |
Utwórz DSN
Skopiuj zainstalowany szablon:
cp /usr/share/microsoft-fabric-odbc-driver/odbc.ini.template ~/.odbc.ini
Edytuj ~/.odbc.ini szczegóły dotyczące twojej przestrzeni roboczej Fabric:
[FabricDSN]
Description = Microsoft Fabric Data Engineering
Driver = Microsoft ODBC Driver for Microsoft Fabric Data Engineering
WorkspaceId = <workspace-id>
LakehouseId = <lakehouse-id>
AuthFlow = AZURE_CLI
LogLevel = INFO
# LogFile = /tmp/fabric_odbc.log
# LargeTableSupport = true
# ReuseSession = true
Zweryfikowaj DSN
Wypisz skonfigurowane DSN, a następnie przetestuj połączenie:
odbcinst -q -s
isql -v FabricDSN
Polecenie wymaga isql narzędzi wiersza poleceń unixODBC.
Używaj DSN w aplikacjach
conn = pyodbc.connect("DSN=FabricDSN")
using var connection = new OdbcConnection("DSN=FabricDSN");
await connection.OpenAsync();
SQLRETURN result = SQLConnect(
hdbc,
(SQLCHAR*)"FabricDSN",
SQL_NTS,
NULL,
0,
NULL,
0);
Przykłady użycia
Przetestowaj połączenie z isql
Rozpocznij interaktywną sesję SQL:
isql -v FabricDSN
Wykonaj jedno zapytanie:
echo "SELECT 1 AS test" | isql -v FabricDSN -b
Praca z dużymi zbiorami wyników
import pyodbc
connection_string = (
"DRIVER={Microsoft ODBC Driver for Microsoft Fabric Data Engineering};"
"WorkspaceId=<workspace-id>;"
"LakehouseId=<lakehouse-id>;"
"AuthFlow=AZURE_CLI;"
"LargeTableSupport=true;"
"PageSizeBytes=18874368;"
"EnableAsyncPrefetch=1;"
)
conn = pyodbc.connect(connection_string)
cursor = conn.cursor()
cursor.execute("SELECT * FROM large_table")
row_count = 0
while True:
rows = cursor.fetchmany(1000)
if not rows:
break
for row in rows:
row_count += 1
if row_count % 10000 == 0:
print(f"Processed {row_count} rows")
print(f"Total rows processed: {row_count}")
conn.close()
Odkryj schematy i tabele
import pyodbc
conn = pyodbc.connect(connection_string)
cursor = conn.cursor()
cursor.execute("SHOW TABLES")
for table in cursor.fetchall():
print(table)
cursor.execute("DESCRIBE employees")
for column in cursor.fetchall():
print(column)
cursor.execute("SHOW SCHEMAS")
for schema in cursor.fetchall():
print(schema)
conn.close()
Mapowanie typu danych
Sterownik mapuje typy danych Spark SQL na typy SQL ODBC:
| Typ Spark SQL | Typ SQL ODBC | Typ C/C++ | Typ języka Python | Typ platformy .NET |
|---|---|---|---|---|
BOOLEAN |
SQL_BIT |
SQLCHAR |
bool |
bool |
BYTE |
SQL_TINYINT |
SQLSCHAR |
int |
sbyte |
SHORT |
SQL_SMALLINT |
SQLSMALLINT |
int |
short |
INT |
SQL_INTEGER |
SQLINTEGER |
int |
int |
LONG |
SQL_BIGINT |
SQLBIGINT |
int |
long |
FLOAT |
SQL_REAL |
SQLREAL |
float |
float |
DOUBLE |
SQL_DOUBLE |
SQLDOUBLE |
float |
double |
DECIMAL |
SQL_DECIMAL |
SQLCHAR* |
decimal.Decimal |
decimal |
STRING |
SQL_VARCHAR |
SQLCHAR* |
str |
string |
VARCHAR(n) |
SQL_VARCHAR |
SQLCHAR* |
str |
string |
CHAR(n) |
SQL_CHAR |
SQLCHAR* |
str |
string |
BINARY |
SQL_BINARY |
SQLCHAR* |
bytes |
byte[] |
DATE |
SQL_TYPE_DATE |
SQL_DATE_STRUCT |
datetime.date |
DateTime |
TIMESTAMP |
SQL_TYPE_TIMESTAMP |
SQL_TIMESTAMP_STRUCT |
datetime.datetime |
DateTime |
ARRAY |
SQL_VARCHAR |
SQLCHAR* |
Ciąg JSON | string |
MAP |
SQL_VARCHAR |
SQLCHAR* |
Ciąg JSON | string |
STRUCT |
SQL_VARCHAR |
SQLCHAR* |
Ciąg JSON | string |
Różnice między platformami
| Funkcja | Windows | Linux |
|---|---|---|
| Menedżer kierowcy | Menedżer sterowników Microsoft ODBC | unixODBC |
| Sterownik binarny | microsoftfabricodbc.dll |
libmicrosoftfabricodbc.so |
| Konfiguracja DSN | Rejestr i interfejs graficzny Windows |
/etc/odbc.ini i ~/.odbc.ini |
| Rejestracja kierowcy | Rejestr i odbcad32.exe |
odbcinst -i -d -f |
| Klient HTTP | WinHTTP | Libcurl |
| magazyn lokalny wątku | Wbudowane wsparcie dla Windows | Openssl |
| Uwierzytelnianie certyfikatu | Windows CryptoAPI | OpenSSL z plikami RS256 oraz PEM lub PFX |
| Uwierzytelnianie interakcyjne | Okno przeglądarki | Niedostępne na serwerach bezgłowych |
| Opakowanie | Instalator MSI | Pakiet Linux |
Rozwiązywanie problemów
Kierowca nie znaleziony
Problem: Połączenie nie działa przy [IM002] Data source name not found and no default driver specified.
Rozwiązania:
- Sprawdź rejestrację kierowcy, uruchamiając
odbcinst -q -d. - Sprawdź, czy to
/usr/lib/libmicrosoftfabricodbc.soistnieje. - Zarejestruj sterownik, uruchamiając
sudo odbcinst -i -d -f /usr/share/microsoft-fabric-odbc-driver/odbcinst.ini.template. - Przeinstaluj pakiet, uruchamiając
sudo dpkg -i microsoft-fabric-odbc-driver-1.0.0-Linux.deb.
Nie znaleziono DSN
Problem: Połączenie nie działa przy [IM002] Data source name not found.
Rozwiązania:
- Zweryfikowaj konfigurację DSN, uruchamiając
odbcinst -q -s. - Zweryfikowaj, czy
~/.odbc.ini/etc/odbc.inilub zawiera sekcję DSN. - Upewnij się, że
Driverwartość dokładnie odpowiada zarejestrowanemu nazwisku kierowcy.
Awarie połączenia
Problem: Sterownik nie może połączyć się z Fabric.
Rozwiązania:
- Sprawdź, czy identyfikator przestrzeni roboczej i identyfikator domu nad jeziorem są ważnymi GUID-ami.
- Sprawdź uwierzytelnianie Azure CLI poprzez uruchomienie
az account show. - Upewnij się, że masz wymagane uprawnienia do Fabric workspace.
- Sprawdź łączność sieciową i ustawienia proxy.
Błędy uwierzytelniania
Problem: uwierzytelnianie Azure CLI zawodzi.
Rozwiązania:
- Uciekaj
az login, aby odświeżyć dane uwierzytelniające. - Ustaw właściwą subskrypcję, uruchamiając
az account set --subscription <subscription-id>. - Sprawdź token, uruchamiając
az account get-access-token --resource https://api.fabric.microsoft.com. - Upewnij się, że Twoje konto ma wymagane uprawnienia do przestrzeni roboczej Fabric.
Błędy biblioteki współdzielonej
Problem: Sterownik zgłaszaerror while loading shared libraries: libmicrosoftfabricodbc.so .
Rozwiązania:
- Przeinstaluj pakiet, uruchamiając
sudo dpkg -i microsoft-fabric-odbc-driver-1.0.0-Linux.deb. - Sprawdź, czy to
/usr/lib/libmicrosoftfabricodbc.soistnieje. - Uruchom,
sudo ldconfigaby odświeżyć pamięć podręczną współdzielonej biblioteki.
Limity czasu zapytań
Problem: Zapytania się wyłączają na dużych stołach.
Rozwiązania:
- Dodaj
LargeTableSupport=truedo parametrów połączenia. - Dostosuj
PageSizeBytesrozmiar wyniku. - Dodaj
EnableAsyncPrefetch=1do parametrów połączenia. - Użyj klauzuli
LIMITograniczającej rozmiar wyniku.
Włącz logowanie
Umożliwienie szczegółowego logowania w DSN:
[FabricDSN]
LogLevel = DEBUG
LogFile = /tmp/fabric_odbc_debug.log
Alternatywnie, można dodać parametry logowania do parametry połączenia:
LogLevel=DEBUG;LogFile=/tmp/fabric_odbc_debug.log;
Sterownik obsługuje następujące poziomy logów:
-
TRACE: Zawiera wszystkie wywołania API. -
DEBUG: Zawiera szczegółowe informacje o debugowaniu. -
INFO: Zawiera ogólne informacje i jest domyślna. -
WARN: Zawiera tylko ostrzeżenia. -
ERROR: Zawiera tylko błędy.
Włącz śledzenie unixODBC
Dla diagnostyki wywołań ODBC na niskim poziomie dodaj następującą konfigurację do /etc/odbcinst.ini:
[ODBC]
Trace = yes
TraceFile = /tmp/odbc_trace.log
Wyłącz śledzenie po zakończeniu rozwiązywania problemów, aby uniknąć niepotrzebnych narzutów wydajnościowych.
Treści powiązane
- Sterownik ODBC firmy Microsoft dla inżynierii danych usługi Microsoft Fabric
- Środowiska uruchomieniowe platformy Apache Spark w Fabric
- Środowisko uruchomieniowe Fabric 1.3
- Co to jest interfejs API Livy do inżynierii danych
- Sterownik JDBC firmy Microsoft dla inżynierii danych usługi Microsoft Fabric
- unixODBC