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. Diese Funktion basiert auf Datastream.

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 erstellen und ausführen
  3. 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. 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. 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.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

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

    Enable the APIs

  5. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  6. Make sure that billing is enabled for your Google Cloud project.

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

    Enable the APIs

  8. 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.

Erforderliche Rollen

Bitten Sie Ihren Administrator, Ihnen die folgenden IAM-Rollen zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Herstellen einer Verbindung zu einer Oracle-Datenbank benötigen:

  • Dataproc-Worker (roles/dataproc.worker) für das Dataproc-Dienstkonto im Projekt, das den Cluster enthält
  • Cloud Data Fusion-Runner für das Dataproc-Dienstkonto im Projekt, das den Cluster enthält
  • DataStream Admin (roles/datastream.admin) für das Cloud Data Fusion-Dienstkonto und das Dataproc-Dienstkonto

Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff verwalten.

Möglicherweise können Sie die erforderlichen Berechtigungen auch über benutzerdefinierte Rollen oder andere vordefinierte Rollen erhalten.

Optional: Oracle in der Compute Engine installieren

In diesem Abschnitt erfahren Sie, wie Sie eine Beispieldatenbank einrichten. Wenn Sie bereits eine Oracle-Datenbank installiert haben, können Sie diesen Abschnitt überspringen.

  1. Laden Sie ein Oracle Server-Docker-Image herunter.

    Informationen zu den Einschränkungen dieses Oracle Express Edition 11g-Images finden Sie unter Oracle-Datenbankversionen.

  2. Stellen Sie Ihr Docker-Image auf einer neuen VM-Instanz bereit.

  3. Ändern Sie auf der Seite Laufwerke von Compute Engine die Laufwerkgröße in 500 GB und starten Sie die VM neu.

    Zur Seite „Laufwerke“

  4. HR-Beispielschema installieren.

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-Netzwerk-Peering zwischen der Datastream-VPC und der VPC einrichten, auf die Ihre Oracle-Datenbank zugreifen kann. Weitere Informationen finden Sie unter Konfiguration für private Verbindungen 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.

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

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

Cloud Data Fusion-Replikationsjob erstellen und ausführen

Job erstellen

  1. Klicken Sie in der Cloud Data Fusion-Weboberfläche auf Replikation.

  2. Klicken Sie auf Replikationsjob erstellen.

  3. Geben Sie auf der Seite Neuen Replikationsjob erstellen einen Namen für den Replikationsjob an und 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-Netzwerk-Peering oder Firewallregel für Ihren Oracle-Server erstellen erstellt haben.

    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 für die 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 Weiter.

  6. 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 Folgendes konfigurieren:

      • Name und Speicherort des Staging-Buckets
      • Ladeintervall
      • Präfix für Staging-Tabelle
      • Verhalten beim Löschen von Tabellen oder Datenbanken
  7. Klicken Sie auf Weiter.

  8. Wenn die Verbindung erfolgreich ist, wird eine Liste der Tabellen angezeigt. Wählen Sie für diese Anleitung einige Tabellen aus.

  9. Klicken Sie auf Weiter.

  10. 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 Sie diese beheben, bevor Sie fortfahren können. Wenn bei einer der Tabellen Probleme auftreten, gehen Sie so vor:

    1. Kehren Sie zum Schritt zurück, in dem Sie Tabellen ausgewählt haben.
    2. Wählen Sie eine Tabelle oder ein Ereignis (Einfüge-, Aktualisierungs- oder Löschvorgänge) ohne Probleme aus.

    Weitere Informationen zu Datentypkonvertierungen von der Quelldatenbank in das BigQuery-Ziel finden Sie unter Datentypen für die Replikation.

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

  12. Klicken Sie auf Weiter.

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

Job starten

  1. Rufen Sie in der Cloud Data Fusion-Weboberfläche die Seite Details zum Replikationsjob auf.

  2. 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 in der Google Cloud Console die Seite BigQuery.

  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.

Bereinigen Sie nach Abschluss der Anleitung die inGoogle 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 Google Cloud Console die Seite VM-Instanzen auf.

    Zu "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. In the Google Cloud console, go to the Manage resources page.

    Go to Manage resources

  2. In the project list, select the project that you want to delete, and then click Delete.
  3. In the dialog, type the project ID, and then click Shut down to delete the project.

Nächste Schritte