Implémenter Datastream et Dataflow pour l'analyse

Datastream

Datastream accepte les flux de données de bases de données Oracle, MySQL et PostgreSQL directement dans des ensembles de données BigQuery. Toutefois, si vous avez besoin de plus de contrôle sur la logique de traitement de flux, comme la transformation des données ou le paramétrage manuel des clés primaires logiques, vous pouvez intégrer Datastream aux modèles de tâches Dataflow.

Ce tutoriel explique comment Datastream s'intègre à Dataflow à l'aide de modèles de tâches Dataflow pour diffuser des vues matérialisées à jour dans BigQuery à des fins d'analyse.

Pour les organisations disposant de nombreuses sources de données isolées, l'accès aux données de l'ensemble de l'organisation, en particulier en temps réel, peut être limité et lent. Cela limite la capacité de l’organisation à s’introspecter.

Datastream fournit un accès en temps quasi réel aux données modifiées provenant de diverses sources de données sur site et basées dans le cloud. Datastream offre une expérience de configuration qui vous permet de configurer très peu de flux de données. Datastream s'en charge pour vous. Datastream dispose également d'une API de consommation unifiée qui démocratise l'accès de votre organisation aux données d'entreprise les plus récentes afin de créer des scénarios intégrés.

L'un de ces scénarios consiste à transférer des données d'une base de données source vers un service de stockage dans le cloud ou une file d'attente de messagerie. Une fois que Datastream a diffusé les données, elles sont transformées dans un format lisible par d'autres applications et services. Dans ce tutoriel, Dataflow est le service Web qui communique avec le service de stockage ou la file d'attente de messagerie pour capturer et traiter des données sur Google Cloud.

Vous allez apprendre à utiliser Datastream pour diffuser des modifications (données insérées, mises à jour ou supprimées) d'une base de données MySQL source vers un dossier d'un bucket Cloud Storage. Vous devez ensuite configurer le bucket Cloud Storage pour qu'il envoie des notifications que Dataflow utilise pour connaître les nouveaux fichiers contenant les modifications de données que Datastream diffuse à partir de la base de données source. Un job Dataflow traite ensuite les fichiers et transfère les modifications dans BigQuery.

Schéma du parcours utilisateur de l'intégration

Objectifs

Dans ce tutoriel, vous allez effectuer les tâches suivantes :

  • Créez un bucket dans Cloud Storage. Il s'agit du bucket de destination dans lequel Datastream diffuse des schémas, des tables et des données à partir d'une base de données MySQL source.
  • Activer les notifications Pub/Sub pour le bucket Cloud Storage Vous configurez ainsi le bucket pour qu'il envoie des notifications que Dataflow utilise pour connaître les nouveaux fichiers prêts à être traités. Ces fichiers contiennent les modifications apportées aux données que Datastream diffuse depuis la base de données source vers le bucket.
  • Créer des ensembles de données dans BigQuery BigQuery utilise des ensembles de données pour contenir les données qu'il reçoit de Dataflow. Ces données représentent les modifications apportées à la base de données source que Datastream diffuse dans le bucket Cloud Storage.
  • Créer et gérer des profils de connexion pour une base de données source et un bucket de destination dans Cloud Storage. Dans Datastream, un flux utilise les informations des profils de connexion pour transférer les données de la base de données source vers le bucket.
  • Créez et démarrez un flux. Ce flux transfère des données, des schémas et des tables de la base de données source vers le bucket.
  • Vérifiez que Datastream transfère les données et les tables associées à un schéma de la base de données source dans le bucket.
  • Créer un job dans Dataflow Une fois que Datastream diffuse les modifications de données de la base de données source dans le bucket Cloud Storage, des notifications sont envoyées à Dataflow lorsque de nouveaux fichiers contiennent les modifications. La tâche Dataflow traite les fichiers et transfère les modifications dans BigQuery.
  • Vérifiez que Dataflow traite les fichiers contenant les modifications associées à ces données et transfère les modifications dans BigQuery. Vous bénéficiez ainsi d'une intégration de bout en bout entre Datastream et BigQuery.
  • Nettoyez les ressources que vous avez créées dans Datastream, Cloud Storage, Pub/Sub, Dataflow et BigQuery afin qu'elles ne soient plus comptabilisées dans votre quota et ne vous soient plus facturées.

Coûts

