Interoperabilità del formato della tabella Delta Lake

In Microsoft Fabric il formato di tabella Delta Lake è lo standard per l'analisi. Delta Lake è un livello di archiviazione open source che porta le transazioni ACID (Atomicità, Coerenza, Isolamento, Durabilità) ai carichi di lavoro di big data e analisi.

Tutte le esperienze Fabric generano e consumano nativamente le tabelle Delta Lake, offrendo un'esperienza di prodotto unificata. Le tabelle Delta Lake prodotte da un motore di calcolo, ad esempio Fabric Data Warehouse o Synapse Spark, possono essere utilizzate da qualsiasi altro motore, ad esempio Power BI. Quando si inseriscono dati in Fabric, i dati vengono archiviati come tabelle Delta per impostazione predefinita. È possibile integrare facilmente dati esterni contenenti tabelle Delta Lake usando i collegamenti a OneLake.

Funzionalità di Delta Lake ed esperienze di Fabric

Per ottenere l'interoperabilità, tutte le esperienze Fabric sono allineate alle caratteristiche di Delta Lake e alle funzionalità di Fabric. Alcune esperienze possono scrivere solo in tabelle Delta Lake, mentre altre possono leggere da esse.

  • Writers: data warehouse, flussi di eventi e modelli semantici di Power BI esportati in OneLake
  • Reader: endpoint di analisi SQL e modelli semantici "direct lake" di Power BI
  • Writer e lettori: runtime di Fabric Spark, flussi di dati, pipeline e database KQL (Kusto Query Language)

La seguente matrice mostra le funzionalità principali di Delta Lake e la relativa disponibilità in ogni esperienza Fabric.

Funzionalità del fabric Mappatura delle colonne Vettori di eliminazione Scrittura in ordine a V Ottimizzazione e manutenzione delle tabelle Partizioni
Esportazione Delta Lake del data warehouse Nome: Sì
ID: Nessuno
Lettura: N.D. (non applicabile)
Scrittura: No
Endpoint di analisi SQL Nome: Sì
ID: Nessuno
N/D (non applicabile) N/D (non applicabile) Lettura: Sì
Scrivi: N/A (non applicabile)
Lakehouse Explorer e anteprima Nome: Sì
ID: Nessuno
N/D (non applicabile) Lettura: Sì
Scrivi: N/A (non applicabile)
Fabric Spark Runtime 2.0 (anteprima) Nome: Sì
ID: Sì
Lettura: Sì
Scrivi: Sì
Fabric Spark Runtime 1.3 Nome: Sì
ID: Sì
Lettura: Sì
Scrivi: Sì
Fabric Spark Runtime 1.2 Nome: Sì
ID: Sì
Lettura: Sì
Scrivi: Sì
Fabric Spark Runtime 1.1 Nome: Sì
ID: Sì
NO Lettura: Sì
Scrivi: Sì
notebook Python Nome: Nessuno
ID: Nessuno
NO NO Lettura: Sì
Scrivi: Sì
Flussi di dati Gen2 Nome: Sì
ID: Nessuno
NO Lettura: Sì
Scrivi: Sì
Pipelines Nome: Nessuno
ID: Nessuno
NO NO Lettura: Sì
Scrivere: Sì, solo sovrascrivere
Modelli semantici Direct Lake di Power BI Nome: Sì
ID: Sì
N/D (non applicabile) N/D (non applicabile) Lettura: Sì
Scrivi: N/A (non applicabile)
Esportare modelli semantici di Power BI in OneLake Nome: Sì
ID: Nessuno
N/D (non applicabile) NO Lettura: N.D. (non applicabile)
Scrittura: No
Database di KQL Nome: Sì
ID: Nessuno
NO Numero 1 Lettura: Sì
Scrivi: Sì
Flussi di eventi Nome: Nessuno
ID: Nessuno
NO NO NO Lettura: N.D. (non applicabile)
Scrivi: Sì

1 I database KQL forniscono determinate funzionalità di manutenzione delle tabelle, ad esempio la conservazione. I dati vengono rimossi alla fine del periodo di conservazione da OneLake. Per altre informazioni, vedere Una copia logica.

