Créer des environnements de développement
Ce guide de démarrage rapide vous explique comment créer des environnements de développement individuels dans Dataform afin que chaque développeur puisse travailler dans son propre environnement de développement :
- Créez un dépôt Dataform.
- Attribuez les rôles requis.
Configurer des remplacements de compilation d'espace de travail
Configurez les remplacements de compilation que Dataform applique à tous les espaces de travail de votre dépôt, transformant ainsi les espaces de travail en environnements de développement isolés.
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. 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é ou l'adresse e-mail de votre compte Google (Aperçu).
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 à IAM > 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.comRemplacez
PROJECT_NUMBERpar le numéro de votre projetGoogle Cloud .Dans la liste Sélectionner un rôle, ajoutez le rôle 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-dev.Dans la liste Région, sélectionnez
europe-west4.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-dev.Cliquez sur Paramètres, puis sur Modifier.
Dans le volet Remplacements de compilation d'espace de travail, saisissez
${workspaceName}dans le champ Suffixe du schéma.Lorsque vous déclenchez une exécution dans un espace de travail, Dataform ajoute le nom de l'espace de travail en tant que suffixe au schéma par défaut défini dans les paramètres du workflow. Ce guide de démarrage rapide utilise les paramètres Dataform par défaut avec le schéma par défaut
dataform.Cliquez sur Enregistrer.
Dans la console Google Cloud , accédez à la page BigQuery.
Dans le panneau Explorateur, développez votre projet et sélectionnez un ensemble de données.
Cliquez sur le menu Actions, puis sélectionnez Supprimer.
Dans la boîte de dialogue Supprimer l'ensemble de données, saisissez
deletedans le champ, puis cliquez sur Supprimer.Dans la console Google Cloud , accédez à la page Dataform.
À côté de
quickstart-dev, 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 remplacements de compilation d'espace de travail dans Dataform, consultez Créer des remplacements de compilation d'espace de travail.
- Pour savoir comment planifier des exécutions en production dans Dataform, consultez Planifier des exécutions en production.
De plus, si vous souhaitez utiliser un compte de service personnalisé pour exécuter des workflows dans BigQuery, sélectionnez ou créez un compte de service personnalisé.
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). Les sections suivantes décrivent les rôles requis pour votre compte de service personnalisé ou votre compte Google, ainsi que pour l'agent de service Dataform par défaut.
Attribuer des rôles à votre compte de service personnalisé ou à votre compte Google
Pour exécuter des workflows dans BigQuery, votre compte de service personnalisé ou votre compte Google (aperçu) doivent disposer des rôles requis suivants :
Pour attribuer des rôles BigQuery à votre compte de service personnalisé ou à votre compte Google (aperçu), procédez comme suit :
Attribuer des rôles à l'agent de service Dataform par défaut
Si vous utilisez un compte de service personnalisé pour exécuter des workflows dans BigQuery, vous devez autoriser Dataform à utiliser votre compte de service personnalisé. Pour attribuer le rôle Créateur de jetons du compte de service (roles/iam.serviceAccountTokenCreator) à l'agent de service Dataform par défaut sur la ressource de compte de service personnalisé, procédez comme suit :
Créer un dépôt Dataform
Configurer des remplacements de compilation d'espace de travail
Pour créer des environnements de développement isolés avec des remplacements de compilation d'espace de travail Dataform, procédez comme suit :
Dataform applique des remplacements de compilation d'espace de travail à tous les espaces de travail de votre dépôt.
Avec cette configuration, lorsque vous exécutez manuellement un workflow dans un espace de travail, Dataform l'exécute avec des remplacements de compilation d'espace de travail.
Par conséquent, Dataform exécute le workflow dans le schéma dataform_workspaceName de BigQuery, transformant l'espace de travail en environnement de développement isolé.
Par exemple, lorsque vous déclenchez manuellement une exécution dans un espace de travail sasha, Dataform exécute votre workflow dans le schéma dataform_sasha de BigQuery.
Pour exécuter des workflows sans remplacement de compilation d'espace de travail tout en conservant les remplacements de compilation pour les environnements de développement, vous pouvez créer des configurations de version afin de configurer d'autres environnements d'exécution, par exemple staging et production.
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 les ensembles de données créés dans BigQuery
Pour éviter que des frais liés aux éléments BigQuery ne vous soient facturés, supprimez les ensembles de données dont le nom commence par dataform (par exemple, dataform-sasha).
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 :