Dans ce document, vous utilisez les composants facturables suivants de Google Cloud :

  • Datastream
  • Cloud Storage
  • Pub/Sub
  • Dataflow
  • BigQuery

Obtenez une estimation des coûts en fonction de votre utilisation prévue à l'aide du simulateur de coût. Les nouveaux utilisateurs de Google Cloud peuvent bénéficier d'un essai gratuit.

Avant de commencer

  1. Connectez-vous à votre compte Google Cloud. Si vous débutez sur Google Cloud, créez un compte pour évaluer les performances de nos produits en conditions réelles. Les nouveaux clients bénéficient également de 300 $ de crédits gratuits pour exécuter, tester et déployer des charges de travail.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

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

    Go to project selector

  5. Make sure that billing is enabled for your Google Cloud project.

  6. Activez l'API Datastream.

    Activer l'API

  7. Assurez-vous que le rôle "Administrateur Datastream" est attribué à votre compte utilisateur.

    Accéder à la page IAM

  8. Assurez-vous de disposer d'une base de données MySQL source à laquelle Datastream peut accéder. Vérifiez également que vous disposez de données, de tables et de schémas dans la base de données.
  9. Configurez votre base de données MySQL pour autoriser les connexions entrantes provenant d'adresses IP publiques Datastream. Pour obtenir la liste de toutes les régions Datastream et des adresses IP publiques associées, consultez la section Listes d'autorisation d'adresses IP et régions.
  10. Configurez la capture des données modifiées (CDC, Change Data Capture) pour la base de données source. Pour en savoir plus, consultez Configurer une base de données MySQL source.
  11. Assurez-vous de remplir tous les prérequis pour activer les notifications Pub/Sub pour Cloud Storage.

    Dans ce tutoriel, vous allez créer un bucket de destination dans Cloud Storage et activer les notifications Pub/Sub pour le bucket. De cette façon, Dataflow peut recevoir des notifications sur les nouveaux fichiers que Datastream écrit dans le bucket. Ces fichiers contiennent des modifications apportées aux données diffusées par Datastream depuis la base de données source vers le bucket.

Exigences

Datastream propose plusieurs options de sources, options de destination et méthodes de connectivité réseau.

Pour ce tutoriel, nous supposons que vous utilisez une base de données MySQL autonome et un service Cloud Storage de destination. Pour la base de données source, vous devriez pouvoir configurer votre réseau pour ajouter une règle de pare-feu entrante. La base de données source peut se trouver sur site ou chez un fournisseur de services cloud. Pour la destination Cloud Storage, aucune configuration de connectivité n'est requise.

Ne connaissant pas les spécificités de votre environnement, nous ne pouvons pas fournir de procédure détaillée pour la configuration de votre réseau.

Pour ce tutoriel, sélectionnez Liste d'autorisation d'adresses IP comme méthode de connectivité réseau. La liste d'autorisation d'adresses IP est une fonctionnalité de sécurité souvent utilisée pour limiter et contrôler l'accès aux données de votre base de données source aux utilisateurs de confiance uniquement. Vous pouvez utiliser les listes d'autorisation d'adresses IP pour créer des listes d'adresses IP ou de plages d'adresses IP de confiance à partir desquelles vos utilisateurs et d'autres services Google Cloud tels que Datastream peuvent accéder à ces données. Pour utiliser des listes d'autorisation d'adresses IP, vous devez ouvrir la base de données source ou le pare-feu aux connexions entrantes de Datastream.

Créer un bucket dans Cloud Storage

Créez un bucket de destination dans Cloud Storage dans lequel Datastream diffuse des schémas, des tables et des données depuis une base de données MySQL source.

  1. Dans la console Google Cloud, accédez à la page Navigateur de Cloud Storage.

    Accéder à la page du navigateur

  2. Cliquez sur Create bucket (Créer un bucket). La page Créer un bucket s'affiche.

  3. Dans le champ de texte de la région Attribuer un nom au bucket, saisissez un nom unique pour votre bucket, puis cliquez sur Continuer.

  4. Acceptez les paramètres par défaut pour chaque zone restante de la page. À la fin de chaque région, cliquez sur Continuer.

  5. Cliquez sur Créer.

Activer les notifications Pub/Sub pour le bucket Cloud Storage

