Auf dieser Seite wird beschrieben, wie Sie Schemas in Cloud Data Fusion ändern, wenn Sie Daten aus einer Microsoft SQL Server-Datenbank in eine BigQuery-Tabelle replizieren. Führen Sie die folgenden Schritte aus, damit der Replikationsjob weiterhin Daten aus einer SQL Server-Quelle repliziert, nachdem das Schema geändert wurde.
Schema ändern
Rufen Sie Ihre Instanz auf:
Rufen Sie in der Google Cloud Console die Seite „Cloud Data Fusion“ auf.
Um die Instanz in Cloud Data Fusion Studio zu öffnen, Klicken Sie auf Instanzen und dann auf Instanz ansehen.
Klicken Sie in der Cloud Data Fusion-Weboberfläche auf Replikation.
Beenden Sie den Replikationsjob.
Wenden Sie eine unterstützte Schemaänderung auf die Quelltabelle an, z. B. Spalte mit Nullwerten hinzufügen.
Erstellen Sie mit der
sys.sp_cdc_enable_table
-Prozedur eine neue Erfassungstabelle mit einem eindeutigen Wert für den Parameter@capture_instance
.Wenden Sie dieselbe Schemaänderung auf die Zieltabelle in BigQuery an.
Starten Sie den Replikationsjob neu.
Optional: Wenn der Job beginnt, neue Änderungen zu streamen, die nach dem Sie den Job anhalten, können Sie die alte Erfassungstabelle löschen, indem Sie die
sys.sp_cdc_disable_table
gespeicherte Prozedur. Parameter festlegen@capture_instance
zum Namen der alten Erfassungsinstanz.
Nachdem Sie eine Schemaänderung auf die Quelltabelle angewendet haben und bevor Sie eine neue Aufzeichnungstabelle erstellen (wie in den vorherigen Schritten), werden alle Änderungen von der alten Aufzeichnung mit dem alten Schema erfasst. Wenn Sie eine Spalte hinzugefügt haben, enthalten alle Änderungsereignisse in diesem Zeitraum keine Daten für die neue Spalte. Wenn Ihre Anwendung kann eine solche Umstellung nicht durchgeführt werden, gehen Sie folgendermaßen vor:
Alle Anwendungen, die Datenbankeinträge generieren, anhalten
Prüfen Sie, ob der Replikationsjob alle vorhandenen Ereignisse verarbeitet hat.
Beenden Sie den Replikationsjob.
Schemaänderung auf die Quelltabelle anwenden, z. B. Nullwerte zulässig hinzufügen Spalte.
Erstellen Sie mit der Prozedur
sys.sp_cdc_enable_table
eine neue Erfassungstabelle mit einem eindeutigen Wert für den Parameter@capture_instance
.Setzen Sie die im ersten Schritt angehaltenen Anwendungen fort.
Wenden Sie dieselbe Schemaänderung auf die Zieltabelle in BigQuery an.
Starten Sie den Replikationsjob neu.
Optional: Wenn der Job beginnt, neue Änderungen zu streamen, die nach dem Sie die neue Erfassungstabelle im vorherigen Schritt erstellt haben, können Sie die alte Erfassungstabelle löschen, indem Sie die
sys.sp_cdc_disable_table
gespeicherte Prozedur. Legen Sie den Parameter@capture_instance
auf den Namen der alten Aufnahmeinstanz fest.
Nächste Schritte
- Replikation
- Weitere Informationen finden Sie unter Unterstützte Schemaänderungen.
- Weitere Informationen finden Sie in der Replication API.