Sie können Change Data Capture-Updates (CDC) aus einer Spanner-Datenbank mit Datastream an unterstützte Ziele wie BigQuery oder Cloud Storage streamen. Zum Einrichten der Quelle müssen Sie einen Spanner-Änderungsstream erstellen und IAM-Rollen (Identity and Access Management) oder Berechtigungen für die detaillierte Zugriffssteuerung gewähren.
Hinweis
Wenn sich Ihre Spanner-Instanz in einem Google Cloud anderen Projekt als dem
Projekt befindet, in dem Datastream ausgeführt wird, müssen Sie dem
Datastream-Dienst-Agent die spanner.databaseReader IAM
-Rolle zuweisen. Wenn Sie Data Boost verwenden möchten, müssen Sie die
spanner.databaseReaderWithDataBoost Rolle zuweisen.
Wenn Sie lieber eine Datenbankrolle mit detaillierter Zugriffssteuerung verwenden möchten, finden Sie unter Spanner-Verbindungsprofil und -Stream erstellen die erforderlichen individuellen Berechtigungen.
Spanner-Datenbank erstellen
Wenn Sie Änderungsdaten aus Spanner replizieren möchten, müssen Sie zuerst eine Spanner-Instanz und eine Spanner-Datenbank erstellen.
Änderungsstream erstellen
Spanner verwendet Änderungsstreams, um Datenänderungen wie Einfügungen, Aktualisierungen und Löschungen zu verfolgen und zu streamen. Wenn Sie Ihre Cloud Spanner-Quelle für die Replikation in Datastream konfigurieren möchten, müssen Sie einen Cloud Spanner-Änderungsstream erstellen und konfigurieren. Sie müssen den Werterfassungstyp NEW_ROW für Ihren Änderungsstream angeben.
Weitere Informationen finden Sie unter Übersicht über Änderungsstreams.
Cloud Spanner-Verbindungsprofil und -Stream erstellen
Wenn Sie ein neues Spanner-Verbindungsprofil erstellen, müssen Sie die von Ihnen erstellte Spanner-Datenbank angeben. Der Datenbankname muss das folgende Format haben:
projects/PROJECT_ID/instances/INSTANCE/databases/DATABASE_ID
Wenn Sie einen Stream erstellen, können Sie optional Folgendes angeben:
- Die Objekte, die ein- und ausgeschlossen werden sollen.
Die maximale Anzahl gleichzeitiger Lesevorgänge für Backfill- oder Änderungsstream-Abfragen.
Gibt an, ob Datastream Data Boost verwenden soll, wenn Spanner abgefragt wird.
Eine Datenbankrolle für die detaillierte Zugriffssteuerung, die Datastream beim Abfragen von Spanner verwenden soll. Zur Verwendung dieser Rolle benötigt Datastream mindestens die folgenden IAM-Berechtigungen:
spanner.databases.useRoleBasedAccessspanner.databaseRoles.listspanner.databases.useDataBoost(wenn Sie Spanner Data Boost verwenden möchten)
Außerdem muss die Spanner-Datenbankrolle die folgenden Berechtigungen haben:
SELECT-Berechtigungen für die gestreamten Tabellen.- Detaillierte Berechtigungen für den Änderungsstream. Weitere Informationen finden Sie unter Detaillierte Zugriffssteuerung für Änderungsstreams.
Priorität des Remote-Prozeduraufrufs (RPC) von Spanner für Datastream.