Dans cette section, vous allez activer les notifications Pub/Sub pour le bucket Cloud Storage que vous avez créé. Vous configurez ainsi le bucket pour qu'il informe Dataflow de tout nouveau fichier écrit dans le bucket par Datastream. Ces fichiers contiennent les modifications apportées aux données que Datastream diffuse à partir d'une base de données MySQL source vers le bucket.

  1. Accédez au bucket Cloud Storage que vous avez créé. La page Informations sur le bucket s'affiche.

  2. Cliquez sur Activer Cloud Shell.

  3. Lorsque vous y êtes invité, saisissez la commande suivante :

    gcloud storage buckets notifications create gs://bucket-name --topic=my_integration_notifs --payload-format=json --object-prefix=integration/tutorial/

  4. Facultatif : Si une fenêtre Autoriser Cloud Shell s'affiche, cliquez sur Autoriser.

  5. Vérifiez que les lignes de code suivantes s'affichent :

    Created Cloud Pub/Sub topic projects/project-name/topics/my_integration_notifs
    Created notification config projects/_/buckets/bucket-name/notificationConfigs/1
    
  6. Dans la console Google Cloud, accédez à la page Sujets de Pub/Sub.

    Accéder à la page Sujets

  7. Cliquez sur le sujet my_integration_notifs que vous avez créé.

  8. Sur la page my_integration_notifs, faites défiler le contenu jusqu'en bas. Vérifiez que l'onglet Abonnements est actif et que le message Aucun abonnement à afficher s'affiche.

  9. Cliquez sur Créer un abonnement.

  10. Dans le menu qui s'affiche, sélectionnez Créer un abonnement.

  11. Sur la page Ajouter un abonnement au sujet :

    1. Dans le champ ID d'abonnement, saisissez my_integration_notifs_sub.
    2. Définissez la valeur du délai de confirmation sur 120 secondes. Cela permet à Dataflow de disposer d'un délai suffisant pour confirmer les fichiers qu'il a traités et d'améliorer les performances globales de la tâche Dataflow. Pour en savoir plus sur les propriétés d'abonnement Pub/Sub, consultez Propriétés d'abonnement.
    3. Laissez les autres valeurs par défaut de la page.
    4. Cliquez sur Créer.

Plus loin dans ce tutoriel, vous créerez une tâche Dataflow. Lors de la création de cette tâche, vous attribuez Dataflow comme abonné à l'abonnement my_integration_notifs_sub. De cette manière, Dataflow peut recevoir des notifications sur les nouveaux fichiers que Datastream écrit dans Cloud Storage, les traiter et transférer les modifications de données dans BigQuery.

Créer des ensembles de données dans BigQuery

Dans cette section, vous allez créer des ensembles de données dans BigQuery. BigQuery utilise des ensembles de données pour contenir les données qu'il reçoit de Dataflow. Ces données représentent les modifications apportées à la base de données MySQL source que Datastream diffuse dans votre bucket Cloud Storage.

  1. Accédez à la page Espace de travail SQL de BigQuery dans la console Google Cloud.

    Accéder à la page SQL Workspace

  2. Dans le volet Explorer, à côté du nom de votre projet Google Cloud, cliquez sur  Afficher les actions.

  3. Dans le menu qui s'affiche, sélectionnez Créer un ensemble de données.

  4. Dans la fenêtre Create dataset (Créer un ensemble de données) :

    1. Dans le champ ID de l'ensemble de données, saisissez un ID pour l'ensemble de données. Pour les besoins de ce tutoriel, saisissez My_integration_dataset_log dans le champ.
    2. Conservez toutes les autres valeurs par défaut dans la fenêtre.
    3. Cliquez sur Créer un ensemble de données.
  5. Dans le volet Explorateur, à côté du nom de votre projet Google Cloud, cliquez sur Développer le nœud, puis vérifiez que l'ensemble de données que vous avez créé s'affiche.

  6. Suivez les étapes de cette procédure pour créer un deuxième ensemble de données : My_integration_dataset_final.

  7. À côté de chaque ensemble de données, développez  Développer le nœud.

  8. Vérifiez que chaque ensemble de données est vide.

Une fois que Datastream diffuse les modifications de la base de données source dans votre bucket Cloud Storage, un job Dataflow traite les fichiers contenant les modifications et les transfère dans les ensembles de données BigQuery.

Créer des profils de connexion dans Datastream

