Configura un database Spanner di origine

Puoi trasmettere in streaming gli aggiornamenti di Change Data Capture (CDC) da un database Spanner alle destinazioni supportate, come BigQuery o Cloud Storage, utilizzando Datastream. La configurazione dell'origine richiede la creazione di un flusso di modifiche in tempo reale Spanner e la concessione di ruoli Identity and Access Management (IAM) o di privilegi di controllo dell'accesso granulare dell'accesso.

Prima di iniziare

Se l'istanza Spanner esiste in un progetto Google Cloud 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.

Se preferisci utilizzare un ruolo del database con controllo dell'accesso granulare dell'accesso, consulta Crea un profilo di connessione e uno stream Spanner per le singole autorizzazioni richieste.

Creazione di un database Spanner

Per iniziare a replicare i dati delle modifiche da Spanner, devi prima creare un'istanza Spanner e un database Spanner.

Crea un flusso di modifiche

Spanner utilizza le modifiche in tempo reale per monitorare e trasmettere in streaming le modifiche ai dati, come inserimenti, aggiornamenti ed eliminazioni. Per configurare l'origine Spanner per la replica in Datastream, devi creare e configurare un flusso di modifiche in tempo reale Spanner. Devi specificare il tipo di acquisizione del valore NEW_ROW per le modifiche in tempo reale.

Per saperne di più, consulta la panoramica delle modifiche in tempo reale.

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 facoltativamente fornire:

  • Gli oggetti da includere ed escludere.
  • Il numero massimo di letture simultanee per le query di backfill o di modifiche in tempo reale.

  • Se Datastream deve utilizzare Data Boost quando esegue query su Spanner.

  • Un ruolo del database con controllo dell'accesso granulare dell'accesso che Datastream può utilizzare quando esegue query su Spanner. Per utilizzare questo ruolo, Datastream deve disporre almeno delle seguenti autorizzazioni IAM:

    • spanner.databases.useRoleBasedAccess
    • spanner.databaseRoles.list
    • spanner.databases.useDataBoost (se scegli di utilizzare Spanner Data Boost)

    Inoltre, il ruolo database di Spanner deve disporre delle seguenti autorizzazioni:

  • Priorità della chiamata di procedura remota (RPC) di Spanner che Datastream deve utilizzare.

Passaggi successivi