arrow_back

Cloud Composer : copier des tables BigQuery à différents emplacements

Testez vos connaissances et partagez-les avec notre communauté
done
Accédez à plus de 700 ateliers pratiques, badges de compétence et cours

Cloud Composer : copier des tables BigQuery à différents emplacements

Atelier 1 heure 15 minutes universal_currency_alt 5 crédits show_chart Intermédiaire
info Cet atelier peut intégrer des outils d'IA pour vous accompagner dans votre apprentissage.
Testez vos connaissances et partagez-les avec notre communauté
done
Accédez à plus de 700 ateliers pratiques, badges de compétence et cours

GSP283

Google Cloud – Ateliers adaptés au rythme de chacun

Présentation

Imaginez que vous avez des ensembles de données dans plusieurs emplacements à travers le monde et que vos données se trouvent dans des buckets Google Cloud Storage ou des tables BigQuery. Comment pouvez-vous organiser ces données afin de les consolider et de les analyser tout en dégageant des insights sur votre entreprise ?

Cloud Composer vous aide à créer des workflows et à transférer vos données entre des régions et des systèmes de stockage, avec une vue graphique intuitive. Il inclut entre autres des modèles permettant de transférer de façon facile et fiable des données de BigQuery vers Cloud Storage, et inversement.

Dans cet atelier, vous allez créer et exécuter dans Cloud Composer un workflow Apache Airflow qui effectue les tâches suivantes :

  • Obtenir la liste des tables à copier depuis un fichier de configuration
  • Exporter la liste des tables depuis un ensemble de données BigQuery situé aux États-Unis vers Cloud Storage
  • Copier les tables ainsi exportées dans des buckets Cloud Storage situés dans l'Union européenne
  • Importer la liste des tables dans l'ensemble de données BigQuery cible dans l'Union européenne

Vue graphique du DAG

Objectifs de l'atelier

Dans cet atelier, vous allez apprendre à :

  • Créer un environnement Cloud Composer
  • créer des buckets Cloud Storage ;
  • créer des ensembles de données BigQuery ;
  • créer et exécuter dans Cloud Composer des workflows Apache Airflow pour transférer des données entre Cloud Storage et BigQuery.

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 vous-même les activités dans un véritable environnement cloud, et non dans un environnement de simulation ou de démonstration. Nous vous fournissons des identifiants temporaires pour 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/navigation privée pour effectuer cet atelier. Vous éviterez ainsi les conflits entre votre compte personnel et le temporaire étudiant, qui pourraient entraîner des frais supplémentaires facturés sur votre compte personnel.
  • vous disposez d'un temps limité ; une fois l'atelier commencé, vous ne pouvez pas le mettre en pause.
Remarque : Si vous possédez déjà votre propre compte ou projet Google Cloud, veillez à ne pas l'utiliser pour réaliser cet atelier afin d'éviter que des frais supplémentaires ne vous soient facturés.

Démarrer l'atelier et se connecter à la console Google Cloud

  1. Cliquez sur le bouton Démarrer l'atelier. Si l'atelier est payant, un pop-up 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
  2. 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.
  3. 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.

  4. Cliquez sur Suivant.

  5. 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.

  6. 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.
  7. 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 gratuits.

Après quelques instants, la console Cloud s'ouvre dans cet onglet.

Remarque : Pour afficher un menu contenant la liste des produits et services Google Cloud, cliquez sur le menu de navigation en haut à gauche. Icône du menu de navigation

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.

  1. Cliquez sur Activer Cloud Shell Icône Activer Cloud Shell en haut de la console 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 YOUR_PROJECT_ID (VOTRE_ID_PROJET) pour cette session :

Your Cloud Platform project in this session is set to YOUR_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.

  1. (Facultatif) Vous pouvez lister les noms des comptes actifs à l'aide de cette commande :
gcloud auth list
  1. Cliquez sur Autoriser.

  2. Vous devez à présent obtenir le résultat suivant :

Résultat :

ACTIVE: * ACCOUNT: student-01-xxxxxxxxxxxx@qwiklabs.net To set the active account, run: $ gcloud config set account `ACCOUNT`
  1. (Facultatif) Vous pouvez lister les ID de projet à l'aide de cette commande :
gcloud config list project

Résultat :

[core] project = <ID_Projet>

Exemple de résultat :

