Hinweis:

Daten mit Oracle GoldenGate und Oracle GoldenGate for Big Data mit verschiedenen Zielen streamen

Einführung

Oracle GoldenGate ist ein vollständig verwalteter Service, mit dem Data Engineers Daten in Echtzeit und in großem Umfang von einem oder mehreren Datenmanagementsystemen in Oracle Cloud-Datenbanken verschieben können. Sie können Datenreplikationsaufgaben in einer einzigen Schnittstelle entwerfen, ausführen, orchestrieren und überwachen, ohne Compute-Umgebungen zuweisen oder verwalten zu müssen.

Oracle GoldenGate for Big Data streamt Transaktionsdaten in Echtzeit in Big Data- und Cloud-Systeme, ohne die Performance der Quellsysteme zu beeinträchtigen. Es optimiert die Echtzeit-Datenbereitstellung in die gängigsten Big Data-Lösungen, einschließlich Apache Hadoop, Apache HBase, Apache Hive, Confluent Kafka, NoSQL-Datenbanken, Elasticsearch, JDBC, Oracle Cloud, Amazon Web Services, Microsoft Azure Cloud, Google Cloud Platform und Data Warehouses, um verbesserte Einblicke und zeitnahe Maßnahmen zu ermöglichen.

Der Oracle Cloud Infrastructure-(OCI-)Streaming-Service stellt eine vollständig verwaltete, skalierbare und dauerhafte Lösung zur Aufnahme und Nutzung von Datenstreams mit hohem Volumen in Echtzeit bereit. Verwenden Sie OCI Streaming für jeden Anwendungsfall, in dem kontinuierlich und sequenziell Daten in einem Publish-Subscribe-Messagingmodell erzeugt und verarbeitet werden.

In diesem Tutorial erfahren Sie, wie Sie Daten aus Oracle Autonomous Database in zwei verschiedene Ziele streamen, d.h. Oracle Autonomous Database und Oracle Streams-Thema.

Zielsetzung

Architektur

Architektur

Wichtig: Diese Beispielarchitektur dient nur zu Lernzwecken und zur Vereinfachung dieser Architektur verwenden wir ein PUBLIC-Subnetz. Das bedeutet, dass dieses Subnetz nicht für Produktionsumgebungen oder echte Datenverarbeitung verwendet werden darf.

Für Produktionsumgebungen MÜSSEN Sie PRIVATE-Subnetze verwenden und alle hier beschriebenen Sicherheits-Best Practices anwenden: Oracle-Sicherheits-Best Practices)

Voraussetzungen

Aufgabe 1: Neues Compartment erstellen

Aufgabe 2: Neue Oracle Autonomous Database mit dem Namen sourceDB erstellen

  1. Klicken Sie auf das Navigationsmenü oben links, wählen Sie Oracle Database aus, und klicken Sie auf Autonomous Database.

  2. Wählen Sie das im vorherigen Schritt erstellte Compartment streaming aus, und klicken Sie auf Autonomous Database erstellen.

    T2_1

  3. Füllen Sie die Informationen wie in den folgenden Bildern dargestellt aus.

    T2_2

    T2_3

    T2_4

Hinweis: Notieren Sie sich das von Ihnen erstellte ADMIN-Kennwort.

Aufgabe 3: Neue Oracle Autonomous Database mit dem Namen targetDB erstellen

  1. Klicken Sie auf das Navigationsmenü oben links, wählen Sie Oracle Database aus, und klicken Sie auf Autonomous Database.

  2. Wählen Sie das Compartment aus, das im vorherigen Schritt für das Streaming erstellt wurde, und klicken Sie auf Autonomous Database erstellen.

    T2_1

  3. Füllen Sie die Informationen wie in den folgenden Bildern dargestellt aus.

    T3_2

    T2_3

    T2_4

Hinweis: Notieren Sie sich das von Ihnen erstellte ADMIN-Kennwort.