Funzionalità del fabric Clustering liquido TIMESTAMP_NTZ Versione del lettore/scrittore Delta e caratteristiche predefinite della tabella Ampliare il tipo
Esportazione Delta Lake del data warehouse NO NO Lettore: 3
Writer: 7
Vettori di eliminazione,
Mappature delle colonne (nome)
Endpoint di analisi SQL NO N/D (non applicabile)
Lakehouse Explorer e anteprima N/D (non applicabile)
Fabric Spark Runtime 2.0 (anteprima) Lettore: 3
Writer: 7
Vettori di cancellazione
Fabric Spark Runtime 1.3 Lettore: 1
Scrittore: 2
NO
Fabric Spark Runtime 1.2 Sì, sola lettura Lettore: 1
Scrittore: 2
NO
Fabric Spark Runtime 1.1 Sì, sola lettura NO Lettore: 1
Scrittore: 2
NO
notebook Python NO Lettore: 1
Scrittore: 2
NO
Flussi di dati Gen2 Sì, sola lettura NO Lettore: 1
Scrittore: 2
Pipelines Sì, sola lettura NO Lettore: 1
Scrittore: 2
Sì: Pipeline di dati DI (copia, attività di ricerca)
No: pipeline copyjob di inserimento delle dipendenze
Modelli semantici Direct Lake di Power BI NO N/D (non applicabile)
Esportare modelli semantici di Power BI in OneLake NO NO Lettore: 2
Scrittore: 5
Mappature delle colonne (nome)
NO
Database di KQL NO NO Lettore: 1
Scrittore: 1
NO
Flussi di eventi NO NO Lettore: 1
Scrittore: 2
NO

Nota

  • Fabric non scrive i mapping delle colonne per impostazione predefinita, tranne dove indicato. L'esperienza predefinita di Fabric genera tabelle compatibili attraverso il servizio. Le tabelle Delta Lake prodotte da servizi di terze parti potrebbero avere funzionalità di tabella incompatibili.
  • Alcune esperienze di Fabric non offrono funzionalità di ottimizzazione e manutenzione delle tabelle, ad esempio la compattazione dei bidoni, l'ordine V, la fusione dei vettori di eliminazione (PURGE) e la pulizia dei file vecchi senza riferimenti (VACUUM). Per mantenere ottimali le tabelle Delta Lake per l'analisi, seguire le tecniche riportate in Eseguire la manutenzione delle tabelle Delta in Lakehouse per le tabelle inserite usando tali esperienze.
  • Per indicazioni complete per la gestione di carichi di lavoro trasversali sulle strategie di manutenzione delle tabelle per diversi scenari di consumo, consultare Manutenzione e ottimizzazione delle tabelle dei carichi di lavoro trasversali in Microsoft Fabric.

Limitazioni correnti

Attualmente Fabric non supporta queste funzionalità di Delta Lake:

  • I checkpoint V2 non sono disponibili in modo uniforme in tutte le esperienze. Solo i notebook Spark e i processi Spark possono leggere e scrivere su tabelle con checkpoint V2. Gli endpoint di analisi Di Lakehouse e SQL non elencano correttamente le tabelle contenenti i file del checkpoint V2 nella __delta_log cartella.
  • Delta Lake 3.x Uniform. Questa funzionalità è supportata solo nel calcolo Spark di Data Engineering (Notebook, Processi Spark).
  • Scrittura di colonne Identity (funzionalità di Azure Databricks).
  • Pipeline dichiarative di Lakeflow Spark (funzionalità Azure Databricks).
  • Funzionalità delta Lake 4.x esterne a Lakehouse e notebook e processi Spark: regole di confronto, tipo di variante, commit coordinati e altro ancora. L'estensione dei tipi è supportata laddove indicato nella matrice delle funzionalità precedente in questo articolo.
  • supporto delle funzionalità Delta Lake per i notebook Python: i notebook Python usano delta-rs (deltalake), DuckDB e Polars invece del lettore e scrittore Delta Lake Spark per leggere e scrivere tabelle Delta Lake. Le versioni deltalake attualmente fissate da Fabric non supportano alcune funzionalità della tabella Delta Lake, inclusi vettori di eliminazione, mappatura delle colonne, scritture del clustering liquido e ottimizzazione e ampliamento dei tipi. Polari read_delta e write_delta usano deltalake come back-end, quindi condividono le stesse limitazioni.
  • Taccuini Python Delta Lake soluzioni alternative e fallback: la funzione DuckDB delta_scan può fornire una soluzione di accesso in sola lettura per alcune tabelle che deltalake non riescono a leggere, ad esempio tabelle con vettori di eliminazione. Se una funzionalità Delta Lake non è disponibile o non funziona in un notebook Python, usare invece un notebook PySpark. I notebook PySpark offrono il supporto Delta Lake più completo in Fabric e illustrano gli scenari Delta Lake elencati per i runtime di Spark Fabric in queste tabelle. Per altre informazioni, vedere Interazione con i dati nei notebook Python e Scegliere tra i notebook Python e PySpark su Microsoft Fabric.

Caratteri speciali per i nomi delle tabelle

Fabric supporta caratteri speciali come parte dei nomi delle tabelle. Questa funzionalità consente l'utilizzo dei caratteri Unicode per comporre nomi di tabella nelle esperienze Fabric.

I caratteri speciali seguenti sono riservati o non compatibili con almeno una delle tecnologie Fabric e non devono essere usati come parte di un nome di tabella: " (virgolette doppie), ' (virgolette singole), #, %, +, :, ? o ' (backtick).