[core] project = qwiklabs-gcp-44776a13dea667a6 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 : Créer un environnement Cloud Composer

  1. Dans la barre de titre de la console Google Cloud, saisissez Composer dans le champ de recherche, puis cliquez sur Composer dans la section "Produits et pages" pour créer un environnement Cloud Composer.

  2. Cliquez ensuite sur Créer un environnement.

  3. Dans le menu déroulant, sélectionnez Composer 3.

  4. Définissez les paramètres suivants pour votre environnement :

  • Nom : composer-advanced-lab

  • Emplacement :

  • Version de l'image : composer-3-airflow-n.n.n-build.n (sélectionnez la dernière version disponible de l'image)

  • Sous Ressources de l'environnement, sélectionnez Petit.

  • Cliquez sur le menu déroulant Afficher les options de configuration avancées et sélectionnez pour Zone de base de données Airflow.

Conservez les valeurs par défaut de tous les autres paramètres.

  1. Cliquez sur Créer.

Le processus de création de l'environnement est terminé lorsqu'une coche verte apparaît à gauche du nom de l'environnement sur la page "Environnements" de la console Cloud.

Remarque : La création de l'environnement peut prendre jusqu'à 20 minutes. Passez à la section suivante pour créer des buckets Cloud Storage et l'ensemble de données de destination BigQuery.

Cliquez sur Vérifier ma progression pour valider l'objectif.

Créer un environnement Cloud Composer

Tâche 2 : Créer des buckets Cloud Storage

Dans cette tâche, vous allez créer deux buckets Cloud Storage multirégionaux. Ces buckets serviront à copier les tables exportées entre les emplacements, à savoir des États-Unis vers l'Union européenne.

Créer un bucket aux États-Unis

  1. Accédez à Cloud Storage > Bucket, puis cliquez sur Créer.
  2. Attribuez au bucket un nom unique universel comprenant l'ID du projet (ex. : -us).
  3. Pour Type d'emplacement, sélectionnez US (plusieurs régions aux États-Unis).
  4. Conservez l'autre valeur par défaut et cliquez sur Créer.
  5. Cochez la case Appliquer la protection contre l'accès public sur ce bucket et cliquez sur Confirmer dans le pop-up L'accès public sera bloqué, si vous y êtes invité.

Créer un bucket dans l'UE

Répétez ces étapes pour créer un autre bucket dans la région EU. Le nom unique universel doit inclure l'emplacement sous la forme d'un suffixe (ex. : -eu).

Cliquez sur Vérifier ma progression pour valider l'objectif.

Créer deux buckets Cloud Storage

Tâche 3 : Créer l'ensemble de données de destination BigQuery

  1. Créez l'ensemble de données de destination BigQuery dans l'Union européenne depuis la nouvelle interface utilisateur Web de BigQuery.

  2. Accédez au menu de navigation > BigQuery.

Le message Bienvenue sur BigQuery dans la console Cloud s'affiche. Il contient un lien vers le guide de démarrage rapide et liste les mises à jour de l'interface utilisateur.

  1. Cliquez sur OK.

  2. Cliquez sur l'icône à trois points figurant à côté de l'ID de votre projet Qwiklabs, puis sélectionnez Créer un ensemble de données.

&quot;Créer un ensemble de données&quot; en surbrillance

  1. Utilisez l'ID de l'ensemble de données nyc_tlc_EU, puis sélectionnez Multirégion comme type d'emplacement et UE dans le menu déroulant.

Champ de texte pour l&#39;ID de l&#39;ensemble de données et menu déroulant pour l&#39;emplacement des données

  1. Cliquez sur CRÉER UN ENSEMBLE DE DONNÉES.

Cliquez sur Vérifier ma progression pour valider l'objectif.

Créer un ensemble de données

Tâche 4 : Présentation rapide d'Airflow et de ses concepts fondamentaux

  • Pendant la création de votre environnement, découvrez plus d'informations sur l'exemple de fichier que vous allez utiliser au cours de cet atelier.

Airflow est une plate-forme qui permet de créer, de planifier et de surveiller vos workflows de manière programmatique.

Avec Airflow, vous pouvez créer des workflows en tant que graphes de tâches orientés acycliques (DAG). Le programmeur Airflow exécute vos tâches sur un tableau de nœuds de calcul tout en suivant les dépendances spécifiées.

Concepts fondamentaux

DAG : un graphe orienté acyclique est un ensemble de tâches, organisé de façon à refléter les relations et dépendances.

Opérateur : description d'une tâche unique, généralement atomique. Par exemple, l'opérateur BashOperator permet d'exécuter une commande Bash.

Tâche : instance paramétrée d'un opérateur. Nœud dans le DAG.

Instance de tâche : exécution spécifique d'une tâche caractérisée par un DAG, une tâche et un moment précis. Un état indicatif lui est attribué : running (exécution en cours), success (réussite), failed (échec), skipped (ignorée), ...