Aufgabe 4: Neues Schema und neue Einstellungen für sourceDB erstellen

  1. Gehen Sie zur Homepage von sourceDB, und klicken Sie auf Database Actions, um SQL-Befehle in der Datenbank auszuführen und Daten zu laden.

    T4_1

  2. Laden Sie die Datei findata_schema.SQL herunter, kopieren Sie den Inhalt in das SQL-Ausführungsfenster, und führen Sie ihn als SCRIPT aus.

    Hinweis: Stellen Sie sicher, dass Sie ein Passwort für den FINDATA-Benutzer festlegen, und notieren Sie sich für spätere Schritte in diesem Tutorial.

    T4_1

  3. Laden Sie die Datei enable_gg.SQL herunter, kopieren Sie den Inhalt in das SQL-Ausführungsfenster, und führen Sie ihn als SCRIPT aus.

    Hinweis: Stellen Sie sicher, dass Sie ein Kennwort für den GGADMIN-Benutzer festlegen, und notieren Sie sich weitere Schritte in diesem Tutorial.

    T4_1

Aufgabe 5: Daten aus der Datei banks_export.sql in sourceDB laden

  1. Gehen Sie zur Homepage von sourceDB, und klicken Sie auf Database Actions, um SQL-Befehle in der Datenbank auszuführen und Daten zu laden.

    T4_1

  2. Laden Sie die Datei banks_export.SQL herunter, kopieren Sie den Inhalt in das SQL-Ausführungsfenster, und führen Sie ihn als SCRIPT aus.

    T5_1

  3. Führen Sie einen einfachen COUNT für die Tabelle aus, und prüfen Sie die Anzahl der eingefügten Zeilen.

    T5_1

Aufgabe 6: Neues Schema für targetDB erstellen und Daten laden

Aufgabe 7: Transaktionstabelle mit dem Namen OPERACOES auf sourceDB erstellen

  1. Erstellen Sie nur in sourceDB eine neue Tabelle mit dem Namen FINDATA.OPERACOES. Diese Tabelle stellt die Quelldaten dar, die Oracle GoldenGate for Big Data erfasst und im OCI Streaming-Thema posten wird.

  2. Gehen Sie zur Homepage von sourceDB, und klicken Sie auf Database Actions, um SQL-Befehle in der Datenbank auszuführen und Daten zu laden.

    T4_1

  3. Laden Sie die Datei operacoes_table.SQL herunter, kopieren Sie den Inhalt in das SQL-Ausführungsfenster, und führen Sie ihn als SCRIPT aus.

T7_1

Dies ist eine leere Tabelle, die die Zufallsdaten zum Starten von Ereignissen auf Oracle GoldenGate erhält.

Aufgabe 8: OCI Streamingpool erstellen

  1. Klicken Sie im oberen linken Navigationsmenü auf Analysen und KI, klicken Sie auf Streaming, und wählen Sie Streamingpool aus.

  2. Klicken Sie auf Streampool erstellen, und geben Sie die folgenden Informationen ein.

    T8_1

    T8_1

  3. Klicken Sie auf Erstellen.

  4. Klicken Sie auf Kafka-Verbindungseinstellungen, und notieren Sie sich die Informationen zu den Verbindungszeichenfolgen.

    T8_1

Aufgabe 9: AUTH TOKEN für den Zugriff auf den OCI-Streamingpool generieren

Sie können auf OCI Streaming (Kafka-API) und andere Ressourcen in Oracle Cloud mit einem Authentifizierungstoken zugreifen, das Ihrem Benutzer in Oracle Cloud Infrastructure Identity and Access Management (OCI IAM) zugeordnet ist. In den Kafka-Verbindungseinstellungen enthalten die SASL-Verbindungszeichenfolgen einen Parameter namens "Password" und einen AUTH_TOKEN-Wert, wie in der vorherigen Aufgabe beschrieben. Um den Zugriff auf OCI Streaming zu aktivieren, gehen Sie zur OCI-Konsole, und erstellen Sie ein AUTH TOKEN.

  1. Klicken Sie auf das Navigationsmenü oben links, wählen Sie Identität und Sicherheit aus, und wählen Sie Identität, Domains, Standarddomain, Benutzer aus.

  2. Wählen Sie denselben Benutzer aus, mit dem Sie frühere Ressourcen wie Oracle Autonomous Database und OCI-Streampool erstellt haben.

