Planifier des exécutions en production
Ce guide de démarrage rapide vous explique comment planifier des exécutions en production dans Dataform :
- Créer un dépôt Dataform.
- Attribuer les rôles requis.
Créer 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. Ensuite, créez 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
- Connectez-vous à votre Google Cloud compte. 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 sans frais pour exécuter, tester et déployer des charges de travail.
-
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.
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 guide de démarrage rapide, demandez à votre administrateur de vous accorder les rôles IAM suivants :
-
Administrateur Dataform (
roles/dataform.admin) sur le dépôt -
Utilisateur du compte de service (
roles/iam.serviceAccountUser) sur le compte de service personnalisé -
Administrateur IAM du projet (
roles/resourcemanager.projectIamAdmin) sur le projet
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. L'utilisation des identifiants de compte utilisateur Google est déconseillée pour les exécutions planifiées.
Votre compte de service personnalisé doit disposer des rôles requis suivants :
- Éditeur de données BigQuery
(
roles/bigquery.dataEditor) sur les projets ou les ensembles de données BigQuery spécifiques auxquels Dataform doit avoir accès en lecture et en écriture. Cela inclut généralement le projet hébergeant votre dépôt Dataform. - Lecteur de données BigQuery
(
roles/bigquery.dataViewer) sur les projets ou les ensembles de données BigQuery spécifiques 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.
Pour que Dataform puisse 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é :
- Créateur de jetons du compte de service
(
roles/iam.serviceAccountTokenCreator) - Utilisateur du compte de service
(
roles/iam.serviceAccountUser)
Pour attribuer ces rôles, procédez comme suit :
Dans la Google Cloud console, 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 Google Cloud console, accédez à la page Comptes de service.
Sélectionnez votre compte de service personnalisé.
Accédez à Comptes principaux ayant 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 est au format suivant :
service-PROJECT_NUMBER@gcp-sa-dataform.iam.gserviceaccount.comRemplacez
PROJECT_NUMBERpar l'ID numérique de votre Google Cloud projet. Vous trouverez l'ID de votre Google Cloud projet dans le Google Cloud tableau de bord de la console. Pour en savoir plus, reportez-vous à la section Identifier les projets.Dans 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.
Pour en savoir plus sur l'attribution de rôles, consultez Accorder à Dataform l'accès requis.
Créer un dépôt Dataform
Dans la Google Cloud console, 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 la liste Compte de service, sélectionnez un compte de service personnalisé pour le dépôt.
Dans la section Vérifications d'autorisations actAs, appliquez les vérifications d'autorisations aux actions de l'utilisateur sur le dépôt.
Cliquez sur Créer.
Cliquez sur Accéder aux dépôts.
Créer une configuration de version et une configuration de workflow
Pour créer les résultats de compilation en production du quickstart-production
dépôt et planifier une exécution des tables production, procédez comme suit :
Dans la Google Cloud console, 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 planification, dans le menu Répéter, 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
quickstart-productiondépôt et 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 que vous êtes bien dans l'onglet Versions et planification. Accédez à la section Configurations de workflow et cliquez sur Créer.
Dans le volet 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 planification, dans le menu Répéter, 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 de workflow dans le résultat de compilation
production.
- Dans le champ ID de configuration, saisissez
Cliquez sur Créer.
La configuration de workflow
productionexécute l'intégralité du dernier résultat de compilation créé par la configuration de version de production tous les jours à 17h UTC+1.
Afficher les anciens résultats de compilation production
Pour afficher les anciens résultats de compilation production planifiés, procédez comme suit :
Dans la Google Cloud console, accédez à la page Dataform.
Sélectionnez le dépôt
quickstart-production.Cliquez sur Versions et planification.
Dans la section Configurations des versions, cliquez sur
production.
Afficher les anciennes exécutions de workflow production
Pour afficher les anciennes exécutions de workflow production, procédez comme suit :
Dans la Google Cloud console, 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.
Effectuer un nettoyage
Pour éviter que les ressources utilisées dans cette démonstration soient facturées sur votre Google Cloud compte pour les ressources utilisées sur cette page, 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 :
Dans la Google Cloud console, 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.
Supprimer la configuration de version Dataform
La création de configurations de version Dataform n'engendre aucuns frais. Toutefois, si vous souhaitez supprimer la configuration de version production, procédez comme suit :
Dans la Google Cloud console, accédez à la page Dataform.
Cliquez sur
quickstart-production.Cliquez sur Versions et planification, puis accédez à la section Configurations des versions.
À partir de la configuration de version
production, cliquez sur le Plus menu, puis sur Supprimer.Dans la boîte de dialogue Supprimer la configuration de version, cliquez sur Supprimer.
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 production Dataform :
Dans la Google Cloud console, accédez à la page Dataform.
Cliquez sur
quickstart-production.Cliquez sur Versions et planification, puis accédez à la section Configurations de workflow.
À côté de la configuration de workflow
production, cliquez sur le Plus menu, puis sur Supprimer.Dans la boîte de dialogue Supprimer la configuration de version, cliquez sur Supprimer.
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 :
Dans la Google Cloud console, 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.
Étape suivante
- 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 Introduction au 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.