Questa pagina descrive come configurare l'acquisizione delle modifiche ai dati (CDC) per trasmettere in streaming i dati da un database Spanner a una destinazione supportata, ad esempio BigQuery o Cloud Storage.
Prima di iniziare
Se la tua istanza Spanner esiste in un progetto diverso da quello in cui è in esecuzione Datastream, devi fornire all'agente di servizio Datastream il ruolo IAM spanner.databaseReader e, se prevedi di utilizzare Data Boost, il ruolo spanner.databaseReaderWithDataBoost. Google Cloud
Se preferisci utilizzare un ruolo di database con controllo dell'accesso granulare, consulta Creare un profilo di connessione e un flusso Spanner per le singole autorizzazioni richieste.
Creazione di un database Spanner
Per iniziare a replicare i dati di modifica da Spanner, devi prima creare un'istanza Spanner e un database Spanner.
Crea un flusso di modifiche
Spanner utilizza modifiche in tempo reale per monitorare e trasmettere in streaming le modifiche ai dati, ad esempio
inserimenti, aggiornamenti ed eliminazioni. Per configurare l'origine Spanner per la
replica in Datastream, devi creare e configurare un
flusso di modifiche di Spanner. Devi specificare il NEW_ROW tipo di acquisizione
del valore per il flusso di modifiche.
Per saperne di più, consulta la Panoramica degli stream di modifiche.
Crea un profilo di connessione e uno stream Spanner
Quando crei un nuovo profilo di connessione Spanner, devi specificare il database Spanner che hai creato. Il nome del database deve avere il seguente formato:
projects/PROJECT_ID/instances/INSTANCE/databases/DATABASE_ID
Quando crei uno stream, puoi fornire facoltativamente:
- Gli oggetti da includere ed escludere.
- Il numero massimo di letture simultanee per le query di backfill o di stream di modifiche.
- Indica se Datastream deve utilizzare Data Boost quando esegue query su Spanner.
Un ruolo di database con controllo dell'accesso granulare da utilizzare per Datastream quando esegue query su Spanner. Il ruolo del database deve disporre almeno delle seguenti autorizzazioni:
spanner.sessions.createspanner.sessions.deletespanner.sessions.getspanner.databases.readspanner.databases.selectspanner.databases.partitionQueryspanner.databases.partitionReadspanner.databases.beginReadOnlyTransactionspanner.databases.getDdlspanner.databases.useDataBoost(se scegli di utilizzare Spanner Data Boost)spanner.databases.useRoleBasedAccess
Priorità della chiamata di procedura remota (RPC) di Spanner da utilizzare per Datastream.
Passaggi successivi
- Scopri di più su Spanner come origine.