Dans cette section, vous allez créer des profils de connexion dans Datastream pour une base de données source et une destination. Lors de la création des profils de connexion, vous sélectionnez MySQL comme type de profil pour votre profil de connexion source et Cloud Storage comme type de profil pour votre profil de connexion de destination.

Datastream utilise les informations définies dans les profils de connexion pour se connecter à la source et à la destination afin de pouvoir diffuser des données de la base de données source vers votre bucket de destination dans Cloud Storage.

Créer un profil de connexion source pour votre base de données MySQL

  1. Dans la console Google Cloud, accédez à la page Profils de connexion de Datastream.

    Accéder à la page Profils de connexion

  2. Cliquez sur Créer un profil.

  3. Pour créer un profil de connexion source pour votre base de données MySQL, sur la page Créer un profil de connexion, cliquez sur le type de profil MySQL.

  4. Dans la section Define connection settings (Définir les paramètres de connexion) de la page Create MySQL profile (Créer un profil MySQL), fournissez les informations suivantes:

    • Dans le champ Nom du profil de connexion, saisissez My Source Connection Profile.
    • Conservez l'ID du profil de connexion généré automatiquement.
    • Sélectionnez la région dans laquelle vous souhaitez stocker le profil de connexion.

    • Saisissez les informations sur la connexion :

      • Dans le champ Nom d'hôte ou Adresse IP, saisissez un nom d'hôte ou une adresse IP publique que Datastream peut utiliser pour se connecter à la base de données source. Vous fournissez une adresse IP publique, car vous utilisez la liste d'autorisation d'adresses IP comme méthode de connectivité réseau pour ce tutoriel.
      • Dans le champ Port, saisissez le numéro de port réservé à la base de données source. Pour une base de données MySQL, le port par défaut est généralement 3306.
      • Saisissez un nom d'utilisateur et un mot de passe pour vous authentifier auprès de votre base de données source.
  5. Dans la section Définir les paramètres de connexion, cliquez sur Continuer. La section Sécurisez votre connexion à la source de la page Créer un profil MySQL est active.

  6. Dans le menu Type de chiffrement, sélectionnez Aucun. Pour en savoir plus sur ce menu, consultez Créer un profil de connexion pour la base de données MySQL.

  7. Dans la section Sécuriser votre connexion à votre source, cliquez sur Continuer. La section Définir une méthode de connectivité de la page Créer un profil MySQL est active.

  8. Dans le menu déroulant Méthode de connectivité, sélectionnez la méthode de mise en réseau que vous souhaitez utiliser pour établir la connectivité entre Datastream et la base de données source. Pour ce tutoriel, sélectionnez Liste d'autorisation d'adresses IP comme méthode de connectivité.

  9. Configurez votre base de données source pour autoriser les connexions entrantes provenant des adresses IP publiques Datastream qui s'affichent.

  10. Dans la section Définir la méthode de connectivité, cliquez sur Continuer. La section Tester le profil de connexion de la page Créer un profil MySQL est active.

  11. Cliquez sur Run test (Exécuter le test) pour vérifier que la base de données source et Datastream peuvent communiquer entre eux.

  12. Vérifiez que l'état Test réussi s'affiche.

  13. Cliquez sur Créer.

Créer un profil de connexion de destination pour Cloud Storage

  1. Dans la console Google Cloud, accédez à la page Profils de connexion de Datastream.

    Accéder à la page Profils de connexion

  2. Cliquez sur Créer un profil.

  3. Pour créer un profil de connexion de destination pour Cloud Storage, sur la page Créer un profil de connexion, cliquez sur le type de profil Cloud Storage.

  4. Sur la page Créer un profil Cloud Storage, fournissez les informations suivantes:

    • Dans le champ Nom du profil de connexion, saisissez My Destination Connection Profile.
    • Conservez l'ID du profil de connexion généré automatiquement.
    • Sélectionnez la région dans laquelle vous souhaitez stocker le profil de connexion.
    • Dans le volet Détails de la connexion, cliquez sur Parcourir pour sélectionner le bucket Cloud Storage que vous avez créé plus tôt dans ce tutoriel. Il s'agit du bucket dans lequel Datastream transfère les données de la base de données source. Une fois votre sélection effectuée, cliquez sur Sélectionner.

      Votre bucket apparaît dans le champ Nom du bucket du volet Détails de la connexion.

    • Dans le champ Préfixe du chemin du profil de connexion, indiquez un préfixe pour le chemin que vous souhaitez ajouter au nom du bucket lorsque Datastream diffuse des données vers la destination. Assurez-vous que Datastream écrit les données dans un chemin d'accès du bucket, et non dans le dossier racine du bucket. Pour ce tutoriel, utilisez le chemin d'accès que vous avez défini lors de la configuration de votre notification Pub/Sub. Saisissez /integration/tutorial dans le champ.

  5. Cliquez sur Créer.

