Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Önemli
Bu özellik önizleme aşamasındadır.
ODBC (Açık Veritabanı Bağlantısı), istemci uygulamalarının veritabanlarından ve büyük veri platformlarından verilere bağlanmasını ve verilerle çalışmasını sağlayan yaygın olarak benimsenen bir standarttır.
Microsoft ODBC Driver for Fabric Data Engineering, ODBC standardının güvenilirliği ve sadeliğiyle Fabric'te Spark iş yüklerini bağlamanıza, sorgulamanıza ve yönetmenize olanak tanır. Fabric'in Livy API'leri üzerine inşa edilen sürücü, .NET, Python ve diğer ODBC uyumlu uygulamalar ile BI araçlarınıza güvenli ve esnek Spark SQL bağlantısı sağlar.
Temel özellikler
- ODBC 3.x uyumlu: ODBC 3.x belirtiminin tam uygulaması
- Microsoft Entra ID kimlik doğrulaması: Azure CLI, etkileşimli, istemci kimlik bilgileri, sertifika tabanlı ve erişim belirteci kimlik doğrulaması gibi birden çok kimlik doğrulama akışı
- Spark SQL sorgu desteği: Spark SQL deyimlerinin doğrudan yürütülmesi
- Kapsamlı veri türü desteği: Karmaşık türler (ARRAY, MAP, STRUCT) dahil olmak üzere tüm Spark SQL veri türleri için destek
- Oturumu yeniden kullanma: Gelişmiş performans için yerleşik oturum yönetimi
- Büyük tablo desteği: Yapılandırılabilir sayfa boyutlarına sahip büyük sonuç kümeleri için iyileştirilmiş işleme
- Zaman uyumsuz önyükleme: Gelişmiş performans için arka planda veri yükleme
- Ara sunucu desteği: Kurumsal ortamlar için HTTP proxy yapılandırması
- Çok şemalı göl evi desteği: Bir göl evi içindeki belirli şemaya bağlanın
- OneLake entegrasyonu: OneLake'de depolanan lakehouse verilerine, birden fazla şema üzerindeki tablolar dahil, ayrı bir depolama yapılandırması olmadan birleşik bir ODBC arayüzü üzerinden erişim
- Environment öğeleri desteği: Her oturuma çalışma alanı kitaplıklarını, Spark özelliklerini ve değişkenleri uygulamak için iş yürütülürken Fabric ortam öğelerini ekleyin
- Özel Spark yapılandırması: Oturum davranışını ayarlamak için Spark yapılandırma özelliklerini doğrudan bağlantı dizesi geçirin
Uyarı
Açık kaynak Apache Spark'ta veritabanı ve şema eş anlamlı olarak kullanılır. Örneğin, çalıştırmak SHOW SCHEMAS veya SHOW DATABASES bir Fabric defterinde aynı sonucu döndürür — göl evindeki tüm şemaların listesi.
Önkoşullar
Microsoft Fabric Veri Mühendisliği için Microsoft ODBC Sürücüsü'ne başlamadan önce aşağıdakilere sahip olduğunuzdan emin olun:
- İşletim Sistemi: Windows 10/11 veya Windows Server 2016+
- Fabric Erişimi: Bir Fabric çalışma alanına erişim
- Microsoft Entra ID kimlik bilgileri: Kimlik doğrulaması için uygun kimlik bilgileri
- İş Alanı ve Göl Evi Kimlikleri: Fabric çalışma alanı ve göl eviniz için GUID tanımlayıcıları
- Azure CLI (isteğe bağlı): Azure CLI kimlik doğrulama yöntemi için gereklidir
İndirme ve MSI yüklemesi
Microsoft Fabric Veri Mühendisliği sürüm 1.0.0 için Microsoft ODBC Sürücüsü, bu indirme merkezi bağlantısından indirebileceğiniz genel önizleme aşamasındadır.
- Microsoft Fabric Veri Mühendisliği MSI paketi için Microsoft ODBC Sürücüsünü indirin
- Çift tıklayın
MicrosoftFabricODBCDriver-1.0.msi - Yükleme sihirbazını izleyin ve lisans sözleşmesini kabul edin
- Yükleme dizinini seçin (varsayılan:
C:\Program Files\Microsoft ODBC Driver for Microsoft Fabric Data Engineering\) - Yüklemeyi tamamlama
Sessiz yükleme
# Silent installation
msiexec /i "MicrosoftFabricODBCDriver-1.0.msi" /quiet
# Installation with logging
msiexec /i "MicrosoftFabricODBCDriver-1.0.msi" /l*v install.log
Yüklemeyi doğrulama
Yüklemeden sonra sürücünün kayıtlı olduğunu doğrulayın:
- Çalıştır
odbcad32.exe(ODBC Veri Kaynağı Yöneticisi) - Sürücüler sekmesine gidin
- "Microsoft Fabric Veri Mühendisliği için Microsoft ODBC Sürücüsü" öğesinin listelendiğini doğrulayın
Hızlı başlangıç örneği
Bu örnek, Microsoft ODBC Driver for Microsoft Fabric Data Engineering ile Fabric'e nasıl bağlanıp sorgu yürütüleceğini gösterir. Bu kodu çalıştırmadan önce önkoşulları tamamladığınızdan ve sürücüyü yüklediğinizden emin olun.
Python örneği
import pyodbc
# Connection string with required parameters
connection_string = (
"DRIVER={Microsoft ODBC Driver for Microsoft Fabric Data Engineering};"
"WorkspaceId=<workspace-id>;"
"LakehouseId=<lakehouse-id>;"
"AuthFlow=AZURE_CLI;"
)
# Connect and execute query
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()
.NET örneği
using System.Data.Odbc;
// Connection string with required parameters
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));
}
Bağlantı dizesi biçimi
Temel bağlantı dizesi
Microsoft Fabric Veri Mühendisliği için Microsoft ODBC Sürücüsü aşağıdaki bağlantı dizesi biçimini kullanır:
DRIVER={Microsoft ODBC Driver for Microsoft Fabric Data Engineering};<parameter1>=<value1>;<parameter2>=<value2>;...
Bağlantı dizesi bileşenleri
| Bileşen | Description | Example |
|---|---|---|
| SÜRÜCÜ | ODBC sürücü tanımlayıcısı | {Microsoft ODBC Driver for Microsoft Fabric Data Engineering} |
| WorkspaceId | Fabric workspace identifier (GUID) | xxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx |
| LakehouseId | Fabric göl evi tanımlayıcısı (GUID) | xxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx |
| Kimlik Doğrulama Akışı | Kimlik doğrulama yöntemi |
AZURE_CLI, INTERACTIVE, CLIENT_CREDENTIAL, CLIENT_CERTIFICATE, , ACCESS_TOKEN |
Örnek bağlantı dizeleri
Temel bağlantı (Azure CLI kimlik doğrulaması)
DRIVER={Microsoft ODBC Driver for Microsoft Fabric Data Engineering};WorkspaceId=<workspace-id>;LakehouseId=<lakehouse-id>;AuthFlow=AZURE_CLI
Performans seçenekleriyle
DRIVER={Microsoft ODBC Driver for Microsoft Fabric Data Engineering};WorkspaceId=<workspace-id>;LakehouseId=<lakehouse-id>;AuthFlow=AZURE_CLI;ReuseSession=true;LargeTableSupport=true;PageSizeBytes=18874368
Kayıt tutma ile
DRIVER={Microsoft ODBC Driver for Microsoft Fabric Data Engineering};WorkspaceId=<workspace-id>;LakehouseId=<lakehouse-id>;AuthFlow=AZURE_CLI;LogLevel=DEBUG;LogFile=odbc_driver.log
Authentication
Microsoft Fabric Veri Mühendisliği için Microsoft ODBC Sürücüsü, Microsoft Entra ID (eski adıYla Azure Active Directory) aracılığıyla birden çok kimlik doğrulama yöntemini destekler. Kimlik doğrulaması, bağlantı dizesindeki AuthFlow parametresi kullanılarak yapılandırılır.
Kimlik doğrulama yöntemleri
| AuthFlow Değeri | Description |
|---|---|
AZURE_CLI |
Azure CLI kimlik bilgilerini kullanarak geliştirme |
INTERACTIVE |
Etkileşimli tarayıcı tabanlı kimlik doğrulaması |
CLIENT_CREDENTIAL |
İstemci sırrı ile hizmet asıl |
CLIENT_CERTIFICATE |
Sertifika ile hizmet sorumlusu |
ACCESS_TOKEN |
Önceden alınan taşıyıcı erişim belirteci |
Azure CLI kimlik doğrulaması
En iyi seçim: Geliştirme ve etkileşimli uygulamalar
# Python Example
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)
Prerequisites:
- Azure CLI yüklü:
az --version - Oturum açıldı:
az login
Etkileşimli tarayıcı kimlik doğrulaması
En iyi kullanım: Kullanıcıya yönelik uygulamalar
# Python Example
connection_string = (
"DRIVER={Microsoft ODBC Driver for Microsoft Fabric Data Engineering};"
"WorkspaceId=<workspace-id>;"
"LakehouseId=<lakehouse-id>;"
"AuthFlow=INTERACTIVE;"
"TenantId=<tenant-id>;"
"Scope=https://api.fabric.microsoft.com/.default;"
)
conn = pyodbc.connect(connection_string)
Davranış:
- Kullanıcı kimlik doğrulaması için bir tarayıcı penceresi açar
- Kimlik bilgileri sonraki bağlantılar için önbelleğe alınır
İstemci kimlik bilgileri (hizmet sorumlusu) kimlik doğrulaması
En iyi: Otomatik hizmetler ve arka plan işleri
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};"
)
Gerekli parametreler
-
TenantId: Azure kiracı kimliği -
ClientId: Microsoft Entra Id'den uygulama (istemci) kimliği -
ClientSecret: Microsoft Entra ID'den istemci sırrı
En iyi uygulamalar
- Gizli dizileri güvenli bir şekilde depolama (Azure Key Vault, ortam değişkenleri)
- Mümkün olduğunda yönetilen kimlikleri kullanma
- Sırları düzenli olarak yenile
Sertifika tabanlı kimlik doğrulaması
En iyisi: Sertifika tabanlı kimlik doğrulaması gerektiren kurumsal uygulamalar
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=C:\\certs\\mycert.pfx;"
"CertificatePassword=<password>;"
)
Gerekli parametreler:
-
TenantId: Azure kiracı kimliği -
ClientId: Uygulama (istemci) kimliği -
CertificatePath: PFX/PKCS12 sertifika dosyasının yolu -
CertificatePassword: Sertifika parolası
Erişim belirteci kimlik doğrulaması
En iyisi: Özel kimlik doğrulama senaryoları
# Acquire token through custom mechanism
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};"
)
Yapılandırma parametreleri
Gerekli parametreler
Bu parametreler her bağlantı dizesinde bulunmalıdır:
| Parametre | Türü | Description | Example |
|---|---|---|---|
| WorkspaceId | UUID | Doku çalışma alanı tanımlayıcısı | 4bbf89a8-... |
| LakehouseId | UUID | Fabric göl evi tanımlayıcısı | d8faa650-... |
| Kimlik Doğrulama Akışı | Dize | Kimlik doğrulama akışı türü | AZURE_CLI |
İsteğe bağlı parametreler
Bağlantı ayarları
| Parametre | Türü | Varsayılan | Description |
|---|---|---|---|
| Veritabanı | Dize | Hiç kimse | Bağlanacak belirli veritabanı |
| Scope | Dize | https://api.fabric.microsoft.com/.default |
OAuth kapsamı |
Performans ayarları
| Parametre | Türü | Varsayılan | Description |
|---|---|---|---|
| Oturum Yeniden Kullanımı | Boolean | true |
Mevcut Spark oturumlarını yeniden kullanma |
| Büyük Tablo Desteği | Boolean | false |
Büyük sonuç kümeleri için iyileştirmeleri etkinleştirme |
| EnableAsyncPrefetch | Boolean | false |
Arka plan verilerini önceden yüklemeyi etkinleştirme |
| SayfaBoyutuBayt | Tamsayı |
18874368 (18 MB) |
Sonuç sayfalaması için sayfa boyutu (1-18 MB) |
Kayıt ayarları
| Parametre | Türü | Varsayılan | Description |
|---|---|---|---|
| LogLevel | Dize | INFO |
Günlük düzeyi: TRACE, DEBUG, INFO, WARN, ERROR |
| Logfile | Dize | odbc_driver.log |
Kayıt dosyası yolu (mutlak veya göreli) |
Proxy ayarları
| Parametre | Türü | Varsayılan | Description |
|---|---|---|---|
| UseProxy | Boolean | false |
Ara sunucuyu etkinleştirme |
| ProxyHost | Dize | Hiç kimse | Proxy ana bilgisayar adı |
| ProxyPort | Tamsayı | Hiç kimse | Proxy bağlantı noktası |
| ProxyUsername | Dize | Hiç kimse | Proxy kimlik doğrulaması kullanıcı adı |
| ProxyPassword | Dize | Hiç kimse | Proxy kimlik doğrulama parolası |
Ortam ayarları
Sürücü tarafından başlatılan Spark oturumuna bir Fabric ortam öğesi ekleyebilirsiniz. Seçili ortamın kitaplıkları, Spark özellikleri ve değişkenleri oturum oluşturulduğunda otomatik olarak uygulanır.
| Parametre | Türü | Varsayılan | Description |
|---|---|---|---|
| ÇevreId | UUID | Hiç kimse | Spark oturumu oluşturma sırasında uygulanacak Fabric ortam öğesi tanımlayıcısı (GUID) |
Ortam öğesi içeren örnek bağlantı dizesi:
DRIVER={Microsoft ODBC Driver for Microsoft Fabric Data Engineering};WorkspaceId=<workspace-id>;LakehouseId=<lakehouse-id>;AuthFlow=AZURE_CLI;EnvironmentId=<environment-id>
Uyarı
Ortam, Spark oturumu başlatıldığında uygulanır. Özel Spark yapılandırma özelliklerini de belirtirseniz, oturum düzeyi özellikleri ortam varsayılanlarından önceliklidir.
Özel Spark yapılandırması
Spark yapılandırma özelliklerini doğrudan bağlantı dizesinde geçirebilirsiniz. ön ekli spark. tüm parametreler oluşturma zamanında Spark oturumuna otomatik olarak uygulanır ve çalışma alanı veya çalışma zamanı varsayılanlarını geçersiz kılmanıza olanak tanır.
Örnek Spark yapılandırmaları:
spark.sql.shuffle.partitions=200
spark.sql.adaptive.enabled=true
spark.sql.autoBroadcastJoinThreshold=10485760
Özel Spark özellikleriyle örnek bağlantı dizesi:
DRIVER={Microsoft ODBC Driver for Microsoft Fabric Data Engineering};WorkspaceId=<workspace-id>;LakehouseId=<lakehouse-id>;AuthFlow=AZURE_CLI;spark.sql.shuffle.partitions=200;spark.sql.adaptive.enabled=true
Uyarı
Oturum oluşturulduğunda Spark yapılandırma özellikleri uygulanır. Bu sorgular, bu oturumda çalıştırılacak tüm sorgulara uygulanır ve aynı özellikler için ortam veya çalışma zamanı varsayılanlarını geçersiz kılar.
DSN yapılandırması
Bir sistem DSN'si oluştur
ODBC Yöneticisi'ni açma
%SystemRoot%\System32\odbcad32.exeYeni Sistem DSN'si Oluşturma
- "Sistem DSN" sekmesine gidin
- “Ekle”yi seçin
- "Microsoft Fabric Veri Mühendisliği için Microsoft ODBC Sürücüsü" seçeneğini belirleyin
- "Son" seçeneğini belirleyin
DSN Ayarlarını Yapılandırma
-
Veri Kaynağı Adı: Benzersiz bir ad girin (örn.
FabricODBC) - Açıklama: İsteğe bağlı açıklama
- Çalışma Alanı Kimliği: Fabric çalışma alanı GUID'niz
- Lakehouse Kimliği: Fabric lakehouse GUID'niz
- Kimlik doğrulaması: Kimlik doğrulama yöntemini seçin
- Environment ID (isteğe bağlı): Oturum oluşturma sırasında eklenecek Fabric ortam öğesinin GUID'sini girin
- Ek ayarları gerektiği gibi yapılandırma
-
Veri Kaynağı Adı: Benzersiz bir ad girin (örn.
Bağlantıyı Test Et
- Ayarları doğrulamak için "Bağlantıyı Test Et" seçeneğini belirleyin
- Kaydetmek için "Tamam" seçeneğini belirleyin
Uygulamalarda DSN kullanma
# Python - Connect using DSN
conn = pyodbc.connect("DSN=FabricODBC")
// .NET - Connect using DSN
using var connection = new OdbcConnection("DSN=FabricODBC");
await connection.OpenAsync();
Kullanım örnekleri
Temel bağlantı ve sorgu
Piton
import pyodbc
def main():
connection_string = (
"DRIVER={Microsoft ODBC Driver for Microsoft Fabric Data Engineering};"
"WorkspaceId=<workspace-id>;"
"LakehouseId=<lakehouse-id>;"
"AuthFlow=AZURE_CLI;"
"ReuseSession=true;"
)
conn = pyodbc.connect(connection_string, timeout=30)
cursor = conn.cursor()
print("Connected successfully!")
# Show available tables
print("\nAvailable tables:")
cursor.execute("SHOW TABLES")
for row in cursor.fetchall():
print(f" {row}")
# Query data
print("\nQuery results:")
cursor.execute("SELECT * FROM employees LIMIT 10")
# Print column names
columns = [desc[0] for desc in cursor.description]
print(f"Columns: {columns}")
# Print rows
for row in cursor.fetchall():
print(row)
conn.close()
if __name__ == "__main__":
main()
.NET
using System.Data.Odbc;
class Program
{
static async Task Main(string[] args)
{
string connectionString =
"DRIVER={Microsoft ODBC Driver for Microsoft Fabric Data Engineering};" +
"WorkspaceId=<workspace-id>;" +
"LakehouseId=<lakehouse-id>;" +
"AuthFlow=AZURE_CLI;" +
"ReuseSession=true;";
using var connection = new OdbcConnection(connectionString);
await connection.OpenAsync();
Console.WriteLine("Connected successfully!");
// Show available tables
Console.WriteLine("\nAvailable tables:");
using (var cmd = new OdbcCommand("SHOW TABLES", connection))
using (var reader = await cmd.ExecuteReaderAsync())
{
while (await reader.ReadAsync())
{
Console.WriteLine($" {reader.GetString(0)}");
}
}
// Query data
Console.WriteLine("\nQuery results:");
using (var cmd = new OdbcCommand("SELECT * FROM employees LIMIT 10", connection))
using (var reader = await cmd.ExecuteReaderAsync())
{
// Print column names
var columns = new List<string>();
for (int i = 0; i < reader.FieldCount; i++)
{
columns.Add(reader.GetName(i));
}
Console.WriteLine($"Columns: {string.Join(", ", columns)}");
// Print rows
while (await reader.ReadAsync())
{
var values = new object[reader.FieldCount];
reader.GetValues(values);
Console.WriteLine(string.Join("\t", values));
}
}
}
}
Büyük sonuç kümeleriyle çalışma
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;" # 18 MB pages
"EnableAsyncPrefetch=1;"
)
conn = pyodbc.connect(connection_string)
cursor = conn.cursor()
# Execute large query
cursor.execute("SELECT * FROM large_table")
# Process in batches
row_count = 0
while True:
rows = cursor.fetchmany(1000) # Fetch 1000 rows at a time
if not rows:
break
for row in rows:
# Process row
row_count += 1
if row_count % 10000 == 0:
print(f"Processed {row_count} rows")
print(f"Total rows processed: {row_count}")
conn.close()
Şema keşfi
import pyodbc
conn = pyodbc.connect(connection_string)
cursor = conn.cursor()
# List all tables
print("Tables in current default schema / database:")
cursor.execute("SHOW TABLES")
tables = cursor.fetchall()
for table in tables:
print(f" {table}")
# Describe table structure
print("\nTable structure for 'employees':")
cursor.execute("DESCRIBE employees")
for col in cursor.fetchall():
print(f" {col}")
# List schemas (for multi-schema Lakehouses)
print("\nAvailable schemas:")
cursor.execute("SHOW SCHEMAS")
for db in cursor.fetchall():
print(f" {db}")
conn.close()
Veri türü eşlemesi
Sürücü Spark SQL veri türlerini ODBC SQL türleriyle eşler:
| Spark SQL Türü | ODBC SQL Türü | C/C++ Türü | Python Türü | .NET Türü |
|---|---|---|---|---|
| BOOLEAN | SQL_BIT | SQLCHAR | bool | bool |
| BYTE | SQL_TINYINT | SQLSCHAR | int | sbyte |
| KISA | SQL_SMALLINT | SQLSMALLINT | int | short |
| INT | SQL_INTEGER | SQLINTEGER | int | int |
| LONG | SQL_BIGINT | SQLBIGINT | int | long |
| FLOAT | SQL_REAL | SQLREAL | yüzmek | yüzmek |
| ÇİFT | SQL_DOUBLE | SQLDOUBLE | yüzmek | iki katı |
| ONDALIK | 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* | str (JSON) | String |
| MAP | SQL_VARCHAR | SQLCHAR* | str (JSON) | String |
| Yapı | SQL_VARCHAR | SQLCHAR* | str (JSON) | String |
BI aracı tümleştirmesi
Microsoft Excel
- Excel 'i Açma -> Veri -> Veri Al -> Diğer Kaynaklardan -> ODBC'den
- Yapılandırılan DSN'nizi seçin (örn.
FabricODBC) - İstenirse kimlik doğrulaması
- Tabloları inceleyin ve seçin
- Excel çalışma sayfasına veri yükleme
Power BI Masaüstü Uygulaması
- Power BI Desktop'ı açma -> Veri Al -> ODBC
- Yapılandırılan DSN'nizi seçin
- Veri kataloğuna göz atma ve tabloları seçme
- Verileri gerektiği gibi dönüştürme
- Görselleştirme oluşturun
SQL Server Management Studio (Bağlı Sunucu)
-- Create linked server
EXEC sp_addlinkedserver
@server = 'FABRIC_LINKED_SERVER',
@srvproduct = 'Microsoft Fabric',
@provider = 'MSDASQL',
@datasrc = 'FabricODBC'
-- Configure RPC
EXEC master.dbo.sp_serveroption
@server = N'FABRIC_LINKED_SERVER',
@optname = N'rpc out',
@optvalue = N'true';
-- Query via linked server
SELECT * FROM OPENQUERY(FABRIC_LINKED_SERVER, 'SHOW TABLES');
SELECT * FROM OPENQUERY(FABRIC_LINKED_SERVER, 'SELECT * FROM employees LIMIT 20');
-- Execute statements
EXEC('SELECT * FROM employees LIMIT 10') AT FABRIC_LINKED_SERVER;
Sorun giderme
Bu bölümde, Microsoft Fabric Veri Mühendisliği için Microsoft ODBC Sürücüsünü kullanırken karşılaşabileceğiniz yaygın sorunları çözmeye yönelik yönergeler sağlanır.
Yaygın sorunlar
Aşağıdaki bölümlerde yaygın sorunlar ve çözümleri açıklanmaktadır:
Bağlantı hataları
Sorun: Fabric'e bağlanamıyor
Çözümler:
- İş alanı kimliği ve göl evi kimliğinin doğru GUID olduğunu doğrulayın
- Azure CLI kimlik doğrulamayı denetleyin:
az account show - Uygun Fabric çalışma alanı izinlerine sahip olduğunuzdan emin olun
- Ağ bağlantısı ve ara sunucu ayarlarını denetleme
Kimlik doğrulama hataları
Sorun: Azure CLI ile kimlik doğrulaması başarısız oluyor
Çözümler:
- Kimlik bilgilerini yenilemek için komutunu çalıştırın
az login - Doğru kiracıyı doğrulayın:
az account set --subscription <subscription-id> - Belirteç geçerliliğini denetleyin:
az account get-access-token --resource https://api.fabric.microsoft.com
Sorgu zaman aşımları
Sorun: Büyük tablolarda sorguların zaman aşımına uğraması
Çözümler:
-
LargeTableSupport=trueetkinleştirme - En uygun öbek boyutu için ayarlama
PageSizeBytes - Zaman uyumsuz ön getirmeyi etkinleştir:
EnableAsyncPrefetch=1 - Sonuç boyutunu kısıtlamak için yan tümcesi kullanma
LIMIT
Log kaydını etkinleştir
Sorunları giderirken, ayrıntılı günlüğe kaydetmeyi etkinleştirmek sorunların kök nedenini belirlemenize yardımcı olabilir. Bağlantı dizesi ile günlüğe kaydetmeyi etkinleştirebilirsiniz.
Ayrıntılı günlük kaydını etkinleştirmek için:
LogLevel=DEBUG;LogFile=C:\temp\odbc_driver_debug.log;
Log seviyeleri:
-
TRACE: En ayrıntılı, tüm API çağrılarını içerir -
DEBUG: Ayrıntılı hata ayıklama bilgileri -
INFO: Genel bilgiler (varsayılan) -
WARN: Yalnızca uyarılar -
ERROR: Sadece hatalar
ODBC izleme
Düşük düzeyli tanılamalar için, ayrıntılı ODBC API çağrılarını ve sürücü davranışını yakalamak için Windows ODBC izlemeyi etkinleştirebilirsiniz. En iyi performansı korumak için gerekli olmadığında izlemeyi kapatmayı unutmayın.
ODBC izlemeyi etkinleştirmek için:
- Aç
odbcad32.exe - "İzleme" sekmesine gidin
- İzleme dosyası yolunu ayarlama (ör.
C:\temp\odbctrace.log) - "İzlemeyi Şimdi Başlat" seçeneğini belirleyin
- Sorunu yeniden oluşturun
- "İzlemeyi Şimdi Durdur" seçeneğini belirleyin