Utiliser le modèle de flux de modifications Bigtable vers BigQuery
Dans ce guide de démarrage rapide, vous allez apprendre à 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 console Google Cloud , sur la page de sélection du projet, sélectionnez ou créez un projet Google Cloud .
Rôles requis pour sélectionner ou créer un projet
- Sélectionnez 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 projet Google Cloud .
Activez les API Dataflow, Cloud Bigtable, Cloud Bigtable Admin et BigQuery.
Rôles requis pour activer les API
Pour activer les API, vous avez besoin du rôle IAM Administrateur Service Usage (
roles/serviceusage.serviceUsageAdmin), qui contient l'autorisationserviceusage.services.enable. Découvrez comment attribuer des rôles.-
Dans la console Google Cloud , activez Cloud Shell.
Créer un ensemble de données BigQuery
Utilisez la console Google Cloud pour créer un ensemble de données destiné à stocker les données.
Dans la console Google Cloud , accédez à la page "BigQuery".
Dans le volet Explorateur, cliquez sur le nom de votre projet.
Développez l'option Actions, puis cliquez sur Créer un ensemble de données.
Sur la page Créer un ensemble de données, procédez comme suit :
- Dans le champ ID de l'ensemble de données, saisissez
bigtable_bigquery_quickstart. - Conservez les autres paramètres par défaut, puis cliquez sur Créer un ensemble de données.
- Dans le champ ID de l'ensemble de données, saisissez
Créer une table avec un flux de modifications activé
Dans la console Google Cloud , accédez à la page Instances Bigtable.
Cliquez sur l'ID de l'instance que vous utilisez pour ce guide de démarrage rapide.
Si vous n'avez pas d'instance 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
bigquery-changestream-quickstart.Ajoutez une famille de colonnes nommée
cf.Sélectionnez Activer le flux de modifications.
Cliquez sur Créer.
Sur la page Tables de Bigtable, recherchez votre table
bigquery-changestream-quickstart.Dans la colonne Flux de modifications, cliquez sur Connecter.
Dans la boîte de dialogue, sélectionnez BigQuery.
Cliquez sur Créer un job Dataflow.
Dans les champs fournis, saisissez vos valeurs de paramètres. Vous n'avez pas besoin de fournir de paramètres facultatifs.
- Définissez l'ID du profil d'application Bigtable sur
default. - Définissez l'ensemble de données BigQuery sur
bigtable_bigquery_quickstart.
- Définissez l'ID du profil d'application Bigtable sur
Cliquez sur Run Job (Exécuter la tâche).
Attendez que l'état du job soit Démarrage ou En cours d'exécution avant de continuer. Une fois le job mis en file d'attente, l'opération prend environ cinq minutes.
Laissez le job ouvert dans un onglet afin de pouvoir l'arrêter lorsque vous nettoierez vos ressources.
Écrire des données dans Bigtable
Dans Cloud Shell, écrivez quelques lignes dans Bigtable afin que le journal des modifications puisse écrire des données dans BigQuery. Tant que vous écrivez les données après la création du job, les modifications apparaissent. Vous n'avez pas besoin d'attendre que l'état du job devienne
running.cbt -instance=BIGTABLE_INSTANCE_ID -project=PROJECT_ID \ set bigquery-changestream-quickstart user123 cf:col1=abc cbt -instance=BIGTABLE_INSTANCE_ID -project=PROJECT_ID \ set bigquery-changestream-quickstart user546 cf:col1=def cbt -instance=BIGTABLE_INSTANCE_ID -project=PROJECT_ID \ set bigquery-changestream-quickstart user789 cf:col1=ghiRemplacez les éléments suivants :
- PROJECT_ID : ID du projet que vous utilisez
- BIGTABLE_INSTANCE_ID : ID de l'instance contenant la table
bigquery-changestream-quickstart
Afficher les journaux des modifications dans BigQuery
Dans la console Google Cloud , accédez à la page BigQuery.
Dans le volet Explorateur, développez votre projet et l'ensemble de données
bigtable_bigquery_quickstart.Cliquez sur la table
bigquery-changestream-quickstart_changelog.Pour afficher le journal des modifications, cliquez sur Aperçu.

Effectuer un nettoyage
Pour éviter que les ressources utilisées dans cette démonstration soient facturées sur votre compte Google Cloud , procédez comme suit :
Désactivez le flux de modifications sur la table :
gcloud bigtable instances tables update bigquery-changestream-quickstart \ --project=PROJECT_ID --instance=BIGTABLE_INSTANCE_ID \ --clear-change-stream-retention-periodSupprimez la table
bigquery-changestream-quickstart:cbt --instance=BIGTABLE_INSTANCE_ID --project=PROJECT_ID deletetable bigquery-changestream-quickstartArrêtez le pipeline de flux de modifications :
Dans la console Google Cloud , accédez à la page Tâches 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, sélectionnez Annuler, puis cliquez sur Arrêter la tâche.
Supprimez l'ensemble de données BigQuery :
Dans la console Google Cloud , accédez à la page "BigQuery".
Dans le panneau Explorateur, recherchez l'ensemble de données
bigtable_bigquery_quickstartet cliquez dessus.Cliquez sur Supprimer, saisissez
delete, puis cliquez sur Supprimer pour confirmer.
Facultatif : Supprimez l'instance si vous en avez créé une pour ce guide de démarrage rapide :
cbt deleteinstance BIGTABLE_INSTANCE_ID