arrow_back

Datastream: PostgreSQL-Replikation in BigQuery

Anmelden Teilnehmen
Zugriff auf über 700 Labs und Kurse nutzen

Datastream: PostgreSQL-Replikation in BigQuery

Lab 1 Stunde universal_currency_alt 1 Guthabenpunkt show_chart Einsteiger
info Dieses Lab kann KI-Tools enthalten, die den Lernprozess unterstützen.
Zugriff auf über 700 Labs und Kurse nutzen

GSP1052

Logo: Google Cloud-Labs zum selbstbestimmten Lernen

Übersicht

Im heutigen Wettbewerbsumfeld müssen Unternehmen schnell und einfach Entscheidungen auf der Grundlage von Echtzeitdaten treffen können. Datastream für BigQuery bietet eine nahtlose Replikation aus operativen Datenbankquellen wie AlloyDB, MySQL, PostgreSQL und Oracle direkt in BigQuery, das serverlose Data Warehouse von Google Cloud. Mit der serverlosen, automatisch skalierten Architektur ermöglicht Ihnen Datastream das einfache Einrichten einer ELT-Pipeline (Extract, Load, Transform) für die Datenreplikation mit niedriger Latenz. Somit lassen sich Informationen in Echtzeit ableiten.

In diesem Lab stellen Sie eine Cloud SQL for PostgreSQL-Datenbank bereit und importieren ein Beispieldataset über die gcloud-Befehlszeile. In der Benutzeroberfläche erstellen und starten Sie anschließend einen Datastream-Stream und replizieren die Daten in BigQuery.

Es ist zwar grundsätzlich möglich, Befehle einfach aus dem Lab herauszukopieren und an der entsprechenden Stelle einzufügen. Wir empfehlen jedoch, die Befehle selbst eingeben, damit Sie die wichtigsten Konzepte schneller erlernen.

Aufgaben

  • Cloud SQL for PostgreSQL-Instanz mit der Google Cloud Console vorbereiten
  • Daten in die Cloud SQL-Instanz importieren
  • Datastream-Verbindungsprofil für die PostgreSQL-Datenbank erstellen
  • Datastream-Verbindungsprofil für das BigQuery-Ziel erstellen
  • Datastream-Stream erstellen und Replikation starten
  • Prüfen, ob die vorhandenen Daten und Änderungen korrekt in BigQuery repliziert werden

Voraussetzungen

  • Vertrautheit mit Standard-Linux-Umgebungen
  • Kenntnisse der Konzepte von Change Data Capture (CDC)

Einrichtung und Anforderungen

Vor dem Klick auf „Start Lab“ (Lab starten)

Lesen Sie diese Anleitung. Labs sind zeitlich begrenzt und können nicht pausiert werden. Der Timer beginnt zu laufen, wenn Sie auf Lab starten klicken, und zeigt Ihnen, wie lange Google Cloud-Ressourcen für das Lab verfügbar sind.

In diesem praxisorientierten Lab können Sie die Lab-Aktivitäten in einer echten Cloud-Umgebung durchführen – nicht in einer Simulations- oder Demo-Umgebung. Dazu erhalten Sie neue, temporäre Anmeldedaten, mit denen Sie für die Dauer des Labs auf Google Cloud zugreifen können.

Für dieses Lab benötigen Sie Folgendes:

  • Einen Standardbrowser (empfohlen wird Chrome)
Hinweis: Nutzen Sie den privaten oder Inkognitomodus (empfohlen), um dieses Lab durchzuführen. So wird verhindert, dass es zu Konflikten zwischen Ihrem persönlichen Konto und dem Teilnehmerkonto kommt und zusätzliche Gebühren für Ihr persönliches Konto erhoben werden.
  • Zeit für die Durchführung des Labs – denken Sie daran, dass Sie ein begonnenes Lab nicht unterbrechen können.
Hinweis: Verwenden Sie für dieses Lab nur das Teilnehmerkonto. Wenn Sie ein anderes Google Cloud-Konto verwenden, fallen dafür möglicherweise Kosten an.

