Créer une table compatible avec les flux de modifications 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 afficher les modifications diffusées.

Avant de commencer

  1. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  2. Vérifiez que la facturation est activée pour votre projet Google Cloud.

  3. Activer les API Dataflow, Cloud Bigtable API, and Cloud Bigtable Admin API.

    Activer les API

  4. Dans la console Google Cloud, activez Cloud Shell.

    Activer Cloud Shell

Créer une table avec un flux de modifications activé

  1. Dans la console Google Cloud, accédez à la page Instances de Bigtable.

    Accéder à la page "Instances"

  2. Cliquez sur l'ID de l'instance que vous utilisez pour ce guide de démarrage rapide.

    Si vous ne disposez d'aucune instance, créez une instance avec les configurations par défaut dans une région proche de vous.

  3. Dans le volet de navigation de gauche, cliquez sur Tables.

  4. Cliquez sur Créer une table.

  5. Nommez la table change-streams-quickstart.

  6. Ajoutez une famille de colonnes nommée cf.

  7. Sélectionnez Activer le flux de modifications.

  8. Cliquez sur Créer.

Initialiser un pipeline de données pour capturer le flux de modifications

  1. 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 qui contiendra la nouvelle table.
    • BIGTABLE_REGION: région dans laquelle se trouve votre instance Bigtable, par exemple us-east5
  2. Dans la console Google Cloud, accédez à la page Dataflow.

    Accéder à Dataflow

  3. Cliquez sur la tâche dont le nom commence par changestreamquickstart.

  4. En bas de l'écran, cliquez sur Show (Afficher) pour ouvrir le panneau des journaux.

  5. Cliquez sur Worker logs (Journaux des nœuds de calcul) pour surveiller la sortie du flux de modifications.

  6. Dans Cloud Shell, écrivez des données dans Bigtable pour voir le processus du flux de modifications.

    cbt -instance=BIGTABLE_INSTANCE_ID -project=PROJECT_ID \
    import change-streams-quickstart quickstart-data.csv column-family=cf
    
  7. Dans la console Google Cloud, assurez-vous que le paramètre Gravité est défini sur Info au minimum.

  8. Les journaux de sortie des journaux de nœud de calcul contiennent ce qui suit:

    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 sur cette page soient facturées sur votre compte Google Cloud, procédez comme suit :

  1. Désactiver le flux de modifications sur la table

    gcloud bigtable instances tables update change-streams-quickstart --instance=BIGTABLE_INSTANCE_ID \
    --clear-change-stream-retention-period
    
  2. Supprimez la table change-streams-quickstart :

    cbt -instance=BIGTABLE_INSTANCE_ID -project=PROJECT_ID deletetable change-streams-quickstart
    
  3. Arrêtez le pipeline de flux de modifications:

    1. Dans la console Google Cloud, accédez à la page Tâches de Dataflow.

      Accéder à la page "Tâches"

    2. Sélectionnez votre tâche de traitement par flux dans la liste des tâches.

    3. Dans la barre de navigation, cliquez sur Arrêter.

    4. Dans la boîte de dialogue Stop job (Arrêter la tâche), annulez votre pipeline, puis cliquez sur Stop job (Arrêter la tâche).

  4. Facultatif : supprimez l'instance si vous en avez créé une pour ce guide de démarrage rapide.

    cbt deleteinstance BIGTABLE_INSTANCE_ID
    

Étapes suivantes