In dieser Anleitung erfahren Sie, wie Sie einen Job erstellen und bereitstellen, der geänderte Daten kontinuierlich aus einer Microsoft SQL Server-Datenbank in eine BigQuery-Tabelle repliziert.
Lernziele
In dieser Anleitung erwartet Sie Folgendes:
- Aktivieren Sie Change Data Capture (CDC) in Ihrer SQL Server-Datenbank.
- Einen Cloud Data Fusion-Replikationsjob erstellen und ausführen
- Ergebnisse in BigQuery anzeigen
Kosten
In diesem Dokument verwenden Sie die folgenden kostenpflichtigen Komponenten von Google Cloud:
Mit dem Preisrechner können Sie eine Kostenschätzung für Ihre voraussichtliche Nutzung vornehmen.
Wenn die Replikation ausgeführt wird, werden Ihnen der Dataproc-Cluster und Verarbeitungskosten für BigQuery in Rechnung gestellt. Zur Optimierung dieser Kosten empfehlen wir dringend, BigQuery-Pauschalpreise zu verwenden.
Hinweis
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Cloud Data Fusion, BigQuery, and Cloud Storage APIs.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Cloud Data Fusion, BigQuery, and Cloud Storage APIs.
- Erstellen Sie eine öffentliche Cloud Data Fusion-Instanz in Version 6.3.0 oder höher. Wenn Sie eine private Instanz erstellen, richten Sie das VPC-Netzwerk-Peering ein.
- Aktivieren Sie beim Erstellen der Instanz die Replikation. Klicken Sie dazu auf Beschleuniger hinzufügen und setzen Sie ein Häkchen in das Kästchen Replikation.
- Informationen zum Aktivieren in einer vorhandenen Instanz finden Sie unter Replikation aktivieren.
Weitere Informationen zu Netzwerken finden Sie unter HAProxy mit Cloud Data Fusion verwenden, um komplexe Netzwerktopologien zu verwalten.
Erforderliche Rollen
Informationen dazu, wie Sie die für diese Anleitung erforderlichen Berechtigungen erhalten, finden Sie unter Zugriffssteuerung mit IAM und Nutzerberechtigung für das Dienstkonto gewähren.
Optional: SQL Server-VM-Instanz einrichten
Laden Sie die AdventureWorks2017-Datenbank (OLTP) herunter und laden Sie die Daten in Ihre SQL Server-Instanz.
CDC in Ihrer SQL Server-Datenbank aktivieren
Aktivieren Sie für die Replikation die Datenerfassung (CDC) für die Datenbank und die Tabelle, die Sie replizieren möchten.
Cloud Data Fusion-Replikationsjob erstellen und ausführen
JDBC-Treiber hochladen
Laden Sie den SQL Server-JDBC-Treiber auf Ihren lokalen Computer herunter.
Laden Sie in der Cloud Data Fusion-Weboberfläche den JDBC-Treiber hoch. Konfigurieren Sie den JDBC-Treiber mit diesen Werten:
- Geben Sie im Feld Name
sqlserver
ein. - Geben Sie im Feld Klassenname
com.microsoft.sqlserver.jdbc.SQLServerDriver
ein. - Übernehmen Sie im Feld Version die Standardeinstellung.
- Geben Sie im Feld Name
Job erstellen
Klicken Sie in der Cloud Data Fusion-Weboberfläche auf Replikation.
Klicken Sie auf
Replikationsjob erstellen.Geben Sie auf der Seite Neuen Replikationsjob erstellen einen Namen für den Replikationsjob an und klicken Sie auf Weiter.
Konfigurieren Sie die Quelle:
- Wählen Sie Microsoft SQL Server als Quelle aus.
- Geben Sie unter Host den Hostnamen des SQL-Servers ein, aus dem gelesen werden soll.
- Geben Sie unter Port den Port ein, der für die Verbindung zum SQL Server verwendet werden soll:
1433
. - Wählen Sie unter Name des JDBC-Plug-ins
sqlserver
oder den Namen aus, den Sie bei der Konfiguration des JDBC-Treibers angegeben haben. - Geben Sie als Datenbankname
AdventureWorks2017
ein. - Geben Sie im Abschnitt Anmeldedaten Ihren Nutzernamen und Ihr Passwort ein, um auf den SQL-Server zuzugreifen.
Klicken Sie auf Weiter.
Konfigurieren Sie das Ziel:
- Wählen Sie das BigQuery-Ziel aus.
- Die Projekt-ID und der Dienstkontoschlüssel werden automatisch erkannt. Ändern Sie sie nicht.
- Optional: Im Abschnitt Erweitert können Sie den Namen und den Speicherort des Cloud Storage-Buckets, das Ladeintervall, das Präfix der Staging-Tabelle und das Verhalten konfigurieren, wenn Tabellen oder Datenbanken gelöscht werden.
Klicken Sie auf Weiter.
Wenn die Verbindung erfolgreich ist, wird eine Liste der
AdventureWorks2017
-Tabellen angezeigt. Wählen Sie für diese Anleitung einige Tabellen und Ereignisse aus, z. B.Insert
-,Update
- undDelete
-Ereignisse.Optional: Konfigurieren Sie die erweiterten Attribute. Für diese Anleitung können Sie die Standardeinstellungen verwenden.
Klicken Sie auf Weiter.
Klicken Sie auf der Seite Bewertung prüfen für eine der Tabellen auf Zuordnungen anzeigen, um eine Bewertung der Schemaprobleme, der fehlenden Features oder der Verbindungsprobleme zu erhalten, die während der Replikation auftreten können. Probleme müssen behoben werden, bevor Sie fortfahren können. Wenn in dieser Anleitung Probleme mit Tabellen auftreten, gehen Sie zurück zu dem Schritt, an dem Sie Tabellen ausgewählt haben, und wählen stattdessen eine Tabelle oder ein Ereignis ohne Probleme aus.
Weitere Informationen zu Datentypkonvertierungen von der Quelldatenbank in das BigQuery-Ziel finden Sie unter Datentypen für die Replikation.
Klicken Sie auf Back (Zurück).
Klicken Sie auf Weiter.
Prüfen Sie die Details des Replikationsjobs und klicken Sie dann auf Replikationsjob bereitstellen.
Job starten
- Klicken Sie auf der Seite Replikationsjobdetails auf Starten.
Der Replikationsjob wechselt vom Status Wird bereitgestellt zu Wird gestartet zu Wird ausgeführt. Im Status „Wird ausgeführt“ lädt der Replikationsjob einen ersten Snapshot der ausgewählten Tabellendaten (z. B. die Tabelle „Personen“) in BigQuery. In diesem Status wird der Status der Tabelle als Snapshots werden erstellt aufgeführt. Nachdem der erste Snapshot in BigQuery geladen wurde, werden alle an der Tabelle „Personen“ vorgenommenen Änderungen nach BigQuery repliziert. Der Status der Tabelle wird als Replikation aufgeführt.
Job überwachen
Sie können den Replikationsjob starten und beenden, seine Konfiguration und Logs prüfen und den Replikationsjob überwachen.
Sie können die Aktivitäten des Replikationsjobs auf der Seite Replikationsjobdetails überwachen.
Klicken Sie auf der Seite Replikation auf den Namen des Replikationsjobs.
Klicken Sie auf Monitoring.
Ergebnisse in BigQuery anzeigen
Der Replikationsjob erstellt ein repliziertes Dataset und eine replizierte Tabelle in BigQuery, wobei die Namen aus der entsprechenden SQL Server-Datenbank und den Tabellennamen übernommen werden.
Öffnen Sie in der Google Cloud Console BigQuery.
Klicken Sie im linken Bereich auf den Projektnamen, um eine Liste der Datasets zu maximieren.
Wählen Sie zuerst das Dataset
adventureworks2017
und dann eine Tabelle aus.
Weitere Informationen finden Sie in der BigQuery-Dokumentation.
Bereinigen
Damit Ihrem Google Cloud-Konto die in dieser Anleitung verwendeten Ressourcen nicht in Rechnung gestellt werden, löschen Sie entweder das Projekt, das die Ressourcen enthält, oder Sie behalten das Projekt und löschen die einzelnen Ressourcen.
Löschen Sie nach Abschluss der Anleitung die inGoogle Clouderstellten Ressourcen.
VM-Instanz löschen
- In the Google Cloud console, go to the VM instances page.
- Select the checkbox for the instance that you want to delete.
- To delete the instance, click More actions, click Delete, and then follow the instructions.
Löschen Sie die Cloud Data Fusion-Instanz.
Folgen Sie der Anleitung zum Löschen Ihrer Cloud Data Fusion-Instanz.
Projekt löschen
- In the Google Cloud console, go to the Manage resources page.
- In the project list, select the project that you want to delete, and then click Delete.
- In the dialog, type the project ID, and then click Shut down to delete the project.
Nächste Schritte
- Weitere Informationen zur Replikation in Cloud Data Fusion
- Replication API-Referenz
- Anleitung zum Replizieren von Daten aus MySQL in BigQuery
- Anleitung zum Replizieren von Daten aus Oracle in BigQuery