Après avoir créé un profil de connexion source pour votre base de données MySQL et un profil de connexion de destination pour Cloud Storage, vous pouvez les utiliser pour créer un flux.

Créer un flux dans Datastream

Dans cette section, vous allez créer un flux. Ce flux utilise les informations des profils de connexion pour transférer les données d'une base de données MySQL source vers un bucket de destination dans Cloud Storage.

Définir les paramètres du flux

  1. Dans la console Google Cloud, accédez à la page Flux de Datastream.

    Accéder à la page "Flux"

  2. Cliquez sur Créer un flux.

  3. Indiquez les informations suivantes dans le panneau Définir les détails du flux de la page Créer un flux :

    • Dans le champ Nom du flux, saisissez My Stream.
    • Conservez l'ID de flux généré automatiquement.
    • Dans le menu Région, sélectionnez la région dans laquelle vous avez créé vos profils de connexion source et de destination.
    • Dans le menu Source type (Type de source), sélectionnez le type de profil MySQL.
    • Dans le menu Type de destination, sélectionnez le type de profil Cloud Storage.
  4. Passez en revue les conditions préalables requises qui sont générées automatiquement pour indiquer comment votre environnement doit être préparé pour un flux. Ces prérequis peuvent inclure la configuration de la base de données source et la connexion de Datastream au bucket Cloud Storage de destination.

  5. Cliquez sur Continuer. Le panneau Définir un profil de connexion MySQL de la page Créer un flux s'affiche.

Spécifier des informations sur le profil de connexion source

Dans cette section, vous allez sélectionner le profil de connexion que vous avez créé pour votre base de données source (le profil de connexion source). Pour ce tutoriel, il s'agit de Mon profil de connexion source.

  1. Dans le menu Profil de connexion source, sélectionnez votre profil de connexion source pour la base de données MySQL.

  2. Cliquez sur Exécuter le test pour vérifier que la base de données source et Datastream peuvent communiquer entre eux.

    Si le test échoue, le problème associé au profil de connexion s'affiche. Pour savoir comment résoudre le problème, consultez la page Diagnostiquer les problèmes. Apportez les modifications nécessaires pour corriger le problème, puis recommencez le test.

  3. Cliquez sur Continuer. Le panneau Configurer la source du flux de la page Créer un flux s'affiche.

Configurer les informations sur la base de données source du flux

Dans cette section, vous configurez des informations sur la base de données source du flux en spécifiant les tables et les schémas de la base de données source dans Datastream :

  • Transfert possible vers la destination.
  • Transfert restreint vers la destination.

Vous pouvez également déterminer si Datastream remplit les données de l'historique, diffuse les modifications en cours vers la destination ou ne diffuse que les modifications apportées aux données.

  1. Utilisez le menu Objets à inclure pour spécifier les tables et les schémas de votre base de données source que Datastream peut transférer vers un dossier du bucket Cloud Storage de destination. Le menu ne se charge que si votre base de données contient jusqu'à 5 000 objets.

    Pour ce tutoriel, vous souhaitez que Datastream transfère toutes les tables et tous les schémas. Sélectionnez donc Toutes les tables de tous les schémas dans le menu.

  2. Vérifiez que le panneau Sélectionner des objets à exclure est défini sur Aucun. Vous ne souhaitez pas empêcher Datastream de transférer les tables et les schémas de votre base de données source vers Cloud Storage.

  3. Vérifiez que le panneau Choisir le mode de remplissage pour les données historiques est défini sur Automatique. Datastream diffuse toutes les données existantes, en plus des modifications apportées, de la source vers la destination.

  4. Cliquez sur Continuer. Le panneau Définir un profil de connexion Cloud Storage de la page Créer un flux s'affiche.

Sélectionner un profil de connexion de destination