T9_1

T9_1

Hinweis: Notieren Sie sich die AUTH TOKEN. Sie benötigen sie für den nächsten Schritt.

Aufgabe 10: Oracle GoldenGate-Verbindungen erstellen

Um eine Verbindung zur Quell- und Zieldatenbank herzustellen, benötigt Oracle GoldenGate das richtige Verbindungssetup.

  1. Klicken Sie auf das Navigationsmenü oben links, wählen Sie Oracle Database aus, und klicken Sie auf GoldenGate.

  2. Wählen Sie im linken Menü die Option Verbindungen, und klicken Sie auf Verbindung erstellen.

  3. Erstellen Sie die Verbindung für sourceDB.

    T9_1

    T9_1

  4. Wiederholen Sie den Prozess, und erstellen Sie die Verbindung für targetDB.

    T9_1

    T9_1

  5. Erstellen Sie die Verbindung für den OCI Streaming-Pool DefaultPool.

    T9_1

    T9_1

Zu diesem Zeitpunkt sollten Sie über die folgenden Verbindungen verfügen:

T10_1

Aufgabe 11: Oracle GoldenGate-Deployment erstellen - Typ: ORACLE

  1. Klicken Sie auf das Navigationsmenü oben links, wählen Sie Oracle Database aus, und klicken Sie auf GoldenGate.

  2. Wählen Sie im linken Menü die Option Deployments aus, und klicken Sie auf Deployment erstellen.

    T10_1

    T10_1

Hinweis: Speichern Sie Ihr oggadmin-Kennwort.

Aufgabe 12: Oracle GoldenGate-Deployment erstellen - Typ: BIGDATA

  1. Klicken Sie auf das Navigationsmenü oben links, wählen Sie Oracle Database aus, und klicken Sie auf GoldenGate.

  2. Wählen Sie im linken Menü die Option Deployments aus, und klicken Sie auf Deployment erstellen.

    T12_1

    T12_1

    T12_1

  3. Nachdem die Deployments erstellt und aktiv wurden, fahren Sie mit dem nächsten Schritt fort.

    T12_1

Aufgabe 13: Verbindung zwischen Oracle GoldenGate-Deployments erstellen

Damit Oracle GoldenGate mit Oracle GoldenGate for Big Data kommunizieren kann, müssen wir die Verbindung erstellen.

  1. Klicken Sie auf das Navigationsmenü oben links, wählen Sie Oracle Database aus, und klicken Sie auf GoldenGate.

  2. Wählen Sie im linken Menü die Option Verbindungen, und klicken Sie auf Verbindung erstellen.

    T13_1

    T13_1

Ihre Verbindungen sollten wie folgt aussehen:

T13_1

Aufgabe 14: Verbindungen zum Oracle GoldenGate-Deployment hinzufügen - GGForOracle

  1. Wählen Sie das Deployment GGForOracle aus, klicken Sie im linken Menü auf Zugewiesene Verbindungen, und klicken Sie dann auf Verbindung zuweisen.

    T14_1

  2. Fügen Sie die Verbindung für sourceDB hinzu.

    T14_1

  3. Fügen Sie die Verbindung für targetDB hinzu.

    T14_1

  4. Fügen Sie die Verbindung für GGOracletoGGBigData hinzu.

    T14_1

Sie benötigen die folgenden Verbindungen für das Deployment GGForOracle:

T14_1

Aufgabe 15: Verbindungen zum Oracle GoldenGate-Deployment hinzufügen - GGforBigData

  1. Wählen Sie das Deployment GGforBigData aus, klicken Sie im linken Menü auf Zugewiesene Verbindungen, und klicken Sie dann auf Verbindung zuweisen.

    T15_1

    T15_1

Sie benötigen die folgenden Verbindungen für das Deployment GGforBigData:

T15_1