Lab starten und bei der Google Cloud Console anmelden

  1. Klicken Sie auf Lab starten. Wenn Sie für das Lab bezahlen müssen, wird ein Dialogfeld geöffnet, in dem Sie Ihre Zahlungsmethode auswählen können. Auf der linken Seite befindet sich der Bereich „Details zum Lab“ mit diesen Informationen:

    • Schaltfläche „Google Cloud Console öffnen“
    • Restzeit
    • Temporäre Anmeldedaten für das Lab
    • Ggf. weitere Informationen für dieses Lab
  2. Klicken Sie auf Google Cloud Console öffnen (oder klicken Sie mit der rechten Maustaste und wählen Sie Link in Inkognitofenster öffnen aus, wenn Sie Chrome verwenden).

    Im Lab werden Ressourcen aktiviert. Anschließend wird ein weiterer Tab mit der Seite „Anmelden“ geöffnet.

    Tipp: Ordnen Sie die Tabs nebeneinander in separaten Fenstern an.

    Hinweis: Wird das Dialogfeld Konto auswählen angezeigt, klicken Sie auf Anderes Konto verwenden.
  3. Kopieren Sie bei Bedarf den folgenden Nutzernamen und fügen Sie ihn in das Dialogfeld Anmelden ein.

    {{{user_0.username | "Username"}}}

    Sie finden den Nutzernamen auch im Bereich „Details zum Lab“.

  4. Klicken Sie auf Weiter.

  5. Kopieren Sie das folgende Passwort und fügen Sie es in das Dialogfeld Willkommen ein.

    {{{user_0.password | "Password"}}}

    Sie finden das Passwort auch im Bereich „Details zum Lab“.

  6. Klicken Sie auf Weiter.

    Wichtig: Sie müssen die für das Lab bereitgestellten Anmeldedaten verwenden. Nutzen Sie nicht die Anmeldedaten Ihres Google Cloud-Kontos. Hinweis: Wenn Sie Ihr eigenes Google Cloud-Konto für dieses Lab nutzen, können zusätzliche Kosten anfallen.
  7. Klicken Sie sich durch die nachfolgenden Seiten:

    • Akzeptieren Sie die Nutzungsbedingungen.
    • Fügen Sie keine Wiederherstellungsoptionen oder Zwei-Faktor-Authentifizierung hinzu (da dies nur ein temporäres Konto ist).
    • Melden Sie sich nicht für kostenlose Testversionen an.

Nach wenigen Augenblicken wird die Google Cloud Console in diesem Tab geöffnet.

Hinweis: Wenn Sie auf Google Cloud-Produkte und ‑Dienste zugreifen möchten, klicken Sie auf das Navigationsmenü oder geben Sie den Namen des Produkts oder Dienstes in das Feld Suchen ein. Symbol für das Navigationsmenü und Suchfeld

Cloud Shell aktivieren

Cloud Shell ist eine virtuelle Maschine, auf der Entwicklertools installiert sind. Sie bietet ein Basisverzeichnis mit 5 GB nichtflüchtigem Speicher und läuft auf Google Cloud. Mit Cloud Shell erhalten Sie Befehlszeilenzugriff auf Ihre Google Cloud-Ressourcen.

  1. Klicken Sie oben in der Google Cloud Console auf Cloud Shell aktivieren Symbol für Cloud Shell-Aktivierung.

  2. Klicken Sie sich durch die folgenden Fenster:

    • Fahren Sie mit dem Informationsfenster zu Cloud Shell fort.
    • Autorisieren Sie Cloud Shell, Ihre Anmeldedaten für Google Cloud API-Aufrufe zu verwenden.

Wenn eine Verbindung besteht, sind Sie bereits authentifiziert und das Projekt ist auf Project_ID, eingestellt. Die Ausgabe enthält eine Zeile, in der die Project_ID für diese Sitzung angegeben ist:

Ihr Cloud-Projekt in dieser Sitzung ist festgelegt als {{{project_0.project_id | "PROJECT_ID"}}}

gcloud ist das Befehlszeilentool für Google Cloud. Das Tool ist in Cloud Shell vorinstalliert und unterstützt die Tab-Vervollständigung.

  1. (Optional) Sie können den aktiven Kontonamen mit diesem Befehl auflisten:
gcloud auth list
  1. Klicken Sie auf Autorisieren.

Ausgabe:

ACTIVE: * ACCOUNT: {{{user_0.username | "ACCOUNT"}}} Um das aktive Konto festzulegen, führen Sie diesen Befehl aus: $ gcloud config set account `ACCOUNT`
  1. (Optional) Sie können die Projekt-ID mit diesem Befehl auflisten:
gcloud config list project

Ausgabe:

