Daten aus der Oracle-Datenbank in BigQuery replizieren

In dieser Anleitung erfahren Sie, wie Sie einen Job bereitstellen, der geänderte Daten mithilfe von Cloud Data Fusion-Replikation kontinuierlich aus einer Oracle-Datenbank in ein BigQuery-Dataset repliziert. Dieses Feature basiert auf Datastream, dem cloudnativen Änderungsanbieter und Replikationsdienst von Google Cloud.

Lernziele

In dieser Anleitung lernen Sie, wie Sie:

  1. Konfigurieren Sie die Oracle-Datenbank, um das zusätzliche Logging zu aktivieren.
  2. Einen Cloud Data Fusion-Replikationsjob und erstellen und ausführen
  3. Ergebnisse in BigQuery anzeigen

Kosten

In dieser Anleitung werden die folgenden kostenpflichtigen Komponenten von Google Cloud verwendet:

Mit dem Preisrechner können Sie eine Kostenschätzung für Ihre voraussichtliche Nutzung vornehmen. Neuen Google Cloud-Nutzern steht möglicherweise eine kostenlose Testversion zur Verfügung.

Wenn die Replikation ausgeführt wird, werden Ihnen der Dataproc-Cluster und Cloud Storage in Rechnung gestellt und es fallen Verarbeitungskosten für Datastream und BigQuery an. Zur Optimierung dieser Kosten empfehlen wir dringend, BigQuery-Pauschalpreise zu verwenden.

Hinweis

  1. Melden Sie sich bei Ihrem Google Cloud-Konto an. Wenn Sie mit Google Cloud noch nicht vertraut sind, erstellen Sie ein Konto, um die Leistungsfähigkeit unserer Produkte in der Praxis sehen und bewerten zu können. Neukunden erhalten außerdem ein Guthaben von 300 $, um Arbeitslasten auszuführen, zu testen und bereitzustellen.
  2. Wählen Sie in der Google Cloud Console auf der Seite der Projektauswahl ein Google Cloud-Projekt aus oder erstellen Sie eines.

    Zur Projektauswahl

  3. Die Abrechnung für das Cloud-Projekt muss aktiviert sein. So prüfen Sie, ob die Abrechnung für ein Projekt aktiviert ist.

  4. Cloud Data Fusion, Dataproc, Datastream, BigQuery, and Cloud Storage APIs aktivieren.

    Aktivieren Sie die APIs

  5. Wählen Sie in der Google Cloud Console auf der Seite der Projektauswahl ein Google Cloud-Projekt aus oder erstellen Sie eines.

    Zur Projektauswahl

  6. Die Abrechnung für das Cloud-Projekt muss aktiviert sein. So prüfen Sie, ob die Abrechnung für ein Projekt aktiviert ist.

  7. Cloud Data Fusion, Dataproc, Datastream, BigQuery, and Cloud Storage APIs aktivieren.

    Aktivieren Sie die APIs

  8. Erstellen Sie eine private Cloud Data Fusion-Instanz in Version 6.4.0 oder höher. Führen Sie beim Einrichten der Instanz folgende Schritte aus:
    • Aktivieren Sie Virtual Private Cloud-Peering.
    • Aktivieren Sie die Replikation: Klicken Sie auf Beschleuniger hinzufügen und wählen Sie Replikation aus.

Wenn Sie eine vorhandene Instanz verwenden oder die Replikation im Cloud Data Fusion-Menü nicht angezeigt wird, lesen Sie die Informationen unter Upgrade zum Aktivieren der Replikation.

Oracle in Compute Engine installieren

