Daten aus PostgreSQL in Google BigQuery replizieren
Erfahren Sie, wie Sie mit OCI GoldenGate Daten von PostgreSQL in Google BigQuery replizieren.
Bevor Sie beginnen
Um diesen Schnellstart erfolgreich abzuschließen, benötigen Sie Folgendes:
Um diesen Schnellstart erfolgreich abzuschließen, benötigen Sie Folgendes:
-
Eine PostgreSQL-Installation als Quelldatenbank (siehe Setup der Umgebung)
-
Port 5432 in der Sicherheitsliste Ihres VCN öffnen
-
Verbindung zu Google Cloud Storage erstellen.
Hinweis: Stellen Sie sicher, dass der GCS-Bucket und das BigQuery-Dataset in demselben Speicherort/in derselben Region vorhanden sind.
Umgebung eingerichtet: PostgreSQL
So richten Sie die Umgebung für diesen Schnellstart ein:
-
Führen Sie die folgenden Befehle zur Installation von PostgreSQL aus.
-
PostgreSQL-Server installieren:
sudo yum install postgresql-server -
Installieren Sie das postgresql-contrib-Modul, um diese SQL-Ausnahme zu vermeiden:
sudo yum install postgresql-contrib -
Erstellen Sie ein neues PostgreSQL-Datenbankcluster:
sudo postgresql-setup --initdb -
Aktivieren Sie postgresql.service:
sudo systemctl enable postgresql.service -
Starten Sie postgresql.service:
sudo systemctl start postgresql.service
-
-
Standardmäßig sind in PostgreSQL nur lokale Verbindungen zulässig. Remotekonnektivität zu PostgreSQL zulassen.
-
Bereiten Sie unter
/var/lib/pgsql/data/postgresql.confdie Datenbank für die Replikation vor. -
Suchen und entfernen Sie die Kommentarzeichen
listen_addresses = 'localhost', und ändern Sie localhost in ein Sternchen (`):listen_addresses = '*' -
Legen Sie die folgenden Parameter wie folgt fest:
-
wal_level = logical -
max_replication_slots = 1 -
max_wal_senders = 1 -
track_commit_timestamp = on
Hinweis:
Konfigurieren Sie
/var/lib/pgsql/data/pg_hba.conf, um sicherzustellen, dass die Clientauthentifizierung so festgelegt ist, dass Verbindungen von einem Oracle GoldenGate-Host zulässig sind. Beispiel: Fügen Sie Folgendes hinzu:#Allow connections from remote hosts host all all 0.0.0.0/0 md5Weitere Informationen finden Sie unter Die Datei pg_hba.conf.
- PostgreSQL-Server neu starten:
sudo systemctl restart postgresql.service- Wenn Sie Oracle Cloud Compute zum Hosten von PostgreSQL verwenden, öffnen Sie Port 5432:
sudo firewall-cmd --permanent --add-port=5432/tcp sudo firewall-cmd --reload sudo firewall-cmd --list-all -
-
Öffnen Sie Port 5432 in der Sicherheitsliste Ihres VCN.
-
Verbindung zu PostgreSQL herstellen.
> sudo su - postgres > psqlHinweis: Alternativ können Sie
sudo su - postgres psqleingeben, wenn das obige Beispiel nicht funktioniert. -
PostgreSQL einrichten.
-
Laden Sie seedSRCOCIGGLL_PostgreSQL.sql herunter, und führen Sie es aus, um die Datenbank einzurichten und die Beispieldaten zu laden.
-
Führen Sie die folgenden Befehle aus, um den Benutzer einzurichten (stellen Sie sicher, dass Sie
<password>durch ein tatsächliches Kennwort ersetzen):
create user ggadmin with password '<password>'; alter user ggadmin with SUPERUSER; GRANT ALL PRIVILEGES ON DATABASE ociggll TO ggadmin; -
-
Aufgabe 1: OCI GoldenGate-Ressourcen erstellen
-
Erstellen Sie ein Deployment für die PostgreSQL-Quelldatenbank.
-
Erstellen Sie ein Big Data Deployment für das Google BigQuery-Ziel.
-
Erstellen Sie eine Verbindung zum Google BigQuery-Ziel.
-
Erstellen Sie eine Verbindung zur PostgreSQL-Quelldatenbank.
-
Stellen Sie unter Typ sicher, dass Sie "PostgreSQL-Server" auswählen.
-
Geben Sie unter Datenbankname
ociggllein. -
Geben Sie unter Host die öffentliche IP der Compute-Instanz ein, auf der PostgreSQL ausgeführt wird.
-
Geben Sie unter Port die Nummer
5432ein. -
Geben Sie unter Username
ggadminein. -
Geben Sie unter Kennwort ein Kennwort ein.
-
Wählen Sie unter Sicherheitsprotokoll die Option Nur aus.
-
-
Erstellen Sie eine Verbindung zu GoldenGate. Weisen Sie diese Verbindung dem PostgreSQL-Quell-Deployment zu.
-
Weisen sie die Quellverbindung dem PostgreSQL-Quell-Deployment zu.
-
Weisen Sie die Zielverbindung dem Big Data-Ziel-Deployment zu.
Aufgabe 2: Zusätzliches Logging aktivieren
So aktivieren Sie zusätzliches Logging:
-
Starten Sie die PostgreSQL GoldenGate-Deployment-Konsole:
-
Wählen Sie auf der Seite "Deployments" das PostgreSQL-Deployment aus, um die zugehörigen Details anzuzeigen.
-
Wählen Sie auf der Detailseite des PostgreSQL-Deployments die Option Konsole starten aus.
-
Geben Sie auf der Anmeldeseite der Deployment-Konsole die GoldenGate-Admin-Zugangsdaten ein, die in Aufgabe 1, Schritt 1 angegeben sind.
Hinweis: Eine Anmeldung ist erforderlich, wenn IAM beim Erstellen eines Deployments nicht als Zugangsdatenspeicher ausgewählt wurde.
-
-
Wählen Sie in der Deployment-Konsole in der linken Navigationsleiste die Option DB-Verbindungen, dann die PostgreSQL-Quelldatenbank und dann Trandata aus.
-
Wählen Sie auf der Seite "TRANDATA" neben "TRANDATA-Informationen" die Option TRANDATA hinzufügen (Plussymbol).
-
Geben Sie im Bereich "Trandata" unter Schemaname
src_ociggllein, und wählen Sie Weiterleiten aus.Hinweis: Mit dem Suchfeld können Sie nach
src_ociggllsuchen und prüfen, ob die Tabellen hinzugefügt wurden.
Aufgabe 3: Extract erstellen
So fügen Sie den Change Data Capture Extract hinzu:
-
Wählen Sie in der linken Navigationsleiste die Option Extracts aus.
-
Wählen Sie auf der Seite "Extracts" die Option Extract hinzufügen (Plussymbol), und füllen Sie die Felder wie folgt aus:
-
Auf der Seite "Daten extrahieren":
-
Wählen Sie unter Extract-Typ die Option Change Data Capture Extract aus.
-
Geben Sie unter Prozessname einen Namen wie
ECDCfür den Extract an. -
Wählen Sie Weiter.
-
-
Gehen Sie auf der Seite "Exportoptionen" wie folgt vor:
-
Wählen Sie für Quellzugangsdaten in der Dropdown-Liste Domain die Option Oracle GoldenGate aus
-
Wählen Sie in der Dropdown-Liste Alias die PostgreSQL-Quelldatenbank aus.
-
Geben Sie unter "Trailname extrahieren" einen aus zwei Zeichen stehenden Trailnamen wie
C1ein. -
Wählen Sie Weiter.
-
-
Ersetzen Sie auf der Seite "Parameter extrahieren"
MAP *.*, TARGET *.*;durch Folgendes:TABLE SRC_OCIGGLL.*;
-
-
Wählen Sie Erstellen und ausführen aus.
Sie kehren zur Seite "Exporte" zurück, auf der Sie den Beginn der Exporte beobachten können.
Aufgabe 4: Verteilungspfad für Change Data Capture erstellen
Gehen Sie folgendermaßen vor, um einen Verteilungspfad für Change Data Capture zu erstellen:
-
Wählen Sie in der Oracle Cloud-Konsole auf der Seite "Deployments" das Ziel-Big Data-Deployment aus.
-
Wählen Sie Verteilungspfad hinzufügen aus.
-
Füllen Sie das Formular "Pfad hinzufügen" wie folgt aus:
-
Gehen Sie auf der Seite "Pfadinformationen" wie folgt vor:
-
Geben Sie unter Pfadname einen Namen ein.
-
Wählen Sie Weiter.
-
-
Gehen Sie auf der Seite {\b Source Options} wie folgt vor:
-
Wählen Sie unter Quellextrakt den Change Data Capture Extract (
ECDC) aus. -
Wählen Sie unter Trailname die Traildatei für den Change Data Capture-Extrakt (
C1). -
Wählen Sie Weiter.
-
-
Gehen Sie auf der Seite "Zieloptionen" wie folgt vor:
-
Wählen Sie unter Ziel die Option wss aus.
-
Geben Sie unter Zielhost die Ziel-Deployment-Konsolen-URL ein (Sie finden diese auf der Seite mit den Deployment-Details ohne https:// oder abschließende Schrägstriche).
-
Geben Sie unter Portnummer
443ein. -
Geben Sie unter Trailname
C1ein. -
Wählen Sie unter Zielauthentifizierungsmethode die Option UserID-Alias.
-
Geben Sie unter Domain den Domainnamen ein.
-
Geben Sie unter Alias den Alias ein.
-
-
Wählen Sie Pfad erstellen und ausführen aus.
-
Aufgabe 5: Replicat hinzufügen
-
Wählen Sie im Navigationsmenü der Big Data-Deployment-Konsole für das Ziel die Option Replikate, Replikat hinzufügen (Plussymbol) aus.
-
Wählen Sie auf der Seite Replikate die Option Replicat hinzufügen (Plussymbol), und füllen Sie das Formular Replicat hinzufügen wie folgt aus:
-
Auf der Seite "Replicat-Informationen":
-
Wählen Sie unter Replikattyp die Option Parallel oder Koordiniertes Replicat aus.
-
Geben Sie unter Prozessname einen Namen wie
RCDCein. -
Wählen Sie Weiter.
-
-
Gehen Sie auf der Seite {\b Replicat Options} wie folgt vor:
-
Geben Sie unter Replikat-Trailname den Namen des Trails aus Aufgabe 3 (
C1) ein. -
Wählen Sie unter Zielzugangsdaten die Domain und Alias für die Google Big Query-Verbindung aus.
-
Wählen Sie unter Verfügbare Staging Areas in der Dropdown-Liste die Option "Google Cloud Storage" aus.
-
Wählen Sie unter über Staging-Alias in der Dropdown-Liste die Google Cloud Storage-Verbindung aus.
-
-
Fügen Sie auf der Seite "Parameterdatei" die folgende Zuordnung hinzu, und wählen Sie Weiter aus:
MAP *.*, TARGET *.*; -
Konfigurieren Sie auf der Seite "Properties File" die erforderlichen Eigenschaften nach Bedarf. Suchen Sie nach denjenigen, die als
#TODOmarkiert sind, und wählen Sie Weiter aus.Beispiele für eventuell zu ändernde Eigenschaften:
gg.eventhandler.gcs.bucketMappingTemplate: Geben Sie den Namen des Buckets an, der als Staging-Speicher verwendet wird
-
-
Wählen Sie Erstellen und ausführen aus.
Sie kehren zur Seite "Replicats" zurück, auf der Sie die Replicat-Details prüfen können.
Aufgabe 6: Change Data Capture prüfen
Führen Sie Updates an der PostgreSQL-Quelldatenbank aus, um die Replikation auf Google BigQuery zu prüfen.
-
Führen Sie das folgende Skript aus, um Einfügungen in die PostgreSQL-Datenbank auszuführen:
Insert into src_ociggll.src_city (CITY_ID,CITY,REGION_ID,POPULATION) values (1000,'Houston',20,743113); Insert into src_ociggll.src_city (CITY_ID,CITY,REGION_ID,POPULATION) values (1001,'Dallas',20,822416); Insert into src_ociggll.src_city (CITY_ID,CITY,REGION_ID,POPULATION) values (1002,'San Francisco',21,157574); Insert into src_ociggll.src_city (CITY_ID,CITY,REGION_ID,POPULATION) values (1003,'Los Angeles',21,743878); Insert into src_ociggll.src_city (CITY_ID,CITY,REGION_ID,POPULATION) values (1004,'San Diego',21,840689); Insert into src_ociggll.src_city (CITY_ID,CITY,REGION_ID,POPULATION) values (1005,'Chicago',23,616472); Insert into src_ociggll.src_city (CITY_ID,CITY,REGION_ID,POPULATION) values (1006,'Memphis',23,580075); Insert into src_ociggll.src_city (CITY_ID,CITY,REGION_ID,POPULATION) values (1007,'New York City',22,124434); Insert into src_ociggll.src_city (CITY_ID,CITY,REGION_ID,POPULATION) values (1008,'Boston',22,275581); Insert into src_ociggll.src_city (CITY_ID,CITY,REGION_ID,POPULATION) values (1009,'Washington D.C.',22,688002); -
Wählen Sie in der Quell-PostgreSQL-Deployment-Konsole den Extract-Namen (
ECDC) und dann Statistics aus. Stellen Sie sicher, dass src_ociggll.src_city 10 Insert-Vorgänge enthält.Hinweis: Wenn der Extract keine Einfügevorgänge erfasst hat, starten Sie den Extract
ECDCneu. -
Wählen Sie in der Big Data-Ziel-Deployment-Konsole den Replicat-Namen aus, zeigen Sie die zugehörigen Details an, und prüfen Sie Statistiken, um die Anzahl der Einfügungen zu prüfen.