En savoir plus sur les concepts d'Airflow dans la documentation sur les concepts.

Tâche 5 : Définir le workflow

Les workflows Cloud Composer sont constitués de DAG (graphes orientés acycliques). Le code illustré dans bq_copy_across_locations.py correspond au code du workflow, également appelé "DAG". Ouvrez maintenant le fichier pour voir comment il se présente. Vous verrez ensuite en détail certains des composants clés de ce fichier.

Pour orchestrer toutes les tâches du workflow, le DAG importe les opérateurs suivants :

  1. DummyOperator : crée des tâches de début et de fin factices pour une meilleure représentation visuelle du DAG.
  2. BigQueryToCloudStorageOperator : exporte les tables BigQuery vers les buckets Cloud Storage au format Avro.
  3. GoogleCloudStorageToGoogleCloudStorageOperator : copie les fichiers dans les buckets Cloud Storage.
  4. GoogleCloudStorageToBigQueryOperator : importe les tables des fichiers Avro dans un bucket Cloud Storage.
  • Dans cet exemple, la fonction read_table_list() est définie de manière à lire le fichier de configuration et à créer la liste des tables à copier :
# -------------------------------------------------------------------------------- # Functions # -------------------------------------------------------------------------------- def read_table_list(table_list_file): """ Reads the master CSV file that will help in creating Airflow tasks in the DAG dynamically. :param table_list_file: (String) The file location of the master file, e.g. '/home/airflow/framework/master.csv' :return master_record_all: (List) List of Python dictionaries containing the information for a single row in master CSV file. """ master_record_all = [] logger.info('Reading table_list_file from : %s' % str(table_list_file)) try: with open(table_list_file, 'rb') as csv_file: csv_reader = csv.reader(csv_file) next(csv_reader) # skip the headers for row in csv_reader: logger.info(row) master_record = { 'table_source': row[0], 'table_dest': row[1] } master_record_all.append(master_record) return master_record_all except IOError as e: logger.error('Error opening table_list_file %s: ' % str( table_list_file), e)
  • Le nom du DAG est bq_copy_us_to_eu_01. Le DAG n'étant pas programmé par défaut, il doit être déclenché manuellement.
default_args = { 'owner': 'airflow', 'start_date': datetime.today(), 'depends_on_past': False, 'email': [''], 'email_on_failure': False, 'email_on_retry': False, 'retries': 1, 'retry_delay': timedelta(minutes=5), } # DAG object. with models.DAG('bq_copy_us_to_eu_01', default_args=default_args, schedule_interval=None) as dag:
  • Pour définir le plug-in Cloud Storage, vous devez définir la classe Cloud StoragePlugin(AirflowPlugin) en mappant le hook et l'opérateur téléchargés depuis la branche Airflow 1.10-stable.
# Import operator from plugins from gcs_plugin.operators import gcs_to_gcs

Tâche 6 : Afficher les informations concernant l'environnement

  1. Retournez à Composer pour vérifier l'état de votre environnement.

  2. Une fois l'environnement créé, cliquez sur son nom pour en afficher les détails.

La page Détails de l'environnement contient des informations telles que l'URL de l'interface utilisateur Web d'Airflow, l'ID du cluster Google Kubernetes Engine et le nom du bucket Cloud Storage connecté au dossier des DAG.

Page &quot;Configuration de l&#39;environnement&quot;

Remarque : Cloud Composer utilise Cloud Storage pour stocker les DAG Apache Airflow, également appelés workflows. Chaque environnement est associé à un bucket Cloud Storage. Cloud Composer ne programme que les DAG contenus dans le bucket Cloud Storage.

Les prochaines étapes doivent être effectuées dans Cloud Shell.

Créer un environnement virtuel

Les environnements virtuels Python permettent d'isoler l'installation d'un package du système.

  1. Installez l'environnement virtualenv :
sudo apt-get install -y virtualenv
  1. Créez l'environnement virtuel :
python3 -m venv venv
  1. Activez l'environnement virtuel.
source venv/bin/activate

Tâche 7 : Créer une variable pour le bucket Cloud Storage des DAG

  • Dans Cloud Shell, exécutez la commande suivante pour copier le nom du bucket des DAG indiqué sur la page "Détails de l'environnement" et définir une variable qui s'y référera dans Cloud Shell :
Remarque : Veillez à remplacer le nom du bucket des DAG dans la commande suivante. Accédez au menu de navigation > Cloud Storage. Son nom est semblable à -composer-advanced-YOURDAGSBUCKET-bucket. DAGS_BUCKET=<nom de votre bucket de DAG>