In diesem Abschnitt (optional) erfahren Sie, wie Sie eine Beispieldatenbank einrichten. Wenn Sie bereits eine eigene Datenbank eingerichtet haben, können Sie diesen Abschnitt überspringen. Beachten Sie, dass Datastream nur bestimmte Versionen der Oracle-Datenbank unterstützt.

  1. Laden Sie ein Oracle Server-Docker-Image herunter. (Dieses Image ist eine Express-Version von Oracle 11g. Sie hat Einschränkungen bei den Funktionen. Weitere Informationen finden Sie unter Oracle-Datenbankversionen.

  2. Docker-Image in Container Registry hochladen.

  3. Stellen Sie Ihr Docker-Image auf einer neuen VM-Instanz bereit. Ändern Sie beim Erstellen der VM die Laufwerkgröße in 500 GB.

  4. HR-Beispielschema installieren.

Oracle-Server konfigurieren, um das zusätzliche Logging zu aktivieren

Führen Sie die Schritte zum Konfigurieren Ihrer Oracle-Quelldatenbank aus.

Berechtigungen für Dienstkonten erteilen

Gewähren Sie dem Cloud Data Fusion-Dienstkonto und dem Dataproc-Dienstkonto die Berechtigung zum Aufrufen der Datastream API und zum Zugreifen auf Cloud Storage.

  1. Rufen Sie in der Cloud Console die Seite „IAM“ auf.

    Zur Seite „IAM“

  2. Suchen Sie in der Berechtigungstabelle in der Spalte Hauptkonten das Cloud Data Fusion-Dienstkonto, das dem Format service-customer-project-number@gcp-sa-datafusion.iam.gserviceaccount.com entspricht.

  3. Klicken Sie rechts neben dem Dienstkonto auf Bearbeiten.

  4. Klicken Sie auf Weitere Rolle hinzufügen.

  5. Klicken Sie auf Rolle auswählen.

  6. Wählen Sie mithilfe der Suchleiste Datastream-Administrator aus.

    Configuration um.

  7. Klicken Sie auf Speichern.

  8. Prüfen Sie, ob Datastream-Administrator in der Spalte Rolle der Tabelle "Berechtigungen" angezeigt wird.

  9. Wiederholen Sie diesen Abschnitt, um Berechtigung für das dem Dataproc-Dienstkonto zu erteilen:

    1. Rufen Sie in der Cloud Console die Seite „IAM“ auf. Zur Seite „IAM“

    2. Suchen Sie in der Berechtigungstabelle in der Spalte "Hauptkonten" das Dataproc-VM-Dienstkonto, das dem Format <project-number>-compute@developer.gserviceaccount.com entspricht.

    3. Wiederholen Sie die obigen Schritte 3–8.

Weitere Informationen zu Dienstkonten und Dienstkontoschlüsseln finden Sie unter Dienstkontoschlüssel erstellen und verwalten.

VPC-Netzwerk-Peering- oder Firewallregel für Ihren Oracle-Server erstellen

Wenn Ihre Oracle-Datenbank keinen eingehenden Traffic von öffentlichen IP-Adressen zulässt, müssen Sie VPC-Peering zwischen der Datastream-VPC und der VPC einrichten, auf die Ihre Oracle-Datenbank zugreifen kann. Weitere Informationen finden Sie unter Konfiguration einer privaten Verbindung erstellen.

Wenn die Oracle-Datenbank eingehenden Traffic von öffentlichen IP-Adressen zulässt, erstellen Sie eine Firewallregel für die VM-Instanz, um eingehenden Traffic von öffentlichen Datastream-IPs zuzulassen.

Cloud Data Fusion-Replikationsjob erstellen und ausführen

  1. Klicken Sie in der Cloud Data Fusion-Web-UI rechts oben auf Hub.

  2. Klicken Sie auf das Plug-in "Oracle via Datastream Replication" und dann auf Bereitstellen.

  3. Klicken Sie im angezeigten Fenster Bereitstellen auf Fertigstellen.

Pipeline erstellen

  1. Klicken Sie in der Cloud Data Fusion-UI auf das Menü und rufen Sie die Seite Replikation auf. Klicken Sie rechts oben auf den grünen Kreis.

  2. Geben Sie auf der Seite Neuen Replikationsjob erstellen einen Namen für den Replikationsjob an. Geben Sie optional eine Beschreibung an.

  3. Klicken Sie auf "Weiter".

  4. Konfigurieren Sie die Quelle:

    1. Wählen Sie Oracle (von Datastream) als Quelle aus.

    2. Wenn der Oracle-Server eingehenden Traffic von öffentlichen Datastream-IP-Adressen zulässt, wählen Sie unter Verbindungsmethode die Option IP-Zulassungsliste aus. Wählen Sie andernfalls unter Name der privaten Verbindung die Option Private Verbindung (VPC-Peering) aus und geben Sie den Namen der VPC-Peering-Verbindung ein, die Sie im Abschnitt VPC-Peering oder Firewallregel für Ihren Oracle-Server erstellen.

    3. Geben Sie unter Host den Hostnamen des Oracle-Servers ein, aus dem gelesen werden soll.

    4. Geben Sie unter Port den Port ein, der zum Herstellen einer Verbindung zum Oracle Server verwendet werden soll: 1521.

    5. Geben Sie unter Systemidentität xe ein (der Beispieldatenbankname des Oracle-Servers).

    6. Geben Sie im Abschnitt "Anmeldedaten" Ihren Nutzernamen und Ihr Passwort für den Zugriff auf den Oracle Server ein.

    7. Lassen Sie alle anderen Attribute unverändert.

  5. Klicken Sie auf Next (Weiter).

  6. Wenn die Verbindung erfolgreich ist, wird eine Liste der Tabellen unter HR-Beispielschema angezeigt. Wählen Sie für diese Anleitung alle Tabellen und Ereignisse aus, die repliziert werden sollen, einschließlich Einfügungs-, Aktualisierungs- und Löschereignissen.

  7. Klicken Sie auf Next (Weiter).

  8. Konfigurieren Sie das Ziel:

    1. Wählen Sie das BigQuery-Ziel aus.

    2. Die Projekt-ID und der Dienstkontoschlüssel werden automatisch erkannt. Übernehmen Sie die Standardwerte unverändert.

    3. (Optional) Im Abschnitt Erweitert können Sie den Namen und den Speicherort des Staging-Buckets, das Ladeintervall, das Präfix der Staging-Tabelle und das Verhalten konfigurieren, wenn Tabellen oder Datenbanken gelöscht werden.

  9. Klicken Sie auf Next (Weiter).

  10. (Optional) Konfigurieren Sie die erweiterten Attribute. Für diese Anleitung können Sie die Standardeinstellungen verwenden.

  11. Klicken Sie auf Next (Weiter).

  12. 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. Wenn Probleme auftreten, müssen diese behoben werden, um 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 (Einfüge-, Aktualisierungs- oder Löschvorgänge) ohne Probleme aus.

  13. Klicken Sie auf Back (Zurück).

  14. Klicken Sie auf Next (Weiter).

  15. Prüfen Sie die Details des Replikationsjobs und klicken Sie dann auf Replikationsjob bereitstellen.

Job starten

Auf der Seite Replikationsjobdetails:

Klicken Sie auf Start.

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 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 vorgenommenen Änderungen nach BigQuery repliziert und der Status der Tabelle als Wird repliziert 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.

  1. Klicken Sie auf der Seite Replikation auf den gewünschten Namen des Replikationsjobs.

  2. 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 Oracle-Datenbank und den Tabellennamen übernommen werden.

  1. Öffnen Sie BigQuery in der Cloud Console.

  2. Klicken Sie im linken Bereich auf den Namen Ihres Projekts, um eine Liste der Datasets zu maximieren.

  3. Wählen Sie zuerst das Dataset xe 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.

Nachdem Sie diese Anleitung abgeschlossen haben, bereinigen Sie die in Google Cloud erstellten Ressourcen, damit sie keine kostenpflichtigen Kontingente verbrauchen. In den folgenden Abschnitten erfahren Sie, wie Sie diese Ressourcen löschen oder deaktivieren.

VM-Instanz löschen

  1. Rufen Sie in der Cloud Console die Seite „VM-Instanzen” auf:

    Zu Seite „VM-Instanzen“

  2. Klicken Sie auf das Kästchen neben der Instanz, das gelöscht werden soll.

  3. Zum Löschen der Instanz klicken Sie dann auf "Löschen".

Löschen Sie die Cloud Data Fusion-Instanz.

Folgen Sie der Anleitung zum Löschen Ihrer Cloud Data Fusion-Instanz.

Projekt löschen

Am einfachsten vermeiden Sie weitere Kosten durch Löschen des für die Anleitung erstellten Projekts.

So löschen Sie das Projekt:

  1. Wechseln Sie in der Cloud Console zur Seite Ressourcen verwalten.

    Zur Seite „Ressourcen verwalten“

  2. Wählen Sie in der Projektliste das Projekt aus, das Sie löschen möchten, und klicken Sie dann auf Löschen.
  3. Geben Sie im Dialogfeld die Projekt-ID ein und klicken Sie auf Shut down (Beenden), um das Projekt zu löschen.

Weitere Informationen