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.
Questo articolo mostra come aggiungere una fonte di Change Data Capture (CDC) del database SQL di Azure a un flusso di eventi.
Il connettore di origine CDC del database SQL di Azure per i flussi di eventi di Microsoft Fabric consente di acquisire uno snapshot dei dati correnti in un database SQL di Azure. Il connettore monitora e registra poi eventuali modifiche future a livello di riga a questi dati. Una volta acquisite le modifiche nell'eventstream, è possibile elaborare questi dati CDC in tempo reale e inviarli a destinazioni diverse in Fabric per un'ulteriore elaborazione o analisi.
Prerequisiti
- Accesso a un'area di lavoro in modalità di licenza per capacità Fabric o in modalità di licenza di valutazione, con autorizzazioni di Collaboratore o superiori.
- Un server Azure SQL in esecuzione con un database SQL di Azure.
- Il database SQL di Azure deve essere accessibile pubblicamente e non essere protetto da un firewall o in una rete virtuale.
- Abilitato CDC nel database SQL di Azure eseguendo la stored procedure
sys.sp_cdc_enable_db. Per ulteriori informazioni, consultare Abilitare e disabilitare Change Data Capture. - Se non si dispone di un flusso di eventi, creare un flusso di eventi.
Si noti che non è necessario abilitare il mirroring nel database SQL di Azure.
Abilitare CDC nel database SQL di Azure
Passare al portale di Azure, aprire il database SQL di Azure e selezionare Editor di query. Scegliere un metodo di autenticazione per eseguire l’accesso.
Eseguire i comandi SQL seguenti per abilitare CDC nel database:
-- Enable Database for CDC EXEC sys.sp_cdc_enable_db; -- Enable CDC for a table using a gating role option EXEC sys.sp_cdc_enable_table @source_schema = N'dbo', @source_name = N'MyTable', @role_name = NULL GO
Avviare la procedura guidata Selezionare un'origine dati
Se non è ancora stata aggiunta alcuna origine al flusso di eventi, selezionare il riquadro Usa origine esterna .
Se si aggiunge l'origine a un flusso di eventi già pubblicato, passare alla modalità Modifica. Sulla barra multifunzione selezionare Aggiungi origine>Origini esterne.
Nella pagina Selezionare un'origine dati cercare e selezionare Connetti sul riquadro Azure SQL DB (CDC).
Configurare e connettersi al CDC del database SQL di Azure
Nella pagina Connetti, selezionare Nuova connessione.
Nella sezione Impostazioni di connessione immettere i valori seguenti per il database SQL di Azure:
Server: immettere il nome del server Azure SQL dal portale di Azure. È in questo formato:
mysqlservername.database.windows.net.Database: immettere il nome del database SQL di Azure dal portale di Azure.
Scorrere verso il basso e nella sezione Credenziali di connessione seguire questa procedura.
Per Nome connessione, immetti un nome per la connessione.
Per Tipo di autenticazione selezionare Base.
Nota
Attualmente, Fabric Eventstream supporta solo l'autenticazione di base .
Immettere Nome utente e Password per il database.
Selezionare Connetti.
Nella pagina Connetti selezionare Tutte le tabelle o Immettere i nomi della tabella. Se si seleziona quest'ultimo, specificare le tabelle usando un elenco delimitato da virgole di identificatori di tabella completi (
schemaName.tableName) o espressioni regolari valide. Per esempio:- Usare
dbo.test.*per selezionare tutte le tabelle i cui nomi iniziano condbo.test. - Usare
dbo\.(test1|test2)per selezionaredbo.test1edbo.test2.
È possibile combinare entrambi i formati usando virgole. Il limite di caratteri totale per l'intera voce è di 102.400 caratteri.
- Usare
È possibile espandere Impostazioni avanzate per accedere ad altre opzioni di configurazione per l'origine CDC del database SQL di Azure:
-
Modalità di gestione decimale: definisce il modo in cui il connettore gestisce
DECIMALeNUMERICi valori delle colonne:-
Precise: rappresenta i valori usando tipi decimali esatti ,ad esempio JavaBigDecimal, per garantire la precisione completa e l'accuratezza nella rappresentazione dei dati. -
Double: converte i valori in numeri a virgola mobile e precisione doppia. Questa impostazione migliora l'usabilità e le prestazioni, ma potrebbe comportare una perdita di precisione. -
String: codifica i valori come stringhe formattate. Questa impostazione semplifica l'utilizzo nei sistemi downstream, ma perde informazioni semantiche sul tipo numerico originale.
-
-
Modalità snapshot: specificare i criteri per l'esecuzione di uno snapshot all'avvio del connettore:
-
Initial: il connettore esegue uno snapshot solo quando non sono stati registrati offset per il nome del server logico o se rileva che non è stato completato uno snapshot precedente. Al termine dello snapshot, il connettore inizia a trasmettere i record degli eventi per le modifiche successive al database. -
InitialOnly: il connettore esegue uno snapshot solo quando per il nome del server logico non sono stati registrati offset. Al termine dello snapshot, il connettore si arresta. Non esegue la transizione allo streaming per leggere gli eventi di modifica dal binlog. -
NoData: il connettore esegue uno snapshot che acquisisce solo lo schema, ma non i dati della tabella. Impostare questa opzione se non è necessario uno snapshot coerente dei dati, ma sono necessarie solo le modifiche apportate dall'avvio del connettore.
-
- Elenco di esclusione colonne: specifica le colonne da escludere dai valori degli eventi di modifica usando nomi completi (schemaName.tableName.columnName).
-
Applicazione databaseIntent: determina il comportamento di routing nei gruppi di disponibilità AlwaysOn di SQL Server:
-
ReadWrite: si connette alla replica primaria. Utilizzare questa opzione se la connessione deve eseguire operazioni di lettura e scrittura. -
ReadOnly: consente il reindirizzamento a una replica secondaria leggibile per le operazioni di sola lettura. Utilizzarlo per abilitare CDC direttamente nelle repliche. È necessario impostare snapshot.isolation.mode su snapshot, ovvero l'unica modalità di isolamento delle transazioni supportata per le repliche di sola lettura.
-
- Override dell'istruzione SELECT di snapshot: usare la proprietà se si desidera che uno snapshot includa solo un sottoinsieme delle righe di una tabella. Questa proprietà influisce solo sui snapshot. Non si applica agli eventi letti dal log dal connettore.
-
Modalità di gestione decimale: definisce il modo in cui il connettore gestisce
Selezionare Avanti.
Nella schermata Rivedi e crea esaminare il riepilogo e quindi selezionare Aggiungi.
Inserire i dati delle modifiche dai database SQL di Azure con registrazione automatica dello schema di tabella tramite CDC in Eventstream.
Nella pagina Connetti, selezionare Nuova connessione.
Nella sezione Impostazioni di connessione immettere i valori seguenti per il database SQL di Azure:
Server: immettere il nome del server Azure SQL dal portale di Azure. È in questo formato:
mysqlservername.database.windows.net.Database: immettere il nome del database SQL di Azure dal portale di Azure.
Scorrere verso il basso e nella sezione Credenziali di connessione seguire questa procedura.
Per Nome connessione, immetti un nome per la connessione.
Per Tipo di autenticazione selezionare Base.
Nota
Attualmente, Fabric Eventstream supporta solo l'autenticazione di base .
Immettere Nome utente e Password per il database.
Selezionare Connetti.
Nella pagina Connetti selezionare Tutte le tabelle o Immettere i nomi della tabella. Se si seleziona quest'ultimo, specificare le tabelle usando un elenco delimitato da virgole di identificatori di tabella completi (
schemaName.tableName) o espressioni regolari valide. Per esempio:- Usare
dbo.test.*per selezionare tutte le tabelle i cui nomi iniziano condbo.test. - Usare
dbo\.(test1|test2)per selezionaredbo.test1edbo.test2.
È possibile combinare entrambi i formati usando virgole. Il limite di caratteri totale per l'intera voce è di 102.400 caratteri.
- Usare
È possibile espandere Impostazioni avanzate per accedere ad altre opzioni di configurazione per l'origine CDC del database SQL di Azure:
-
Modalità di gestione decimale: definisce il modo in cui il connettore gestisce
DECIMALeNUMERICi valori delle colonne:-
Precise: rappresenta i valori usando tipi decimali esatti ,ad esempio JavaBigDecimal, per garantire la precisione completa e l'accuratezza nella rappresentazione dei dati. -
Double: converte i valori in numeri a virgola mobile e precisione doppia. Questa impostazione migliora l'usabilità e le prestazioni, ma potrebbe comportare una perdita di precisione. -
String: codifica i valori come stringhe formattate. Questa impostazione semplifica l'utilizzo nei sistemi downstream, ma perde informazioni semantiche sul tipo numerico originale.
-
-
Modalità snapshot: specificare i criteri per l'esecuzione di uno snapshot all'avvio del connettore:
-
Initial: il connettore esegue uno snapshot solo quando non sono stati registrati offset per il nome del server logico o se rileva che non è stato completato uno snapshot precedente. Al termine dello snapshot, il connettore inizia a trasmettere i record degli eventi per le modifiche successive al database. -
InitialOnly: il connettore esegue uno snapshot solo quando per il nome del server logico non sono stati registrati offset. Al termine dello snapshot, il connettore si arresta. Non esegue la transizione allo streaming per leggere gli eventi di modifica dal binlog. -
NoData: il connettore esegue uno snapshot che acquisisce solo lo schema, ma non i dati della tabella. Impostare questa opzione se non è necessario uno snapshot coerente dei dati, ma sono necessarie solo le modifiche apportate dall'avvio del connettore.
-
- Elenco di esclusione colonne: specifica le colonne da escludere dai valori degli eventi di modifica usando nomi completi (schemaName.tableName.columnName).
-
Applicazione databaseIntent: determina il comportamento di routing nei gruppi di disponibilità AlwaysOn di SQL Server:
-
ReadWrite: si connette alla replica primaria. Utilizzare questa opzione se la connessione deve eseguire operazioni di lettura e scrittura. -
ReadOnly: consente il reindirizzamento a una replica secondaria leggibile per le operazioni di sola lettura. Utilizzarlo per abilitare CDC direttamente nelle repliche. È necessario impostare snapshot.isolation.mode su snapshot, ovvero l'unica modalità di isolamento delle transazioni supportata per le repliche di sola lettura.
-
- Override dell'istruzione SELECT di snapshot: usare la proprietà se si desidera che uno snapshot includa solo un sottoinsieme delle righe di una tabella. Questa proprietà influisce solo sui snapshot. Non si applica agli eventi letti dal log dal connettore.
-
Modalità di gestione decimale: definisce il modo in cui il connettore gestisce
Abilitare l'associazione dello schema di eventi.
Per Area di lavoro selezionare un'area di lavoro Infrastruttura per il set di schemi.
Per Set di schemi, + Crea è selezionato per impostazione predefinita, che crea un nuovo set di schemi. È possibile modificarlo per selezionare un set di schemi eventi esistente.
Se è stata selezionata l'opzione + Crea nel passaggio precedente, immettere un nome per il set di schemi.
Nella pagina Rivedi e connetti selezionare Aggiungi.
Per tutte le tabelle o le tabelle selezionate nel database SQL di Azure, il connettore rileva automaticamente e crea gli schemi e li registra nel Registro di sistema dello schema.
Selezionare il nodo eventstream al centro e passare alla scheda Schemi associati nel riquadro inferiore.
Set di schemi
Passare all'area di lavoro selezionata nel passaggio precedente. Nell'esempio seguente si tratta dell'area di lavoro personale.
Selezionare il set di schemi creato dal connettore di database SQL di Azure (CDC).
Gli schemi vengono visualizzati nel set di schemi, come illustrato nell'immagine seguente.
Per visualizzare la versione JSON dello schema, passare alla visualizzazione schema JSON .
Non modificare questi schemi individuati usando questo editor perché diventa non conforme allo schema delle tabelle nell'origine del database SQL di Azure.
Visualizzare il flusso di eventi aggiornato
È possibile visualizzare l'origine del database SQL di Azure (CDC) aggiunta all’eventstream in modalità di modifica.
Per implementare questa origine CDC del database SQL di Azure appena aggiunta, selezionare Pubblica. Dopo aver completato questi passaggi, l'origine CDC del database SQL di Azure è disponibile per la vista dal vivo.
Configurare le destinazioni eventstream per l'uso degli schemi
Attualmente, solo la eventhouse, l'endpoint personalizzato e le destinazioni di flusso derivate sono supportate per i flussi di eventi con funzionalità estese abilitate. Questa sezione illustra come aggiungere e configurare una destinazione dell'evento quando sono abilitate funzionalità estese (ad esempio il supporto dello schema) per il flusso di eventi.
Configurare uno schema per una destinazione endpoint personalizzata
Selezionare Trasforma eventi o aggiungi destinazione e quindi selezionare CustomEndpoint.
Nel riquadro Endpoint personalizzato specificare un nome per la destinazione.
In Schema di input selezionare lo schema per gli eventi. Quando si abilita il supporto dello schema per un flusso di eventi, effettuare una selezione in questa casella.
Per informazioni dettagliate sulla configurazione di una destinazione endpoint personalizzata, vedere Aggiungere un endpoint personalizzato o una destinazione app personalizzata a un flusso di eventi.
Configurare gli schemi per una destinazione casa degli eventi
Selezionare Trasforma eventi o aggiungi destinazione e quindi selezionare Eventhouse(Casa eventi).
Nel riquadro Eventhouse configurare le impostazioni correlate allo schema seguenti:
Per Schema di input selezionare uno o più schemi dall'elenco a discesa.
Nota
Se è stata selezionata l'opzione Schema dinamico tramite intestazioni durante la configurazione di un'origine di Hub eventi, potrebbero essere stati configurati più schemi per l'origine e ne è stato eseguito il mapping a varie proprietà e ai relativi valori.
Per Metodo di creazione tabella selezionare Una singola tabella con tutti gli schemi combinati o Tabelle separate per ogni schema, a seconda dei requisiti.
Per Scrivere dati con, selezionare una delle opzioni seguenti:
- Solo payload: scrivere i dati del payload estratti nella tabella. Se sono presenti più schemi di input, i dati vengono inviati a più tabelle.
-
Metadati e payload: scrivere metadati e dati di payload in una singola tabella. Le colonne di esempio includono
source,subjecttype, edata.
Per i passaggi dettagliati sulla configurazione di una destinazione dell'evento, vedere Aggiungere una destinazione eventhouse a un flusso di eventi.
Contenuto correlato
Altri connettori:
- Flussi di dati Amazon Kinesis
- Azure Cosmos DB
- Hub eventi di Azure
- Bus di servizio di Azure
- Hub IoT di Azure
- Confluent Kafka
- Endpoint personalizzato
- Google Cloud Pub/Sub
- Database MySQL CDC
- Database PostgreSQL CDC
- Dati di esempio
- Eventi di archiviazione BLOB di Azure
- Evento dell'area di lavoro di Fabric