Vous allez utiliser cette variable un certain nombre de fois au cours de cet atelier.

Tâche 8 : Définir les variables Airflow

Les variables Airflow sont un concept spécifique à Airflow, et se distinguent des variables d'environnement. Dans cette étape, vous allez définir les trois variables Airflow suivantes, qui seront utilisées par le DAG que nous allons déployer : table_list_file_path, gcs_source_bucket et gcs_dest_bucket.

Clé Valeur Détails
table_list_file_path /home/airflow/gcs/dags/bq_copy_eu_to_us_sample.csv Fichier CSV répertoriant les tables source et cible, y compris l'ensemble de données
gcs_source_bucket {ID UNIQUE}-us Bucket Cloud Storage à utiliser pour exporter la table BigQuery tabledest_bbucks depuis l'emplacement source
gcs_dest_bucket {ID UNIQUE}-eu Bucket Cloud Storage à utiliser pour importer les tables BigQuery dans l'emplacement de destination

La commande gcloud composer suivante permet d'exécuter les variables de la sous-commande CLI Airflow. La sous-commande transmet les arguments à l'outil de ligne de commande gcloud.

Pour définir les trois variables, vous allez exécuter la commande composer pour chacune des lignes de la table ci-dessus. La commande se présente comme suit :

gcloud composer environments run ENVIRONMENT_NAME \ --location LOCATION variables -- \ set KEY VALUE Vous pouvez ignorer cette erreur gcloud : (ERROR: gcloud crashed (TypeError): 'NoneType' object is not callable). Il s'agit d'un problème connu lors de l'utilisation de gcloud composer environments run avec la version 410.0.0 de gcloud. Vos variables seront quand même définies malgré le message d'erreur.
  • ENVIRONMENT_NAME correspond au nom de l'environnement.
  • LOCATION est la région Compute Engine dans laquelle se trouve l'environnement. Vous devez inclure l'option --location ou définir l'emplacement par défaut dans la commande gcloud composer avant de l'exécuter.
  • Les éléments KEY et VALUE indiquent la variable à définir et sa valeur. Ajoutez un espace, deux tirets et un espace ( -- ) entre la commande gcloud de gauche spécifiant les arguments gcloud, et les arguments associés à la sous-commande Airflow de droite. Incluez également un espace entre les arguments KEY et VALUE. Exécutez la commande gcloud composer environments run avec les variables de la sous-commande.

Exécutez les commandes suivantes dans Cloud Shell, en remplaçant gcs_source_bucket et gcs_dest_bucket par les noms des buckets que vous avez créés lors de la tâche 2.

gcloud composer environments run composer-advanced-lab \ --location {{{ project_0.default_region | "REGION" }}} variables -- \ set table_list_file_path /home/airflow/gcs/dags/bq_copy_eu_to_us_sample.csv gcloud composer environments run composer-advanced-lab \ --location {{{ project_0.default_region | "REGION" }}} variables -- \ set gcs_source_bucket {UNIQUE ID}-us gcloud composer environments run composer-advanced-lab \ --location {{{ project_0.default_region | "REGION" }}} variables -- \ set gcs_dest_bucket {UNIQUE_ID}-eu

Pour afficher la valeur d'une variable, utilisez la sous-commande variables de la CLI Airflow avec l'argument get ou utilisez l'interface utilisateur Airflow.

Par exemple, exécutez la commande suivante :

gcloud composer environments run composer-advanced-lab \ --location {{{ project_0.default_region | "REGION" }}} variables -- \ get gcs_source_bucket Remarque : Veillez à définir les trois variables Airflow utilisées par le DAG.

Tâche 9 : Importer le DAG et les dépendances dans Cloud Storage

  1. Dans Cloud Shell, copiez les fichiers d'exemple de la documentation Google Cloud pour Python :
cd ~ gcloud storage cp -r gs://spls/gsp283/python-docs-samples .
  1. Importez une copie du hook et de l'opérateur tiers dans le dossier des plug-ins du bucket Cloud Storage contenant les DAG Composer :
