Dans Google Cloud, vous pouvez créer des pipelines de données qui exécutent du code Python pour ingérer des données d'ensembles de données publics dans BigQuery et les transformer à l'aide des services Google Cloud suivants :
Cloud Storage
Dataflow
BigQuery
Dans cet atelier, vous allez utiliser ces services pour créer votre propre pipeline de données, en arrêtant des choix en termes de conception et d'implémentation pour garantir la conformité de votre prototype aux exigences. Pensez à ouvrir les fichiers Python et à bien lire les commentaires lorsque vous y êtes invité.
Objectifs de l'atelier
Dans cet atelier, vous allez apprendre à effectuer les tâches suivantes :
Créer et exécuter des pipelines Dataflow (Python) pour l'ingestion de données
Créer et exécuter des pipelines Dataflow (Python) pour la transformation et l'enrichissement de données
Préparation
Avant de cliquer sur le bouton "Démarrer l'atelier"
Lisez ces instructions. Les ateliers sont minutés, et vous ne pouvez pas les mettre en pause. Le minuteur, qui démarre lorsque vous cliquez sur Démarrer l'atelier, indique combien de temps les ressources Google Cloud resteront accessibles.
Cet atelier pratique vous permet de suivre les activités dans un véritable environnement cloud, et non dans un environnement de simulation ou de démonstration. Des identifiants temporaires vous sont fournis pour vous permettre de vous connecter à Google Cloud le temps de l'atelier.
Pour réaliser cet atelier :
Vous devez avoir accès à un navigateur Internet standard (nous vous recommandons d'utiliser Chrome).
Remarque : Ouvrez une fenêtre de navigateur en mode incognito (recommandé) ou de navigation privée pour effectuer cet atelier. Vous éviterez ainsi les conflits entre votre compte personnel et le compte temporaire de participant, qui pourraient entraîner des frais supplémentaires facturés sur votre compte personnel.
Vous disposez d'un temps limité. N'oubliez pas qu'une fois l'atelier commencé, vous ne pouvez pas le mettre en pause.
Remarque : Utilisez uniquement le compte de participant pour cet atelier. Si vous utilisez un autre compte Google Cloud, des frais peuvent être facturés à ce compte.
Démarrer l'atelier et se connecter à la console Google Cloud
Cliquez sur le bouton Démarrer l'atelier. Si l'atelier est payant, une boîte de dialogue s'affiche pour vous permettre de sélectionner un mode de paiement.
Sur la gauche, vous trouverez le panneau "Détails concernant l'atelier", qui contient les éléments suivants :
Le bouton "Ouvrir la console Google Cloud"
Le temps restant
Les identifiants temporaires que vous devez utiliser pour cet atelier
Des informations complémentaires vous permettant d'effectuer l'atelier
Cliquez sur Ouvrir la console Google Cloud (ou effectuez un clic droit et sélectionnez Ouvrir le lien dans la fenêtre de navigation privée si vous utilisez le navigateur Chrome).
L'atelier lance les ressources, puis ouvre la page "Se connecter" dans un nouvel onglet.
Conseil : Réorganisez les onglets dans des fenêtres distinctes, placées côte à côte.
Remarque : Si la boîte de dialogue Sélectionner un compte s'affiche, cliquez sur Utiliser un autre compte.
Si nécessaire, copiez le nom d'utilisateur ci-dessous et collez-le dans la boîte de dialogue Se connecter.
{{{user_0.username | "Username"}}}
Vous trouverez également le nom d'utilisateur dans le panneau "Détails concernant l'atelier".
Cliquez sur Suivant.
Copiez le mot de passe ci-dessous et collez-le dans la boîte de dialogue Bienvenue.
{{{user_0.password | "Password"}}}
Vous trouverez également le mot de passe dans le panneau "Détails concernant l'atelier".
Cliquez sur Suivant.
Important : Vous devez utiliser les identifiants fournis pour l'atelier. Ne saisissez pas ceux de votre compte Google Cloud.
Remarque : Si vous utilisez votre propre compte Google Cloud pour cet atelier, des frais supplémentaires peuvent vous être facturés.
Accédez aux pages suivantes :
Acceptez les conditions d'utilisation.
N'ajoutez pas d'options de récupération ni d'authentification à deux facteurs (ce compte est temporaire).
Ne vous inscrivez pas à des essais sans frais.
Après quelques instants, la console Cloud s'ouvre dans cet onglet.
Remarque : Pour accéder aux produits et services Google Cloud, cliquez sur le menu de navigation ou saisissez le nom du service ou du produit dans le champ Recherche.
Activer Cloud Shell
Cloud Shell est une machine virtuelle qui contient de nombreux outils pour les développeurs. Elle comprend un répertoire d'accueil persistant de 5 Go et s'exécute sur Google Cloud. Cloud Shell vous permet d'accéder via une ligne de commande à vos ressources Google Cloud.
Cliquez sur Activer Cloud Shell en haut de la console Google Cloud.
Passez les fenêtres suivantes :
Accédez à la fenêtre d'informations de Cloud Shell.
Autorisez Cloud Shell à utiliser vos identifiants pour effectuer des appels d'API Google Cloud.
Une fois connecté, vous êtes en principe authentifié et le projet est défini sur votre ID_PROJET : . Le résultat contient une ligne qui déclare l'ID_PROJET pour cette session :
Your Cloud Platform project in this session is set to {{{project_0.project_id | "PROJECT_ID"}}}
gcloud est l'outil de ligne de commande pour Google Cloud. Il est préinstallé sur Cloud Shell et permet la complétion par tabulation.
(Facultatif) Vous pouvez lister les noms des comptes actifs à l'aide de cette commande :
gcloud auth list
Cliquez sur Autoriser.
Résultat :
ACTIVE: *
ACCOUNT: {{{user_0.username | "ACCOUNT"}}}
To set the active account, run:
$ gcloud config set account `ACCOUNT`
(Facultatif) Vous pouvez lister les ID de projet à l'aide de cette commande :
gcloud config list project
Résultat :
[core]
project = {{{project_0.project_id | "PROJECT_ID"}}}
Remarque : Pour consulter la documentation complète sur gcloud, dans Google Cloud, accédez au guide de présentation de la gcloud CLI.
Tâche 1 : Vérifier que l'API Dataflow est activée
Pour vous assurer que vous avez bien accès à l'API requise, redémarrez la connexion à l'API Dataflow.
Important : Même si l'API est déjà activée, suivez les étapes 1 à 4 ci-dessous pour la désactiver puis la réactiver, afin de la redémarrer correctement.
Dans la console Cloud, en haut, saisissez "API Dataflow" dans la barre de recherche. Cliquez sur API Dataflow dans les résultats.
Cliquez sur Gérer.
Cliquez sur Désactiver l'API.
Si vous êtes invité à confirmer votre choix, cliquez sur Désactiver.
Cliquez sur Activer.
Une fois l'API réactivée, l'option permettant de la désactiver s'affiche sur la page.
Tester la tâche terminée
Cliquez sur Vérifier ma progression pour valider la tâche exécutée.
Cliquez sur Vérifier ma progression pour valider la tâche exécutée.
Copier des fichiers dans votre bucket
Tâche 5 : Créer un ensemble de données BigQuery
Dans Cloud Shell, créez un ensemble de données BigQuery nommé lake. C'est par le biais de cet ensemble de données que toutes vos tables seront chargées dans BigQuery :
bq mk lake
Tester la tâche terminée
Cliquez sur Vérifier ma progression pour valider la tâche exécutée.
Créer l'ensemble de données BigQuery (nom : lake)
Tâche 6 : Créer un pipeline Dataflow
Dans cette section, vous allez créer un pipeline Dataflow de type "append-only" (ajout uniquement) qui permettra d'ingérer des données dans la table BigQuery. Vous pouvez utiliser l'éditeur de code intégré pour afficher et modifier le code dans la console Google Cloud.
Ouvrir l'éditeur de code Cloud Shell
Pour accéder au code source, cliquez sur l'icône Ouvrir l'éditeur dans Cloud Shell :
Si vous y êtes invité, cliquez sur Ouvrir dans une nouvelle fenêtre. L'éditeur de code s'ouvrira en ce cas dans une nouvelle fenêtre. L'éditeur Cloud Shell vous permet de modifier des fichiers dans l'environnement Cloud Shell. Lorsque vous vous trouvez dans l'éditeur, vous pouvez revenir à Cloud Shell en cliquant sur Ouvrir le terminal.
Tâche 7 : Ingestion de données avec un pipeline Dataflow
Vous allez maintenant créer un pipeline Dataflow avec une source TextIO et une destination BigQueryIO pour ingérer des données dans BigQuery. Les opérations à réaliser sont les suivantes :
Ingérer les fichiers à partir de Cloud Storage
Filtrer la ligne d'en-tête dans les fichiers
Convertir les lignes lues en objets de dictionnaire
Envoyer les lignes dans BigQuery
Tâche 8 : Examiner le code Python du pipeline
Dans l'éditeur de code, accédez à dataflow-python-examples > dataflow_python_examples, puis ouvrez le fichier data_ingestion.py. Lisez les commentaires expliquant les actions effectuées par le code. Ce code ajoute une table à l'ensemble de données lake dans BigQuery.
Tâche 9 : Exécuter le pipeline Apache Beam
Pour effectuer cette étape, revenez dans votre session Cloud Shell. Vous allez procéder à quelques opérations de configuration pour les bibliothèques Python requises.
Le job Dataflow de cet atelier nécessite Python 3.8. Pour vous assurer d'utiliser la bonne version, vous allez exécuter les processus Dataflow dans un conteneur Docker Python 3.8.
Exécutez la commande suivante dans Cloud Shell pour démarrer un conteneur Python :
docker run -it -e PROJECT=$PROJECT -v $(pwd)/dataflow-python-examples:/dataflow python:3.8 /bin/bash
Cette commande extrait un conteneur Docker avec la dernière version stable de Python 3.8, puis lance un shell de commande vous permettant d'exécuter les prochaines commandes dans votre conteneur. L'option -v fournit le code source en tant que volume pour le conteneur. Ainsi, nous pouvons le modifier dans l'éditeur Cloud Shell tout en gardant la possibilité d'y accéder dans le conteneur en cours d'exécution.
Dès que l'extraction du conteneur est terminée et que celui-ci est lancé dans Cloud Shell, exécutez la commande suivante pour installer apache-beam dans ce conteneur en cours d'exécution :
pip install apache-beam[gcp]==2.59.0
Ensuite, dans le conteneur en cours d'exécution dans Cloud Shell, accédez au répertoire auquel vous avez associé le code source :
cd dataflow/
Exécuter le pipeline Dataflow d'ingestion dans le cloud
Le code suivant lancera les nœuds de calcul requis et les fermera à la fin du processus :
Revenez à la console Cloud et accédez au menu de navigation > Dataflow pour afficher l'état de votre job.
Cliquez sur le nom de votre job pour voir sa progression. Lorsque l'état du job indique Réussite, vous pouvez passer à l'étape suivante. Le démarrage, l'exécution et l'arrêt de ce pipeline Dataflow prennent au total environ cinq minutes.
Accédez à BigQuery (Menu de navigation > BigQuery) pour vérifier que vos données ont bien été intégrées.
Cliquez sur le nom du projet pour afficher la table usa_names sous l'ensemble de données lake.
Cliquez sur la table, puis accédez à l'onglet Aperçu pour afficher des exemples de données de usa_names.
Remarque : Si la table usa_names n'apparaît pas, actualisez la page ou essayez d'afficher les tables dans l'UI classique de BigQuery.
Tester la tâche terminée
Cliquez sur Vérifier ma progression pour valider la tâche exécutée.
Créer un pipeline Dataflow d'ingestion de données
Tâche 10 : Transformation des données
Vous allez maintenant créer un pipeline Dataflow avec une source TextIO et une destination BigQueryIO pour ingérer des données dans BigQuery. Les opérations à réaliser sont les suivantes :
Ingérer les fichiers à partir de Cloud Storage
Convertir les lignes lues en objets de dictionnaire
Transformer les données qui contiennent l'année dans un format que BigQuery reconnaît comme une date
Envoyer les lignes dans BigQuery
Examiner le code Python du pipeline de transformation
Dans l'éditeur de code, ouvrez le fichier data_transformation.py. Lisez les commentaires expliquant les actions effectuées par le code.
Tâche 11 : Exécuter le pipeline de transformation Dataflow
Vous allez exécuter le pipeline Dataflow dans le cloud. Ce code lancera les nœuds de calcul requis et les fermera à la fin du processus.
Accédez au menu de navigation > Dataflow, puis cliquez sur le nom du job pour afficher son état. Le démarrage, l'exécution et l'arrêt de ce pipeline Dataflow prennent au total environ cinq minutes.
Lorsque l'état du job indique Réussite dans l'écran Dataflow, accédez à BigQuery pour vérifier que vos données ont bien été intégrées.
Vous devez voir la table usa_names_transformed sous l'ensemble de données lake.
Cliquez sur la table, puis accédez à l'onglet Aperçu pour afficher des exemples de données de usa_names_transformed.
Remarque : Si la table usa_names_transformed n'apparaît pas, actualisez la page ou essayez d'afficher les tables dans l'UI classique de BigQuery.
Tester la tâche terminée
Cliquez sur Vérifier ma progression pour valider la tâche exécutée.
Créer un pipeline Dataflow de transformation de données
Tâche 12 : Enrichissement des données
Vous allez maintenant créer un pipeline Dataflow avec une source TextIO et une destination BigQueryIO pour ingérer des données dans BigQuery. Les opérations à réaliser sont les suivantes :
Ingérer les fichiers à partir de Cloud Storage
Filtrer la ligne d'en-tête dans les fichiers
Convertir les lignes lues en objets de dictionnaire
Envoyer les lignes dans BigQuery
Tâche 13 : Examiner le code Python du pipeline d'enrichissement des données
Dans l'éditeur de code, ouvrez le fichier data_enrichment.py.
Lisez les commentaires expliquant les actions effectuées par le code. Ce code envoie les données vers BigQuery.
La ligne 83 se présente actuellement comme suit :
values = [x.decode('utf8') for x in csv_row]
Modifiez-la de sorte qu'elle ressemble à ceci :
values = [x for x in csv_row]
Lorsque vous avez terminé de modifier cette ligne, n'oubliez pas d'enregistrer le fichier mis à jour. Pour ce faire, cliquez sur le menu déroulant Fichier de l'éditeur, puis sur Enregistrer.
Tâche 14 : Exécuter le pipeline Dataflow d'enrichissement de données
Vous allez maintenant exécuter le pipeline Dataflow dans le cloud.
Exécutez le code suivant dans Cloud Shell pour lancer les nœuds de calcul requis et les arrêter à la fin du processus :
Accédez au menu de navigation > Dataflow pour afficher l'état de votre job. Le démarrage, l'exécution et l'arrêt de ce pipeline Dataflow prennent au total environ cinq minutes.
Lorsque l'état du job indique Réussite dans l'écran Dataflow, accédez à BigQuery pour vérifier que vos données ont bien été intégrées.
Vous devez voir la table usa_names_enriched sous l'ensemble de données lake.
Cliquez sur la table, puis accédez à l'onglet Aperçu pour afficher des exemples de données de usa_names_enriched.
Remarque : Si la table usa_names_enriched n'apparaît pas, actualisez la page ou essayez d'afficher les tables dans l'UI classique de BigQuery.
Tester la tâche d'enrichissement de données terminée
Cliquez sur Vérifier ma progression pour valider la tâche exécutée.
Créer un pipeline Dataflow d'enrichissement des données
Tâche 15 : Créer un pipeline entre le lac de données et un magasin et examiner le code Python du pipeline
Créez maintenant un pipeline Dataflow qui lit les données de deux sources de données BigQuery et les associe. Les opérations à réaliser sont les suivantes :
Ingérer les fichiers de deux sources BigQuery
Associer les deux sources de données
Filtrer la ligne d'en-tête dans les fichiers
Convertir les lignes lues en objets de dictionnaire
Envoyer les lignes dans BigQuery
Dans l'éditeur de code, ouvrez le fichier data_lake_to_mart.py. Lisez les commentaires expliquant les actions effectuées par le code. Ce code associe deux tables et insère les données obtenues dans BigQuery.
Tâche 16 : Exécuter le pipeline Apache Beam pour associer les données et créer la table qui en résulte dans BigQuery
Exécutez maintenant le pipeline Dataflow dans le cloud.
Exécutez le bloc de code suivant dans Cloud Shell pour lancer les nœuds de calcul requis et les arrêter à la fin du processus :
Accédez au menu de navigation > Dataflow, puis cliquez sur le nom de ce nouveau job pour afficher son état. Le démarrage, l'exécution et l'arrêt de ce pipeline Dataflow prennent au total environ cinq minutes.
Lorsque l'état du job indique Réussite dans l'écran Dataflow, accédez à BigQuery pour vérifier que vos données ont bien été intégrées.
Vous devez voir la table orders_denormalized_sideinput sous l'ensemble de données lake.
Cliquez sur la table, puis accédez à l'onglet Aperçu pour afficher des exemples de données de orders_denormalized_sideinput.
Remarque : Si la table orders_denormalized_sideinput n'apparaît pas, actualisez la page ou essayez d'afficher les tables dans l'UI classique de BigQuery.
Tester la tâche JOIN terminée
Cliquez sur Vérifier ma progression pour valider la tâche exécutée.
Créer un pipeline Dataflow entre un lac de données et un magasin
Tester vos connaissances
Voici quelques questions à choix multiples qui vous permettront de mieux maîtriser les concepts abordés lors de cet atelier. Répondez-y du mieux que vous le pouvez.
Félicitations !
Vous avez exécuté du code Python à l'aide de Dataflow pour ingérer des données dans BigQuery et les transformer.
Étapes suivantes et informations supplémentaires
Vous souhaitez en savoir plus ? Consultez la documentation officielle sur :
Les formations et certifications Google Cloud vous aident à tirer pleinement parti des technologies Google Cloud. Nos cours portent sur les compétences techniques et les bonnes pratiques à suivre pour être rapidement opérationnel et poursuivre votre apprentissage. Nous proposons des formations pour tous les niveaux, à la demande, en salle et à distance, pour nous adapter aux emplois du temps de chacun. Les certifications vous permettent de valider et de démontrer vos compétences et votre expérience en matière de technologies Google Cloud.
Dernière mise à jour du manuel : 11 février 2024
Dernier test de l'atelier : 12 octobre 2023
Copyright 2025 Google LLC. Tous droits réservés. Google et le logo Google sont des marques de Google LLC. Tous les autres noms d'entreprises et de produits peuvent être des marques des entreprises auxquelles ils sont associés.
Les ateliers créent un projet Google Cloud et des ressources pour une durée déterminée.
Les ateliers doivent être effectués dans le délai imparti et ne peuvent pas être mis en pause. Si vous quittez l'atelier, vous devrez le recommencer depuis le début.
En haut à gauche de l'écran, cliquez sur Démarrer l'atelier pour commencer.
Utilisez la navigation privée
Copiez le nom d'utilisateur et le mot de passe fournis pour l'atelier
Cliquez sur Ouvrir la console en navigation privée
Connectez-vous à la console
Connectez-vous à l'aide des identifiants qui vous ont été attribués pour l'atelier. L'utilisation d'autres identifiants peut entraîner des erreurs ou des frais.
Acceptez les conditions d'utilisation et ignorez la page concernant les ressources de récupération des données.
Ne cliquez pas sur Terminer l'atelier, à moins que vous n'ayez terminé l'atelier ou que vous ne vouliez le recommencer, car cela effacera votre travail et supprimera le projet.
Ce contenu n'est pas disponible pour le moment
Nous vous préviendrons par e-mail lorsqu'il sera disponible
Parfait !
Nous vous contacterons par e-mail s'il devient disponible
Un atelier à la fois
Confirmez pour mettre fin à tous les ateliers existants et démarrer celui-ci
Utilisez la navigation privée pour effectuer l'atelier
Ouvrez une fenêtre de navigateur en mode navigation privée pour effectuer cet atelier. Vous éviterez ainsi les conflits entre votre compte personnel et le compte temporaire de participant, qui pourraient entraîner des frais supplémentaires facturés sur votre compte personnel.
Dans cet atelier, vous allez créer plusieurs pipelines de données qui ingèrent des données d'un ensemble de données public dans BigQuery et qui les transforment.
Durée :
0 min de configuration
·
Accessible pendant 90 min
·
Terminé après 90 min