Aufgabe 16: Oracle GoldenGate für GGforOracle einrichten

  1. Wählen Sie das Deployment GGForOracle aus, und klicken Sie auf Konsole starten.

  2. Geben Sie die Zugangsdaten oggadmin/yourpassword (das Kennwort, das Sie bei der Erstellung des Deployments erstellt haben) ein.

    T16_1

  3. Klicken Sie auf das Navigationsmenü, wählen Sie Konfiguration aus, und klicken Sie dann auf +, um neue Zugangsdaten hinzuzufügen.

    T16_1

  4. Fügen Sie die Zugangsdaten für das Deployment GGforBigData hinzu.

    Hinweis: Verwenden Sie den oggadmin, den Sie bei der Deployment-Erstellung eingerichtet haben.

    T16_1

  5. Klicken Sie auf sourceDB, um eine Verbindung herzustellen, und klicken Sie dann auf + in TRANDATA, um die erforderlichen Tabellen für die Replikation hinzuzufügen.

    T16_1

  6. Fügen Sie einen neuen Datensatz für die Tabelle FINDATA.BANKS hinzu, und klicken Sie auf Weiterleiten.

    T16_1

  7. Fügen Sie einen neuen Datensatz für die Tabelle FINDATA.OPERACOES hinzu, und klicken Sie auf Weiterleiten.

    T16_1

  8. Um zu prüfen, ob die Tabellen hinzugefügt werden, klicken Sie auf den Filter für FINDATA.*.

    T16_1

  9. Klicken Sie auf targetDB, um eine Verbindung herzustellen, und klicken Sie dann auf + in CHECKPOINT.

    T16_1

    T16_1

  10. Geben Sie FINDATA.CHECKTABLE ein, und klicken Sie auf Weiterleiten.

    T16_1

  11. Klicken Sie jetzt auf die Option Überblick im linken Menü, um den neuen Extrakt aufzunehmen.

    T16_1

    T16_1

    T16_1

    T16_1

    • Folgende Parameter einschließen:

      EXTRACT EXT
      USERIDALIAS sourceDB DOMAIN OracleGoldenGate
      EXTTRAIL E1
      table FINDATA.operacoes;
      table FINDATA.banks;
      
      
  12. Klicken Sie auf Aktionen, Starten, um die Extraktion zu starten.

    T16_1

  13. Erstellen Sie jetzt ein neues Replikat, um die Replikation auf targetDB anzuwenden.

    T16_1

    T16_1

    T16_1

    • Folgende Parameter einschließen:

      REPLICAT REP
      USERIDALIAS targetDB DOMAIN OracleGoldenGate
      MAP FINDATA.BANKS, TARGET FINDATA.BANKS;
      

    Hinweis: Hier wird nur die Tabelle FINDATA.BANKS repliziert. Der Grund dafür ist, dass wir sie in targetDB replizieren. Die andere Tabelle FINDATA.OPERACOES wird später in diesem Tutorial auf das OCI Streaming-Thema repliziert.

  14. Klicken Sie auf Aktion, Starten, um das Replikat zu starten.

    T16_1

    T16_1

  15. Prüfen Sie, ob die Replikation für die Tabelle FINDATA.BANKS funktioniert: Gehen Sie zur Seite "Datenbankaktionen" für sourceDB, und fügen Sie einen neuen Datensatz ein.

    INSERT INTO FINDATA.BANKS VALUES (999, 999, 'XXXXXX','TEST GOLDENGATE','TESTGG');
    COMMIT;
    

    T16_1

  16. Öffnen Sie die Seite "Datenbankaktionen" für targetDB, und führen Sie die folgende Abfrage aus, um zu prüfen, ob der Datensatz erstellt wurde.

     select * from FINDATA.BANKS WHERE ID_SEQ = 999;
    
    

    T16_1

  17. Klicken Sie auf die Registerkarte Verteilungsservice, und fügen Sie einen neuen Pfad hinzu, um Daten an GGforBigData zu senden.

    T16_1

    T16_1

    T16_1

  18. Klicken Sie auf Aktion und Starten, um die Serviceverteilung zu starten.

    T16_1

    T16_1

