Vous pouvez diffuser des mises à jour de capture de données modifiées (CDC) depuis une base de données Spanner vers des destinations compatibles telles que BigQuery ou Cloud Storage à l'aide de Datastream. Pour configurer votre source, vous devez créer un flux de modifications Spanner et accorder des rôles Identity and Access Management (IAM) ou des droits de contrôle ultraprécis des accès.
Avant de commencer
Si votre instance Spanner se trouve dans un projet Google Cloud autre que celui dans lequel Datastream est exécuté, vous devez attribuer à l'agent de service Datastream le rôle IAM spanner.databaseReader et, si vous prévoyez d'utiliser Data Boost, le rôle spanner.databaseReaderWithDataBoost.
Si vous préférez utiliser un rôle de base de données avec contrôle ultraprécis des accès, consultez Créer un profil de connexion et un flux Spanner pour connaître les autorisations individuelles requises.
Créer une base de données Spanner
Pour commencer à répliquer les données de modification à partir de Spanner, vous devez d'abord créer une instance Spanner et une base de données Spanner.
Créer un flux de modifications
Spanner utilise des flux de modifications pour suivre et diffuser les modifications de données, telles que les insertions, les mises à jour et les suppressions. Pour configurer votre source Spanner pour la réplication dans Datastream, vous devez créer et configurer un flux de modifications Spanner. Vous devez spécifier le type de capture de valeur NEW_ROW pour votre flux de modifications.
Pour en savoir plus, consultez Présentation des flux de modifications.
Créer un profil de connexion et un flux Spanner
Lorsque vous créez un profil de connexion Spanner, vous devez spécifier la base de données Spanner que vous avez créée. Le nom de la base de données doit respecter le format suivant :
projects/PROJECT_ID/instances/INSTANCE/databases/DATABASE_ID
Lorsque vous créez un flux, vous pouvez éventuellement fournir les éléments suivants :
- Les objets à inclure et à exclure.
Nombre maximal de lectures simultanées pour les requêtes de remplissage ou de flux de modifications.
Indique si Datastream doit utiliser Data Boost lors de l'interrogation de Spanner.
Un rôle de base de données avec contrôle ultraprécis des accès que Datastream peut utiliser pour interroger Spanner. Pour utiliser ce rôle, Datastream doit disposer au minimum des autorisations IAM suivantes :
spanner.databases.useRoleBasedAccessspanner.databaseRoles.listspanner.databases.useDataBoost(si vous choisissez d'utiliser Spanner Data Boost)
De plus, le rôle de base de données Spanner doit disposer des autorisations suivantes :
- Autorisations
SELECTpour les tables diffusées en continu. - Autorisations précises pour le flux de modifications. Pour en savoir plus, consultez Contrôle ultraprécis des contrôle des accès pour les flux de modifications.
Priorité d'appel de procédure à distance (RPC) Spanner à utiliser par Datastream.
Étapes suivantes
- Apprenez-en plus sur Spanner en tant que source.