[core] project = {{{project_0.project_id | "PROJECT_ID"}}} Hinweis: Die vollständige Dokumentation für gcloud finden Sie in Google Cloud in der Übersicht zur gcloud CLI.

Aufgabe 1: Datenbank für die Replikation erstellen

In diesem Abschnitt bereiten Sie eine Cloud SQL for PostgreSQL-Datenbank für die Datastream-Replikation vor.

Cloud SQL-Datenbank erstellen

  1. Führen Sie den folgenden Befehl aus, um die Cloud SQL API zu aktivieren:
gcloud services enable sqladmin.googleapis.com
  1. Führen Sie den folgenden Befehl aus, um eine Cloud SQL for PostgreSQL-Datenbankinstanz zu erstellen:
POSTGRES_INSTANCE=postgres-db DATASTREAM_IPS={{{project_0.startup_script.ip_Address | IP_ADDRESS}}} gcloud sql instances create ${POSTGRES_INSTANCE} \ --database-version=POSTGRES_14 \ --cpu=2 --memory=10GB \ --authorized-networks=${DATASTREAM_IPS} \ --region={{{project_0.default_region|REGION}}} \ --root-password pwd \ --database-flags=cloudsql.logical_decoding=on Hinweis: Mit diesem Befehl wird die Datenbank in erstellt. Für andere Regionen müssen Sie DATASTREAM_IPS durch die richtigen öffentlichen IP-Adressen von Datastream für Ihre Region ersetzen. Hinweis: Notieren Sie sich nach dem Erstellen der Datenbankinstanz die öffentliche IP-Adresse der Instanz. Sie benötigen diese später, wenn Sie das Verbindungsprofil von Datastream erstellen.

Klicken Sie auf Fortschritt prüfen.

Datenbank für die Replikation erstellen

Beispieldaten in die Datenbank laden

Stellen Sie eine Verbindung zur PostgreSQL-Datenbank her, indem Sie den folgenden Befehl in Cloud Shell ausführen:

gcloud sql connect postgres-db --user=postgres

Wenn Sie zur Eingabe eines Passworts aufgefordert werden, geben Sie pwd ein.

Führen Sie nach der Verbindung zur Datenbank den folgenden SQL-Befehl aus, um ein Beispielschema und eine Tabelle zu erstellen:

CREATE SCHEMA IF NOT EXISTS test; CREATE TABLE IF NOT EXISTS test.example_table ( id SERIAL PRIMARY KEY, text_col VARCHAR(50), int_col INT, date_col TIMESTAMP ); ALTER TABLE test.example_table REPLICA IDENTITY DEFAULT; INSERT INTO test.example_table (text_col, int_col, date_col) VALUES ('hello', 0, '2020-01-01 00:00:00'), ('goodbye', 1, NULL), ('name', -987, NOW()), ('other', 2786, '2021-01-01 00:00:00');

Datenbank für die Replikation konfigurieren

  • Führen Sie den folgenden SQL-Befehl aus, um eine Veröffentlichung und einen Replikationsslot zu erstellen:
CREATE PUBLICATION test_publication FOR ALL TABLES; ALTER USER POSTGRES WITH REPLICATION; SELECT PG_CREATE_LOGICAL_REPLICATION_SLOT('test_replication', 'pgoutput');

Aufgabe 2: Datastream-Ressourcen erstellen und Replikation starten

Nachdem die Datenbank bereit ist, erstellen Sie die Datastream-Verbindungsprofile und den Stream, um die Replikation zu starten.

  1. Klicken Sie im Navigationsmenü auf Alle Produkte ansehen und wählen Sie unter Analytics die Option Datastream aus.

  2. Klicken Sie auf Aktivieren, um die Datastream API zu aktivieren.

64c95a330abbceb6.png

Verbindungsprofile erstellen

Erstellen Sie zwei Verbindungsprofile, eines für die PostgreSQL-Quelle und eines für das BigQuery-Ziel.

PostgreSQL-Verbindungsprofil

  1. Rufen Sie in der Cloud Console den Tab Verbindungsprofile auf und klicken Sie auf Profil erstellen.
Seite „Verbindungsprofil“ mit dem Link „Profil erstellen“ oben rechts
  1. Wählen Sie den Verbindungsprofiltyp PostgreSQL aus.