gcloud storage cp -r python-docs-samples/third_party/apache-airflow/plugins/* gs://$DAGS_BUCKET/plugins
  1. Importez ensuite le DAG et le fichier de configuration dans le bucket Cloud Storage des DAG de votre environnement :
gcloud storage cp python-docs-samples/composer/workflows/bq_copy_across_locations.py gs://$DAGS_BUCKET/dags gcloud storage cp python-docs-samples/composer/workflows/bq_copy_eu_to_us_sample.csv gs://$DAGS_BUCKET/dags

Cloud Composer enregistre automatiquement le DAG dans votre environnement Airflow, et les modifications sont appliquées au DAG après trois à cinq minutes. L'état de la tâche s'affiche dans l'interface Web d'Airflow. Vous pouvez voir que le DAG n'est pas programmé, conformément aux paramètres.

Tâche 10 : Explorer l'interface utilisateur d'Airflow

Pour accéder à l'interface Web Airflow à l'aide de la console Cloud :

  1. Revenez à la page Environnements de Composer.
  2. Dans la colonne Serveur Web Airflow associée à l'environnement, cliquez sur le lien Airflow.

Lien Airflow en surbrillance dans la colonne &quot;Serveur Web Airflow&quot;

  1. Cliquez sur les identifiants qui vous ont été attribués pour cet atelier.
  2. L'interface utilisateur Web Airflow s'ouvre dans une nouvelle fenêtre du navigateur. Le chargement des données se poursuit pendant ce temps. Vous pouvez continuer l'atelier en attendant.

Afficher les variables

Les variables que vous avez définies précédemment sont conservées dans votre environnement.

  • Affichez les variables en sélectionnant Admin > Variables dans la barre de menu Airflow.

Page &quot;Variables&quot;

Déclencher l'exécution manuelle du DAG

  1. Cliquez sur l'onglet Graphes orientés acycliques et attendez la fin du chargement des liens.

  2. Pour déclencher le DAG manuellement, cliquez sur le bouton de lecture pour composer_sample_bq_copy_across_locations :

Bouton &quot;Déclencher le DAG&quot;

  1. Cliquez sur Déclencher le DAG pour confirmer cette action.

Cliquez sur Vérifier ma progression pour valider l'objectif.

Importer le DAG et les dépendances dans Cloud Storage

Exploration des exécutions du DAG

Lorsque vous importez le fichier DAG dans le dossier "Graphes orientés acycliques" de Cloud Storage, il est analysé par Cloud Composer. Si aucune erreur n'est détectée, le nom du workflow apparaît dans la liste des DAG, et le workflow est placé en file d'attente en vue d'une exécution immédiate si les conditions de la programmation sont remplies. Dans notre exemple, aucune programmation n'a été définie dans les paramètres.

L'état dans la colonne Exécutions devient vert lorsque vous appuyez sur le bouton de lecture :

État vert des exécutions du DAG

  1. Cliquez sur le nom du DAG pour ouvrir sa page d'informations. Cette page comprend une représentation graphique des tâches et des dépendances du workflow.

Arborescence du DAG

  1. Dans la barre d'outils, cliquez sur Graphique, puis passez la souris sur le graphique de chaque tâche pour afficher l'état de celle-ci. Notez que la bordure autour de chaque tâche indique également son état (bordure verte = exécution en cours, rouge = échec, etc.).

Vue graphique du DAG

Pour exécuter de nouveau le workflow à partir de la vue Graphique :

  1. Dans la vue graphique de l'interface utilisateur d'Airflow, cliquez sur le graphique start (début).
  2. Cliquez sur Effacer pour réinitialiser toutes les tâches, puis sur OK pour confirmer.

Boîte de dialogue &quot;start&quot; (début)

Actualisez le navigateur pendant l'exécution du processus pour afficher les informations les plus récentes.

Tâche 11 : Valider les résultats

Vous allez maintenant vérifier l'état et les résultats du workflow. Pour ce faire, accédez à ces pages de la console Cloud :

  • Les tables exportées ont été copiées du bucket américain vers le bucket Cloud Storage européen. Cliquez sur Cloud Storage pour consulter les fichiers Avro intermédiaires dans les buckets source (États-Unis) et de destination (Union européenne).
  • La liste des tables a été importée dans l'ensemble de données BigQuery cible. Cliquez sur BigQuery, puis sur le nom de votre projet et sur l'ensemble de données nyc_tlc_EU pour vous assurer que les tables sont bien accessibles depuis l'ensemble de données que vous avez créé.

Supprimer l'environnement Cloud Composer

  1. Revenez à la page Environments dans Composer.
  2. Cochez la case à côté de votre environnement Composer.
  3. Cliquez sur SUPPRIMER.
  4. Confirmez la fenêtre contextuelle en cliquant à nouveau sur DELETE.

Félicitations !

Vous avez copié des tables de manière programmatique de l'emplacement américain vers l'emplacement européen. Cet atelier se base sur cet article de blog publié par David Sabater Dinter.

Étapes suivantes

Formations et certifications Google Cloud

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 : 21 juin 2024

Dernier test de l'atelier : 21 juin 2024

Copyright 2024 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.

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