Planifier des exécutions en production
Ce guide de démarrage rapide vous explique comment planifier des exécutions en production dans Dataform :
- Créez un dépôt Dataform.
- Attribuez les rôles requis.
Créez une configuration de version et une configuration de workflow.
Créez une configuration de version
productionet définissez la fréquence de création des résultats de compilationproduction. Créez ensuite une configuration de workflowproduction, sélectionnez la configuration de versionproductionet définissez une programmation pour l'exécution des résultats de compilationproduction.
Avant de commencer
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
Enable the BigQuery and Dataform APIs.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles. -
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
Enable the BigQuery and Dataform APIs.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles. -
Administrateur Dataform (
roles/dataform.admin) sur les dépôts -
Éditeur Dataform (
roles/dataform.editor) sur les espaces de travail et les appels de workflows -
Utilisateur du compte de service (
roles/iam.serviceAccountUser) sur le compte de service personnalisé -
Administrateur IAM du projet (
roles/resourcemanager.projectIamAdmin) sur le projet - Éditeur de données BigQuery
(
roles/bigquery.dataEditor) sur les projets auxquels Dataform doit avoir accès en lecture et en écriture. Il s'agit généralement du projet hébergeant votre dépôt Dataform. - Lecteur de données BigQuery
(
roles/bigquery.dataViewer) sur les projets auxquels Dataform doit avoir accès en lecture seule. - Utilisateur de job BigQuery (
roles/bigquery.jobUser) sur le projet hébergeant votre dépôt Dataform. - Créateur de jetons du compte de service
(
roles/iam.serviceAccountTokenCreator) - Utilisateur du compte de service
(
roles/iam.serviceAccountUser) Dans la console Google Cloud , accédez à la page IAM.
Cliquez sur Accorder l'accès.
Dans le champ Nouveaux comptes principaux, saisissez l'ID de votre compte de service personnalisé.
Dans le menu Sélectionner un rôle, sélectionnez les rôles suivants un par un, en utilisant Ajouter un autre rôle pour chaque rôle supplémentaire :
- Éditeur de données BigQuery
- Lecteur de données BigQuery
- Utilisateur de job BigQuery
Cliquez sur Enregistrer.
Dans la console Google Cloud , accédez à la page Comptes de service.
Sélectionnez votre compte de service personnalisé.
Accédez à Comptes principaux avec accès, puis cliquez sur Accorder l'accès.
Dans le champ Nouveaux comptes principaux, saisissez l'ID de votre agent de service Dataform par défaut.
L'ID de votre agent de service Dataform par défaut se présente au format suivant :
service-PROJECT_NUMBER@gcp-sa-dataform.iam.gserviceaccount.comDans la liste Sélectionner un rôle, ajoutez les rôles suivants :
- Utilisateur du compte de service
- Créateur de jetons du compte de service
Cliquez sur Enregistrer.
Dans la console Google Cloud , accédez à la page Dataform.
Cliquez sur Créer un dépôt.
Sur la page CRÉER UN DÉPÔT, procédez comme suit :
Dans le champ ID du dépôt, saisissez
quickstart-production.Dans la liste Région, sélectionnez
europe-west4.Dans le champ Compte de service, cliquez sur Saisir manuellement, puis saisissez le nom de votre compte de service personnalisé. Assurez-vous de saisir votre compte de service personnalisé dans ce champ.
Cliquez sur Créer.
Cliquez sur Accéder aux dépôts.
Dans la console Google Cloud , accédez à la page Dataform.
Cliquez sur
quickstart-production.Cliquez sur Versions et planification, puis sur Créer une version de production.
Dans le volet Créer une configuration de version, configurez les paramètres suivants :
- Dans le champ ID de version, saisissez
production. - Dans le champ Commitish Git, conservez la valeur par défaut
main. - Dans la section Fréquence de programmation, dans le menu Répétitions, sélectionnez Personnalisée.
- Dans le champ Planification personnalisée, saisissez
0 16 * * *. Dans le menu Fuseau horaire, sélectionnez un fuseau horaire UTC+1. Par exemple, Heure normale d'Europe centrale (CET).
Chaque jour à 16h UTC+1, Dataform compile le dépôt
quickstart-productionet applique les paramètres de compilation configurés dans cette configuration de version pour créer des résultats de compilationproduction.
- Dans le champ ID de version, saisissez
Cliquez sur Créer.
La configuration de version
productioncrée un résultat de compilation pour l'ensemble du dépôtquickstart-productiontous les jours à 16h UTC+1.Assurez-vous d'être dans l'onglet Sorties et programmation. Accédez à la section Configurations de workflow, puis cliquez sur Créer.
Dans le volet Create workflow configuration (Créer une configuration de workflow), configurez les paramètres suivants :
- Dans le champ ID de configuration, saisissez
production. - Dans le menu Configuration de version, sélectionnez
production. - Dans la section Fréquence de programmation, dans le menu Répétitions, sélectionnez Personnalisée.
- Dans le champ Planification personnalisée, saisissez
0 17 * * *. Dans le menu Fuseau horaire, sélectionnez un fuseau horaire UTC+1. Par exemple, Heure normale d'Europe centrale (CET).
Chaque jour à 17h UTC+1, Dataform exécute le dernier résultat de compilation
productiondu dépôtquickstart-production.Cliquez sur Toutes les actions.
Dataform exécute toutes les actions du workflow dans le résultat de compilation
production.
- Dans le champ ID de configuration, saisissez
Cliquez sur Créer.
La configuration du workflow
productionexécute l'intégralité du résultat de compilation le plus récent créé par la configuration de version de production tous les jours à 17h UTC+1.Dans la console Google Cloud , accédez à la page Dataform.
Sélectionnez le dépôt
quickstart-production.Cliquez sur Sorties et programmation.
Dans la section Configurations des versions, cliquez sur
production.Dans la console Google Cloud , accédez à la page Dataform.
Sélectionnez le dépôt
quickstart-production.Cliquez sur Journaux d'exécution de workflow.
Sélectionnez une exécution de workflow pour afficher des informations plus détaillées, y compris l'état de chaque action et les journaux éventuels.
Dans la console Google Cloud , accédez à la page BigQuery.
Dans le panneau Explorateur, développez votre projet et sélectionnez
dataform_production.Cliquez sur le menu Actions, puis sélectionnez Supprimer.
Dans la boîte de dialogue Supprimer l'ensemble de données, saisissez delete, puis cliquez sur Supprimer.
Dans la console Google Cloud , accédez à la page Dataform.
Cliquez sur
quickstart-production.Cliquez sur Versions et programmation, puis accédez à la section Configurations des versions.
À côté de la configuration de version
production, cliquez sur le menu Plus, puis sur Supprimer.Dans la boîte de dialogue Supprimer la configuration de version, cliquez sur Supprimer.
Dans la console Google Cloud , accédez à la page Dataform.
Cliquez sur
quickstart-production.Cliquez sur Versions et programmation, puis accédez à la section Configurations de workflow.
À côté de la configuration de workflow
production, cliquez sur le menu Plus, puis sur Supprimer.Dans la boîte de dialogue Supprimer la configuration de version, cliquez sur Supprimer.
Dans la console Google Cloud , accédez à la page Dataform.
À côté de
quickstart-production, cliquez sur le menu Plus, puis sélectionnez Supprimer.Dans la fenêtre Supprimer le dépôt, saisissez le nom du dépôt pour confirmer la suppression.
Pour confirmer l'opération, cliquez sur Supprimer.
- Pour en savoir plus sur les comptes de service, consultez À propos des comptes de service personnalisés et des agents de service Dataform.
- Pour en savoir plus sur le cycle de vie du code dans Dataform, consultez Présentation du cycle de vie du code dans Dataform.
- Pour en savoir plus sur les bonnes pratiques concernant le cycle de vie des workflows dans Dataform, consultez Bonnes pratiques concernant le cycle de vie des workflows.
- Pour en savoir plus sur les configurations de version dans Dataform, consultez Créer une configuration de version.
- Pour en savoir plus sur les configurations de workflow dans Dataform, consultez Planifier des exécutions avec des configurations de workflow.
Sélectionnez ou créez également un compte de service personnalisé pour exécuter des workflows dans BigQuery.
Rôles requis
Pour obtenir les autorisations nécessaires pour effectuer toutes les tâches de ce tutoriel, demandez à votre administrateur de vous accorder les rôles IAM suivants :
Pour en savoir plus sur l'attribution de rôles, consultez Gérer l'accès aux projets, aux dossiers et aux organisations.
Vous pouvez également obtenir les autorisations requises avec des rôles personnalisés ou d'autres rôles prédéfinis.
Attribuer les rôles requis
Pour exécuter des workflows dans BigQuery, vous pouvez utiliser un compte de service personnalisé ou votre compte Google (aperçu). Toutefois, les identifiants de compte de service personnalisé sont l'option par défaut pour les exécutions planifiées. Il est déconseillé d'utiliser les identifiants de compte utilisateur Google pour les exécutions planifiées.
Pour exécuter des workflows dans BigQuery, votre compte de service personnalisé doit disposer des rôles requis suivants :
Pour permettre à Dataform d'utiliser votre compte de service personnalisé, l'agent de service Dataform par défaut doit disposer des rôles suivants sur la ressource de compte de service personnalisé :
Pour attribuer ces rôles, procédez comme suit :
Créer un dépôt Dataform
Créer une configuration de version et une configuration de workflow
Pour créer les résultats de la compilation en production du dépôt quickstart-production et planifier l'exécution des tables production, procédez comme suit :
Afficher les précédents résultats de compilation production
Pour afficher les anciens résultats de la compilation production planifiée, procédez comme suit :
Afficher les exécutions de workflow production précédentes
Pour afficher les exécutions de workflow production précédentes, procédez comme suit :
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 :
Supprimer l'ensemble de données créé dans BigQuery
Pour éviter que des frais ne vous soient facturés pour les éléments BigQuery, procédez comme suit afin de supprimer l'ensemble de données dataform_production :
Supprimer la configuration de version Dataform
La création de configurations de version Dataform n'entraîne aucuns frais. Toutefois, si vous souhaitez supprimer la configuration de version production, procédez comme suit :
Supprimer la configuration de workflow Dataform
Pour éviter que des frais liés aux éléments BigQuery ne vous soient facturés, procédez comme suit afin de supprimer la configuration de workflow Dataform production :
Supprimer le dépôt Dataform
La création de dépôts Dataform n'entraîne aucuns frais. Toutefois, si vous souhaitez supprimer un dépôt et tout son contenu, procédez comme suit :