Créer une table avec un flux de modifications activé et capturer les modifications
Découvrez comment configurer une table Bigtable avec un flux de modifications activé, exécuter un pipeline de flux de modifications, apporter des modifications à votre table, puis voir les modifications diffusées.
Avant de commencer
-
Dans la Google Cloud console, sur la page de sélection du projet, sélectionnez ou créez un Google Cloud projet.
Rôles requis pour sélectionner ou créer un projet
- Sélectionner un projet : la sélection d'un projet ne nécessite pas de rôle IAM spécifique Vous pouvez sélectionner n'importe quel projet pour lequel un rôle vous a été attribué.
-
Créer un projet : pour créer un projet, vous devez disposer du rôle Créateur de projet
(
roles/resourcemanager.projectCreator), qui contient l'autorisationresourcemanager.projects.create. Découvrez comment attribuer des rôles.
-
Vérifiez que la facturation est activée pour votre Google Cloud projet.
Activez les API Dataflow, Cloud Bigtable et Cloud Bigtable Admin.
Rôles requis pour activer les API
Pour activer les API, vous devez disposer du rôle IAM Administrateur d'utilisation du service (
roles/serviceusage.serviceUsageAdmin), qui contient l'autorisationserviceusage.services.enable. Découvrez comment attribuer des rôles.-
Dans la Google Cloud console, activez Cloud Shell.
Créer une table avec un flux de modifications activé
Dans la Google Cloud console, accédez à la page Instances de Bigtable.
Cliquez sur l'ID de l'instance que vous utilisez pour ce guide de démarrage rapide.
Si aucune instance n'est disponible, créez-en une avec les configurations par défaut dans une région proche de vous.
Dans le volet de navigation de gauche, cliquez sur Tables.
Cliquez sur Créer une table.
Nommez la table
change-streams-quickstart.Ajoutez une famille de colonnes nommée
cf.Sélectionnez Activer le flux de modifications.
Cliquez sur Créer.
Initialiser un pipeline de données pour capturer le flux de modifications
Dans Cloud Shell, exécutez les commandes suivantes pour télécharger le code et l'exécuter.
git clone https://github.com/GoogleCloudPlatform/java-docs-samples.git cd java-docs-samples/bigtable/beam/change-streams mvn compile exec:java -Dexec.mainClass=ChangeStreamsHelloWorld \ "-Dexec.args=--project=PROJECT_ID --bigtableProjectId=PROJECT_ID \ --bigtableInstanceId=BIGTABLE_INSTANCE_ID --bigtableTableId=change-streams-quickstart \ --runner=dataflow --region=BIGTABLE_REGION --experiments=use_runner_v2"Remplacez les éléments suivants :
- PROJECT_ID : ID du projet que vous utilisez
- BIGTABLE_INSTANCE_ID : ID de l'instance contenant la nouvelle table
- BIGTABLE_REGION : région dans laquelle se trouve votre instance Bigtable, par exemple
us-east5
Dans la Google Cloud console, accédez à la page Dataflow.
Cliquez sur la tâche dont le nom commence par changestreamquickstart.
En bas de l'écran, cliquez sur Afficher pour ouvrir le panneau des journaux.
Cliquez sur Journaux de nœud de calcul pour surveiller la sortie du flux de modifications.
Dans Cloud Shell, écrivez des données dans Bigtable pour voir le processus de flux de modifications.
cbt -instance=BIGTABLE_INSTANCE_ID -project=PROJECT_ID \ import change-streams-quickstart quickstart-data.csv column-family=cfDans la Google Cloud console, assurez-vous que Gravité est défini sur au moins
Info.La sortie du journal de nœud de calcul contient les éléments suivants :
Change captured: user123#2023,USER,SetCell,cf,col1,abc Change captured: user546#2023,USER,SetCell,cf,col1,def Change captured: user789#2023,USER,SetCell,cf,col1,ghi
Effectuer un nettoyage
Pour éviter que les ressources utilisées dans cette démonstration soient facturées sur votre Google Cloud compte pour les ressources utilisées sur cette page, procédez comme suit :
Désactivez le flux de modifications dans la table.
gcloud bigtable instances tables update change-streams-quickstart --instance=BIGTABLE_INSTANCE_ID \ --clear-change-stream-retention-periodSupprimez la table
change-streams-quickstart:cbt -instance=BIGTABLE_INSTANCE_ID -project=PROJECT_ID deletetable change-streams-quickstartArrêtez le pipeline de flux de modifications :
Dans la Google Cloud console, accédez à la page Tâches de Dataflow.
Sélectionnez votre tâche de traitement par flux dans la liste des tâches.
Dans la barre de navigation, cliquez sur Arrêter.
Dans la boîte de dialogue Arrêter la tâche, annulez votre pipeline, puis cliquez sur Arrêter la tâche.
Facultatif : Supprimez l'instance si vous en avez créé une pour ce guide de démarrage rapide :
cbt deleteinstance BIGTABLE_INSTANCE_ID