Die Vorlage "Change Data Capture von MySQL für BigQuery mit Debezium und Pub/Sub" ist eine Streamingpipeline, die Pub/Sub-Nachrichten mit Änderungsdaten aus einer MySQL-Datenbank liest und die Datensätze in BigQuery schreibt. Ein Debezium-Connector erfasst Änderungen an der MySQL-Datenbank und veröffentlicht die geänderten Daten in Pub/Sub. Die Vorlage liest dann die Pub/Sub-Nachrichten und schreibt sie in BigQuery.
Über diese Vorlage können Sie MySQL-Datenbanken und BigQuery-Tabellen miteinander synchronisieren. Die Pipeline schreibt die geänderten Daten in eine BigQuery-Staging-Tabelle und aktualisiert in regelmäßigen Abständen eine BigQuery-Tabelle zu Replikation der MySQL-Datenbank.
Pipelineanforderungen
- Der Debezium-Connector muss bereitgestellt sein.
- Die Pub/Sub-Nachrichten müssen in einer Beam Row serialisiert sein.
Vorlagenparameter
Parameter | Beschreibung |
---|---|
inputSubscriptions |
Die durch Kommas getrennte Liste mit Pub/Sub-Eingabeabos, aus denen gelesen werden soll, im Format <subscription>,<subscription>, ... |
changeLogDataset |
Das BigQuery-Dataset zum Speichern der Staging-Tabellen im Format <my-dataset> . |
replicaDataset |
Der Speicherort des BigQuery-Datasets zum Speichern der Replikattabellen im Format <my-dataset> . |
updateFrequencySecs |
(Optional) Das Intervall, in dem die Pipeline die BigQuery-Tabelle zur Replikation der MySQL-Datenbank aktualisiert. |
Führen Sie die Vorlage aus.
Führen Sie die folgenden Schritte aus, um diese Vorlage auszuführen:
- Klonen Sie das DataflowTemplates-Repository auf Ihren lokalen Computer.
- Wechseln Sie zum Verzeichnis
v2/cdc-parent
. - Achten Sie darauf, dass der Debezium-Connector bereitgestellt ist.
- Führen Sie mit Maven die Dataflow-Vorlage aus.
mvn exec:java -pl cdc-change-applier -Dexec.args="--runner=DataflowRunner \ --inputSubscriptions=SUBSCRIPTIONS \ --updateFrequencySecs=300 \ --changeLogDataset=CHANGELOG_DATASET \ --replicaDataset=REPLICA_DATASET \ --project=PROJECT_ID \ --region=REGION_NAME"
Dabei gilt:
PROJECT_ID
: die Google Cloud-Projekt-ID, in der Sie den Dataflow-Job ausführen möchtenSUBSCRIPTIONS
: Ihre durch Kommas getrennte Liste von Pub/Sub-Abonamen.CHANGELOG_DATASET
: Ihr BigQuery-Dataset für Änderungslogdaten.REPLICA_DATASET
: Ihr BigQuery-Dataset für Replikattabellen.
Nächste Schritte
- Informationen zu Dataflow-Vorlagen
- Sehen Sie sich die Liste der von Google bereitgestellten Vorlagen an.