PostgreSQL-Kachel als eine der angezeigten Optionen
  1. Verwenden Sie postgres-cp als Namen und ID des Verbindungsprofils.

  2. Geben Sie die Details der Datenbankverbindung ein:

  • Region:
  • IP-Adresse und Port der zuvor erstellten Cloud SQL-Instanz (Aufgabe 1)
    • So finden Sie die IP-Adresse Ihrer Cloud SQL-Instanz:
      • Klicken Sie im Navigationsmenü auf „SQL“.
      • Suchen Sie auf der SQL-Seite nach Ihrer PostgreSQL-Instanz (in der Regel „postgres-db“ genannt).
      • Kopieren Sie die öffentliche IP-Adresse der Instanz.
  • Nutzername: postgres
  • Passwort: pwd
  • Datenbank: postgres
  1. Klicken Sie auf Weiter.

  2. Wählen Sie die Verbindungsmethode IP-Zulassungsliste aus und klicken Sie auf Weiter.

  3. Klicken Sie auf TESTEN, um zu prüfen, ob Datastream die Datenbank erreichen kann.

  4. Klicken Sie auf Erstellen.

BigQuery-Verbindungsprofil

  1. Rufen Sie in der Cloud Console den Tab Verbindungsprofile auf und klicken Sie auf Profil erstellen.
Seite „Verbindungsprofile“ mit dem Link „Profil erstellen“ oben rechts
  1. Wählen Sie den Verbindungsprofiltyp BigQuery aus.
BigQuery-Kachel als eine der Auswahlmöglichkeiten
  1. Verwenden Sie bigquery-cp als Namen und ID des Verbindungsprofils.

  2. Region:

  3. Klicken Sie auf Erstellen.

Stream erstellen

Erstellen Sie den Stream, der die oben erstellten Verbindungsprofile verknüpft und die Konfiguration für die Daten definiert, die von der Quelle zum Ziel gestreamt werden sollen.

  • Rufen Sie in der Cloud Console den Tab Streams auf und klicken Sie auf Stream erstellen.
Tab „Streams“ mit dem Link „Stream erstellen“ oben rechts

Streamdetails definieren

  1. Verwenden Sie test-stream als Namen und ID des Streams.
  2. Region:
  3. Wählen Sie PostgreSQL als Quelltyp aus.
  4. Wählen Sie BigQuery als Zieltyp aus.
  5. Klicken Sie auf WEITER.
Ausgefüllter erster Schritt der Seite „Stream erstellen“

Quelle definieren

  1. Wählen Sie das im vorherigen Schritt erstellte Verbindungsprofil postgres-cp aus.
  2. [Optional] Testen Sie die Verbindung, indem Sie auf TESTEN klicken.
  3. Klicken Sie auf WEITER.
Ausgefüllter zweiter Schritt der Seite „Stream erstellen“

Quelle konfigurieren

  1. Geben Sie test_replication als Namen des Replikationsslots an.
  2. Geben Sie test_publication als Namen der Publikation an.
Ausgefüllter dritter Schritt der Seite „Stream erstellen“
  1. Wählen Sie das Schema test für die Replikation aus.
Schema „test“, ausgewählt aus mehreren Optionen
  1. Klicken Sie auf Weiter.

Ziel definieren

  • Wählen Sie das im vorherigen Schritt erstellte Verbindungsprofil bigquery-cp aus und klicken Sie auf Weiter.
Vierter Schritt der Seite „Stream erstellen“ mit ausgewählter Option „bigquery-cp“

Ziel konfigurieren

  1. Wählen Sie die Region als Standort des BigQuery-Datasets aus.
  2. Setzen Sie das Limit für veraltete Daten auf 0 Sekunden.
Fünfter Schritt der Seite „Stream erstellen“ mit ausgewähltem Standort
  1. Klicken Sie auf Weiter.

Stream überprüfen und erstellen

  • Zum Schluss validieren Sie die Streamdetails, indem Sie auf Validierung ausführen klicken. Wenn die Validierung erfolgreich abgeschlossen wurde, klicken Sie auf Erstellen und starten und bestätigen Sie dann erneut mit Erstellen und starten.
Validierungsergebnisse mit grünen Häkchen

Warten Sie etwa 1–2 Minuten, bis der Streamstatus „Wird ausgeführt“ lautet.

Klicken Sie auf Fortschritt prüfen.

Datastream-Ressourcen erstellen

Aufgabe 3: Daten in BigQuery ansehen

Der Stream wird nun ausgeführt und Sie können sehen, wie die Daten in das BigQuery-Dataset repliziert werden.

  1. Klicken Sie in der Google Cloud Console im Navigationsmenü auf BigQuery.