Aufgabe 17: Oracle GoldenGate for Big Data einrichten - GGforBigData

  1. Wählen Sie das Deployment GGforBigData aus, und klicken Sie auf Konsole starten.

  2. Geben Sie die Zugangsdaten oggadmin/yourpassword (das Kennwort, das Sie bei der Erstellung des Deployments erstellt haben) ein.

    T17_1

  3. Klicken Sie auf die Registerkarte Empfangsservice, und prüfen Sie, ob der Service bereits funktioniert. Sie sollte wie folgt aussehen, da wir bereits alle erforderlichen Einstellungen für die Verbindung zwischen beiden Oracle GoldenGate-Deployments vorgenommen haben.

    T17_2

  4. Jetzt müssen wir REPLICAT einrichten, um die Daten im OCI Streaming-Thema zu veröffentlichen.

  5. Klicken Sie auf die Registerkarte Administration Service.

    T17_1

    T17_1

    T17_1

    • Folgende Parameter einschließen:

       REPLICAT STRM
       TARGETDB LIBFILE libggjava.so SET property=/u02/Deployment/etc/conf/ogg/STRM.properties
       MAP FINDATA.operacoes, TARGET FINDATA.operacoes , THREADRANGE(1-5);
      
      

      T17_1

    • Fügen Sie einfach ${tableName} in dieser Zeile hinzu, und verwenden Sie alle angegebenen Standardwerte.

      T17_1

  6. Klicken Sie auf Aktion, Starten, um das Replikat zu starten.

    T17_1

    • Prüfen Sie, ob der Status grün ist:

      T17_1

Aufgabe 18: Replikation zum OCI Streaming-Thema prüfen

  1. Gehen Sie zur Seite mit den Datenbankaktionen für sourceDB, und fügen Sie einige Zeilen in die Tabelle FINDATA.OPERACOES ein.

    • Mit dem Skript load_random_data.sql können Sie Zufallsdaten in die Tabelle FINDATA.OPERACOES einfügen.

    • Dieses Skript fügt 1.000 Zeilen in FINDATA.OPERACOES hinzu und reicht aus, um zu prüfen, ob die Replikation wie erwartet funktioniert.

      T17_1

  2. Prüfen Sie, ob ein Datensatz in FINDATA.OPERACOES vorhanden ist, indem Sie den folgenden SQL-Befehl ausführen.

    SELECT COUNT(*) FROM FINDATA.OPERACOES;
    

    T17_1

  3. Klicken Sie im oberen linken Navigationsmenü auf Analysen und KI, klicken Sie auf Streaming, und wählen Sie im linken Menü die Option Stream aus.

  4. Prüfen Sie, ob eine neue TOPIC automatisch von Oracle GoldenGate for Big Data erstellt wird.

    T17_1

  5. Versuchen Sie, einige Nachrichten zu konsumieren, und prüfen Sie, ob sie im Thema verfügbar sind, indem Sie auf Nachrichten laden klicken.

    T17_1

Wichtiger Hinweis: Nachrichten laden funktioniert nur für Nachrichten, die im letzten MINUTE konsumiert wurden. Das bedeutet, dass Sie nach der Ausführung des Skripts LOAD_RANDOM_DATA.SQL mehr Zeit in Anspruch nehmen, werden keine Ergebnisse angezeigt.

Um die Ergebnisse anzuzeigen, gehen Sie zur Datenbank, und führen Sie das Skript LOAD_RANDOM_DATA.SQL erneut aus. Gehen Sie dann zu Nachrichten laden zurück, und Ihre Nachrichten werden angezeigt.

Bestätigungen

Weitere Lernressourcen

Sehen Sie sich andere Übungen zu docs.oracle.com/learn an, oder greifen Sie auf weitere kostenlose Lerninhalte im Oracle Learning YouTube-Kanal zu. Besuchen Sie außerdem die Website education.oracle.com/learning-explorer, um Oracle Learning Explorer zu werden.

Produktdokumentation finden Sie im Oracle Help Center.