Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Delta Change Data Feed (CDF) acquisisce inserimenti, aggiornamenti ed eliminazioni, quindi li applica alle tabelle Delta Lake in OneLake. Questo flusso supporta l'analisi quasi in tempo reale senza ricarichi completi o processi ETL pesanti.
- Elabora continuamente le modifiche incrementali (basate su delta).
- Utilizza l'elaborazione solo delle modifiche.
- Supporta l'elaborazione incrementale downstream.
- È disponibile per tutte le fonti di mirroring, inclusi i partner di mirroring pubblico.
Prerequisites
- Una capacità di Microsoft Fabric (F2 o superiore) o una versione di valutazione di Fabric.
- Un database con mirroring in un'area di lavoro Fabric.
- Esiste una Fabric Lakehouse nella stessa o in un'altra area di lavoro (per l'esecuzione di query sui dati CDF)
Attivare il feed dei dati delle modifiche delta nel portale di Fabric
Abilita il feed dei dati delle modifiche delta per ogni database sottoposto a mirroring.
- Per qualsiasi origine con mirroring, selezionare l'icona a forma di ingranaggio per aprire il pannello di configurazione.
- In Gestione tabelle Delta selezionare la casella di controllo Abilita feed di dati delle modifiche differenziali.
Abilitare il feed delta dei dati di modifica tramite API
Per abilitare il feed di dati delle modifiche differenziali usando le API, vedere Abilitare il feed di dati delle modifiche differenziali per un database con mirroring.
Abilita il feed dei dati di modifica delta per le tabelle esistenti
Se è stato creato il database con mirroring prima che CDF sia diventato disponibile, è possibile abilitare CDF usando l'API REST Fabric. Il processo recupera la definizione corrente, aggiunge la proprietà CDF e aggiorna la definizione.
Recupera la definizione del database mirror:
POST https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/mirroredDatabases/{mirroredDatabaseId}/getDefinitionDecodificare il
mirroring.jsonpayload dalla risposta. Il payload è con codifica Base64.Aggiungere
"enableDeltaChangeDataFeed": trueallatarget.typePropertiessezione:{ "properties": { "source": { ... }, "target": { "type": "MountedRelationalDatabase", "typeProperties": { "defaultSchema": "dbo", "format": "Delta", "enableDeltaChangeDataFeed": true, "retentionInDays": 1 } } } }Codificare nuovamente il codice JSON aggiornato in Base64, quindi aggiornare la definizione:
POST https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/mirroredDatabases/{mirroredDatabaseId}/updateDefinition
Dopo aver aggiornato la definizione, recuperarla di nuovo e confermare che enableDeltaChangeDataFeed è true.
Eseguire query sui dati delle modifiche
Important
Per eseguire query sui dati CDF, è prima necessario creare un collegamento Lakehouse che punta alla tabella di database con mirroring. Non è possibile interrogare direttamente i dati CDF dall'elemento del database con mirroring. Il collegamento rende accessibili da Spark i file _change_data.
Crea una shortcut di Lakehouse:
- Nell'area di lavoro di Fabric, apri o crea un Lakehouse.
- In Lakehouse Explorer selezionare Nuovo collegamento.
- Selezionare Microsoft OneLake come origine.
- Vai al database mirror e seleziona la tabella che vuoi interrogare.
- Selezionare Crea per completare la creazione del collegamento.
Apri un notebook di Fabric collegato al tuo Lakehouse e usa una delle opzioni seguenti per interrogare i dati delle modifiche:
Opzione A: Leggere le modifiche a partire da una versione specifica
Usare l'opzione readChangeFeed con startingVersion per leggere tutte le modifiche CDF da una versione specifica della tabella Delta in avanti. Sostituisci <lakehouse_name> e <table_name> con i nomi del tuo Lakehouse e della tua tabella.
df = spark.read.format("delta") \
.option("readChangeFeed", "true") \
.option("startingVersion", 0) \
.table("<lakehouse_name>.<table_name>")
df.show()
Opzione B: Leggere le modifiche all'interno di un intervallo di timestamp
Usare l'opzione readChangeFeed con startingTimestamp e endingTimestamp per leggere le modifiche CDF in un intervallo di tempo specifico.
df = spark.read.format("delta") \
.option("readChangeFeed", "true") \
.option("startingTimestamp", "2025-01-01T00:00:00Z") \
.option("endingTimestamp", "2025-01-02T00:00:00Z") \
.table("<lakehouse_name>.<table_name>")
df.show()
Opzione C: Usare la sintassi SQL
Usare la table_changes() funzione SQL per eseguire query sui dati CDF. Questo approccio funziona in qualsiasi contesto SPARK SQL.
df = spark.sql("""
SELECT * FROM table_changes('<lakehouse_name>.<table_name>', 0)
""")
df.show()
Opzioni di consumo downstream
Il feed di dati delle modifiche delta supporta diversi percorsi di consumo downstream:
| Metodo di consumo | Description | Condizione |
|---|---|---|
| Notebook di Spark | Interroga i dati di modifica usando readChangeFeed o table_changes() tramite una scorciatoia Lakehouse. |
Disponibile ora |
| Operazione di copia | Usa Copy Job per leggere le modifiche CDF da un Fabric Lakehouse e replicarle in modo incrementale verso destinazioni come SQL, Snowflake, Fabric Lakehouse e altre ancora. Crea un collegamento dal database con mirroring a un Lakehouse, quindi il processo di copia legge le modifiche dal Lakehouse. Il supporto per il database mirrorato direttamente in Copy Job è in fase di sviluppo. | Disponibile ora (tramite il collegamento Lakehouse); supporto diretto presto disponibile |
| Eventstreams (Connettore del feed delle modifiche del database con mirroring) | Trasmetti le modifiche CDF dai database con mirroring direttamente negli Eventstream di Fabric per applicazioni event-driven a bassa latenza. Individuare i database abilitati per CDF nell'hub Real-Time, creare un flusso di eventi e instradare le destinazioni, ad esempio Eventhouse o configurare gli avvisi di Activator. | Anteprima |
| Pipeline di dati | Le pipeline di dati non supportano in modo nativo la copia incrementale da CDF. È possibile usare notebook all'interno delle pipeline per ottenere l'elaborazione incrementale. | Soluzione alternativa disponibile |
Tariffazione
Note
La fatturazione per le funzionalità estese è stata ripresa in tutte le aree a partire dalla settimana del 25 maggio. 2026. Anche il supporto UX per abilitare le capacità estese è stato riattivato, anche se è anche possibile estendere le capacità tramite le API.
Il mirroring senza funzionalità estese è gratuito.
Chiarimenti chiave sui prezzi:
- La fatturazione è basata sull'utilizzo. Ti vengono addebitate solo le risorse di calcolo incrementali utilizzate quando CDF elabora modifiche effettive. Non sono previsti addebiti per le esecuzioni inattive o vuote (periodi in cui non si verificano modifiche ai dati di origine).
- La duplicazione dello schermo di base rimane gratuita. L'abilitazione di CDF non modifica il prezzo del mirroring del core. La replica continua, la conversione Delta Lake, l'integrazione di OneLake e gli endpoint di analisi SQL rimangono liberi.
- L'archiviazione per il mirroring è gratuita. L'archiviazione dei dati mirrorati in OneLake non viene fatturata separatamente. Tuttavia, l'abilitazione di CDF aumenta il consumo di archiviazione a causa di file aggiuntivi
_change_data. - CDF è un componente aggiuntivo, non una sostituzione. La fatturazione CDF è solo per il calcolo delle funzionalità estese. Non addebita retroattivamente l'attività di mirroring core.
- È possibile controllare i costi abilitando in modo selettivo CDF. CDF è abilitato a livello di database mirrorato. Abilita CDF solo sui database mirrorati che richiedono l'elaborazione incrementale e lascia gli altri nel mirroring di base.
Per il modello di prezzi completo, i dettagli di misurazione e l'ambito di fatturazione, vedere Fatturazione per le funzionalità estese nel mirroring.