Klicken Sie im Pop-up-Fenster auf Fertig.

  1. Maximieren Sie im Explorer von BigQuery Studio den Projektknoten, um die Liste der Datasets aufzurufen.
  2. Maximieren Sie den Dataset-Knoten test.
  3. Klicken Sie auf die Tabelle example_table.
  4. Klicken Sie auf den Tab VORSCHAU, um die Daten in BigQuery aufzurufen.
Hinweis: Es kann einige Minuten dauern, bis die Daten im Abschnitt Vorschau angezeigt werden. BigQuery-Explorer mit der Tabelle „example_table“
  1. Wenn auf dem Tab „Vorschau“ die Meldung „Es sind keine Daten vorhanden“ angezeigt wird, können Sie die Daten mit dem folgenden Befehl überprüfen:
SELECT * FROM test.example_table ORDER BY id;

Aufgabe 4: Prüfen, ob Änderungen in der Quelle in BigQuery repliziert werden

  1. Führen Sie in Cloud Shell den folgenden Befehl aus, um eine Verbindung zur Cloud SQL-Datenbank herzustellen (das Passwort lautet pwd):
gcloud sql connect postgres-db --user=postgres
  1. Führen Sie die folgenden SQL-Befehle aus, um einige Änderungen an den Daten vorzunehmen:
INSERT INTO test.example_table (text_col, int_col, date_col) VALUES ('abc', 0, '2022-10-01 00:00:00'), ('def', 1, NULL), ('ghi', -987, NOW()); UPDATE test.example_table SET int_col=int_col*2; DELETE FROM test.example_table WHERE text_col = 'abc';
  1. Öffnen Sie den BigQuery SQL-Arbeitsbereich und führen Sie die folgende Abfrage aus, um die Änderungen in BigQuery zu sehen:
SELECT * FROM test.example_table ORDER BY id; Abfrageergebnisse

Das wars! Sie haben das Lab erfolgreich abgeschlossen.

Datastream ist ein wichtiges Tool für die Datenintegration und ‑analyse. Sie wissen nun, wie man Daten mit Datastream von PostgreSQL nach BigQuery repliziert.

Anleitung zuletzt am 24. Februar 2025 aktualisiert

Lab zuletzt am 24. Februar 2025 getestet

© 2025 Google LLC. Alle Rechte vorbehalten. Google und das Google-Logo sind Marken von Google LLC. Alle anderen Unternehmens- und Produktnamen können Marken der jeweils mit ihnen verbundenen Unternehmen sein.

Vorbereitung

  1. Labs erstellen ein Google Cloud-Projekt und Ressourcen für einen bestimmten Zeitraum
  2. Labs haben ein Zeitlimit und keine Pausenfunktion. Wenn Sie das Lab beenden, müssen Sie von vorne beginnen.
  3. Klicken Sie links oben auf dem Bildschirm auf Lab starten, um zu beginnen

Privates Surfen verwenden

  1. Kopieren Sie den bereitgestellten Nutzernamen und das Passwort für das Lab
  2. Klicken Sie im privaten Modus auf Konsole öffnen

In der Konsole anmelden

  1. Melden Sie sich mit Ihren Lab-Anmeldedaten an. Wenn Sie andere Anmeldedaten verwenden, kann dies zu Fehlern führen oder es fallen Kosten an.
  2. Akzeptieren Sie die Nutzungsbedingungen und überspringen Sie die Seite zur Wiederherstellung der Ressourcen
  3. Klicken Sie erst auf Lab beenden, wenn Sie das Lab abgeschlossen haben oder es neu starten möchten. Andernfalls werden Ihre bisherige Arbeit und das Projekt gelöscht.

Diese Inhalte sind derzeit nicht verfügbar

Bei Verfügbarkeit des Labs benachrichtigen wir Sie per E-Mail

Sehr gut!

Bei Verfügbarkeit kontaktieren wir Sie per E-Mail

Es ist immer nur ein Lab möglich

Bestätigen Sie, dass Sie alle vorhandenen Labs beenden und dieses Lab starten möchten

Privates Surfen für das Lab verwenden

Nutzen Sie den privaten oder Inkognitomodus, um dieses Lab durchzuführen. So wird verhindert, dass es zu Konflikten zwischen Ihrem persönlichen Konto und dem Teilnehmerkonto kommt und zusätzliche Gebühren für Ihr persönliches Konto erhoben werden.