Dans cette section, vous sélectionnez le profil de connexion que vous avez créé pour Cloud Storage (le profil de connexion de destination). Pour ce tutoriel, il s'agit de Mon profil de connexion de destination.

  1. Dans le menu Profil de connexion de destination, sélectionnez votre profil de connexion de destination pour Cloud Storage.

  2. Cliquez sur Continuer. Le panneau Configurer la destination du flux de la page Créer un flux s'affiche.

Configurer les informations sur la destination du flux

Dans cette section, vous allez configurer les informations sur le bucket de destination du flux. Parmi ces informations, on peut citer :

  • Format de sortie des fichiers écrits dans Cloud Storage.
  • Dossier du bucket de destination dans lequel Datastream transfère les schémas, les tables et les données de la base de données source.
  1. Dans le champ Format de sortie, sélectionnez le format des fichiers écrits dans Cloud Storage. Datastream accepte deux formats de sortie: Avro et JSON. Pour ce tutoriel, Avro est le format de fichier.

  2. Cliquez sur Continuer. Le panneau Vérifier les détails et créer le flux de la page Créer un flux s'affiche.

Créer le flux

  1. Vérifiez les détails du flux ainsi que les profils de connexion source et de destination que le flux utilise pour transférer des données d'une base de données MySQL source vers un bucket de destination dans Cloud Storage.

  2. Pour valider le flux, cliquez sur Exécuter la validation. En validant un flux, Datastream vérifie que la source est correctement configurée, vérifie que le flux peut se connecter à la source et à la destination, et vérifie la configuration de bout en bout du flux.

  3. Une fois tous les contrôles de validation effectués, cliquez sur Créer.

  4. Dans la boîte de dialogue Créer un flux ?, cliquez sur Créer.

Démarrer le flux

Pour ce tutoriel, vous allez créer et démarrer un flux séparément au cas où le processus de création de flux entraînerait une charge accrue sur votre base de données source. Pour retarder cette charge, créez le flux sans le démarrer, puis démarrez-le lorsque votre base de données peut gérer la charge.

En démarrant le flux, Datastream peut transférer les données, les schémas et les tables de la base de données source vers la destination.

  1. Dans la console Google Cloud, accédez à la page Flux de Datastream.

    Accéder à la page "Flux"

  2. Cochez la case située à côté du flux que vous souhaitez démarrer. Pour ce tutoriel, il s'agit de Mon flux.

  3. Cliquez sur Démarrer.

  4. Dans la boîte de dialogue, cliquez sur Démarrer. L'état du flux passe de Not started à Starting, puis à Running.

Après avoir démarré un flux, vous pouvez vérifier que Datastream a transféré les données de la base de données source vers la destination.

Vérifier le flux

Dans cette section, vous allez vérifier que Datastream transfère les données de toutes les tables d'une base de données MySQL source dans le dossier /integration/tutorial de votre bucket de destination Cloud Storage.

  1. Dans la console Google Cloud, accédez à la page Flux de Datastream.

    Accéder à la page "Flux"

  2. Cliquez sur le flux que vous avez créé. Pour ce tutoriel, il s'agit de Mon flux.

  3. Sur la page Détails du flux, cliquez sur le lien bucket-name/integration/tutorial, où bucket-name est le nom que vous avez donné à votre bucket Cloud Storage. Ce lien s'affiche après le champ Chemin d'écriture de la destination. La page Informations sur le bucket de Cloud Storage s'ouvre dans un onglet distinct.

  4. Vérifiez que vous voyez des dossiers qui représentent des tables de la base de données source.

  5. Cliquez sur l'un des dossiers du tableau, puis sur chaque sous-dossier jusqu'à afficher les données associées au tableau.

Créer une tâche Dataflow

Dans cette section, vous allez créer un job dans Dataflow. Une fois que Datastream a diffusé les modifications de données d'une base de données MySQL source dans votre bucket Cloud Storage, Pub/Sub envoie des notifications à Dataflow concernant les nouveaux fichiers contenant les modifications. Le job Dataflow traite les fichiers et transfère les modifications dans BigQuery.

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

    Accéder à la page Tâches

  2. Cliquez sur Create job from template (Créer une tâche à partir d'un modèle).

  3. Dans le champ Nom de la tâche de la page Créer une tâche à partir d'un modèle, saisissez un nom pour la tâche Dataflow que vous créez. Pour les besoins de ce tutoriel, saisissez my-dataflow-integration-job dans le champ.

  4. Dans le menu Point de terminaison régional, sélectionnez la région dans laquelle vous souhaitez stocker le job. Il s'agit de la même région que celle que vous avez sélectionnée pour le profil de connexion source, le profil de connexion de destination et le flux que vous avez créés.

  5. Dans le menu Modèle Dataflow, sélectionnez le modèle que vous utilisez pour créer le job. Pour ce tutoriel, sélectionnez Datastream vers BigQuery.

    Une fois cette sélection effectuée, des champs supplémentaires liés à ce modèle s'affichent.

  6. Dans le champ Emplacement du fichier de sortie Datastream dans Cloud Storage, saisissez le nom de votre bucket Cloud Storage au format suivant : gs://bucket-name.

  7. Dans le champ Abonnement Pub/Sub utilisé dans une stratégie de notification Cloud Storage, saisissez le chemin d'accès contenant le nom de votre abonnement Pub/Sub. Pour ce tutoriel, saisissez projects/project-name/subscriptions/my_integration_notifs_sub.

  8. Dans le champ Format de fichier de sortie Datastream (avro/json), saisissez avro, car, pour ce tutoriel, Avro est le format de fichier que Datastream écrit dans Cloud Storage.

  9. Dans le champ Nom ou modèle de l'ensemble de données devant contenir les tables de préproduction, saisissez My_integration_dataset_log, car Dataflow utilise cet ensemble de données pour organiser les modifications de données reçues de Datastream.

  10. Dans le champ Modèle de l'ensemble de données qui contient des tables dupliquées, saisissez My_integration_dataset_final, car il s'agit de l'ensemble de données dans lequel les modifications déployées dans l'ensemble de données My_integration_dataset_log sont fusionnées pour créer une instance dupliquée 1 à 1 des tables de la base de données source.

  11. Dans le champ Répertoire de la file d'attente de lettres mortes, saisissez le chemin d'accès contenant le nom de votre bucket Cloud Storage et un dossier pour une file d'attente de lettres mortes. Vérifiez que vous n'utilisez pas de chemin d'accès dans le dossier racine et qu'il est différent de celui dans lequel Datastream écrit les données. Toutes les modifications de données que Dataflow ne parvient pas à transférer dans BigQuery sont stockées dans la file d'attente. Vous pouvez corriger le contenu dans la file d'attente afin que Dataflow puisse le retraiter.

    Pour ce tutoriel, saisissez gs://bucket-name/dlq dans le champ Répertoire de la file d'attente de lettres mortes (où bucket-name est le nom de votre bucket et dlq est le dossier de la file d'attente de lettres mortes).

  12. Cliquez sur Run Job (Exécuter la tâche).

Vérifier l'intégration

Dans la section Vérifier le flux de ce tutoriel, vous avez vérifié que Datastream a transféré les données de toutes les tables d'une base de données MySQL source vers le dossier /integration/tutorial de votre bucket de destination Cloud Storage.

Dans cette section, vous allez vérifier que Dataflow traite les fichiers contenant les modifications associées à ces données et transfère les modifications dans BigQuery. Vous bénéficiez ainsi d'une intégration de bout en bout entre Datastream et BigQuery.

  1. Dans la console Google Cloud, accédez à la page Espace de travail SQL de BigQuery.

    Accéder à la page de l'espace de travail SQL

  2. Dans le volet Explorateur, développez le nœud situé à côté du nom de votre projet Google Cloud.

  3. Développez les nœuds à côté des ensembles de données My_integration_dataset_log et My_integration_dataset_final.

  4. Vérifiez que chaque jeu de données contient désormais des données. Cela confirme que Dataflow a traité les fichiers contenant les modifications associées aux données que Datastream a diffusées dans Cloud Storage, et qu'il a transféré ces modifications dans BigQuery.

Effectuer un nettoyage

Pour éviter que les ressources utilisées dans ce tutoriel soient facturées sur votre compte Google Cloud, effectuez les opérations suivantes à l'aide de la console Google Cloud:

  • Supprimez votre projet, votre flux Datastream et vos profils de connexion Datastream.
  • Arrêtez la tâche Dataflow.
  • Supprimez les ensembles de données BigQuery, le sujet et l'abonnement Pub/Sub, ainsi que le bucket Cloud Storage.

En nettoyant les ressources que vous avez créées dans Datastream, Dataflow, BigQuery, Pub/Sub et Cloud Storage, vous empêchez ces ressources d'être comptabilisées dans votre quota et elles ne vous seront plus facturées.

Supprimer votre projet

Le moyen le plus simple d'empêcher la facturation est de supprimer le projet que vous avez créé pour ce tutoriel.

  1. Dans la console Google Cloud, accédez à la page Gérer les ressources.

    Accéder à la page "Gérer les ressources"

  2. Dans la liste des projets, sélectionnez le projet que vous souhaitez supprimer, puis cliquez sur Supprimer.

  3. Pour supprimer le projet, saisissez l'ID du projet dans la boîte de dialogue, puis cliquez sur Arrêter.

Supprimer le flux

  1. Dans la console Google Cloud, accédez à la page Flux de Datastream.

    Accéder à la page "Flux"

  2. Cliquez sur le flux que vous souhaitez supprimer. Pour ce tutoriel, il s'agit de Mon flux.

  3. Cliquez sur Suspendre.

  4. Dans la boîte de dialogue, cliquez sur Mettre en veille.

  5. Dans le volet État du flux de la page Détails du flux, vérifiez que l'état du flux est Paused.

  6. Cliquez sur Supprimer.

  7. Dans la boîte de dialogue, dans le champ de texte, saisissez Delete, puis cliquez sur Supprimer.

Supprimer les profils de connexion

  1. Dans la console Google Cloud, accédez à la page Profils de connexion de Datastream.

    Accéder à la page Profils de connexion

  2. Cochez la case à côté de chaque profil de connexion que vous souhaitez supprimer : Mon profil de connexion source et Mon profil de connexion de destination.

  3. Cliquez sur Supprimer.

  4. Dans la boîte de dialogue, cliquez sur Supprimer.

Arrêter la tâche Dataflow

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

    Accéder à la page Tâches

  2. Cliquez sur la tâche que vous souhaitez arrêter. Pour ce tutoriel, il s'agit de my-dataflow-integration-job.

  3. Cliquez sur Arrêter.

  4. Dans la boîte de dialogue Stop job (Arrêter la tâche), sélectionnez l'option Drain (Drainer), puis cliquez sur Stop job (Arrêter la tâche).

Supprimer les ensembles de données BigQuery

  1. Dans la console Google Cloud, accédez à la page Espace de travail SQL pour BigQuery.

    Accéder à la page de l'espace de travail SQL

  2. Dans le volet Explorer, développez le nœud à côté du nom de votre projet Google Cloud.

  3. Cliquez sur le bouton Afficher les actions à droite de l'un des ensembles de données que vous avez créés à l'étape Créer des ensembles de données dans BigQuery. Ce bouton ressemble à des points de suspension verticaux.

    Pour ce tutoriel, cliquez sur le bouton Afficher les actions à droite de My_integration_dataset_log.

  4. Sélectionnez Supprimer dans le menu déroulant qui s'affiche.

  5. Dans la boîte de dialogue Supprimer l'ensemble de données ?, saisissez delete dans le champ de texte, puis cliquez sur Supprimer.

  6. Répétez les étapes de cette procédure pour supprimer le deuxième ensemble de données que vous avez créé : My_integration_dataset_final.

Supprimer l'abonnement et le sujet Pub/Sub

  1. Dans la console Google Cloud, accédez à la page Abonnements pour Pub/Sub.

    Accéder à la page Abonnements

  2. Cochez la case à côté de l'abonnement que vous souhaitez supprimer. Pour ce tutoriel, cochez la case à côté de l'abonnement my_integration_notifs_sub.

  3. Cliquez sur Supprimer.

  4. Dans la boîte de dialogue Supprimer l'abonnement, cliquez sur Supprimer.

  5. Dans la console Google Cloud, accédez à la page Sujets de Pub/Sub.

    Accéder à la page Sujets

  6. Cochez la case à côté de la rubrique my_integration_notifs.

  7. Cliquez sur Supprimer.

  8. Dans la boîte de dialogue Supprimer le sujet, saisissez delete dans le champ de texte, puis cliquez sur Supprimer.

Supprimer votre bucket Cloud Storage

  1. Dans la console Google Cloud, accédez à la page Navigateur de Cloud Storage.

    Accéder à la page du navigateur

  2. Cochez la case à côté de votre bucket.

  3. Cliquez sur Supprimer.

  4. Dans la boîte de dialogue, saisissez Delete dans le champ de texte, puis cliquez sur Supprimer.

Étape suivante