Ce document explique comment créer des forçages de compilation d'espace de travail pour isoler les tables et les vues créées à partir de vos espaces de travail Dataform dans BigQuery. Vous pouvez utiliser des forçages de compilation d'espace de travail pour créer des environnements de développement Dataform isolés.
À propos des remplacements de compilation d'espace de travail
Lorsque vous développez du code de workflow SQL dans un espace de travail Dataform, Dataform compile le code de votre espace de travail en temps réel pour créer un résultat de compilation de l'espace de travail. Dataform utilise les paramètres définis dans le fichier de paramètres de workflow pour créer le résultat de compilation de l'espace de travail. Ensuite, lorsque vous déclenchez l'exécution dans un espace de travail, Dataform exécute le résultat de la compilation de l'espace de travail dans BigQuery.
Pour remplacer les paramètres par défaut définis dans les paramètres de workflow pour tous les espaces de travail de votre dépôt, vous pouvez créer des remplacements de compilation d'espace de travail.
Avec les remplacements de compilation d'espace de travail, vous pouvez remplacer les paramètres suivants pour tous les espaces de travail de votre dépôt:
- Projet
- ProjetGoogle Cloud dans lequel Dataform exécute le résultat de la compilation de l'espace de travail, défini dans
workflow_settings.yaml
commedefaultProject
ou dansdataform.json
commedefaultDatabase
. - Préfixe de la table
- Préfixe personnalisé ajouté à tous les noms de table de tous les espaces de travail du dépôt.
- Suffixe du schéma
Suffixe personnalisé ajouté au schéma des tables définies dans
Définissez-le sur
defaultDataset
dansworkflow_settings.yaml
,defaultSchema
dansdataform.json
ou dans le paramètreschema
du blocconfig
d'une table.
Pour créer des environnements de développement isolés, vous pouvez isoler des espaces de travail avec des remplacements de compilation uniques. Vous pouvez modifier de manière dynamique les remplacements de compilation du préfixe de table et du suffixe de schéma avec la variable ${workspaceName}
.
Lorsque vous déclenchez manuellement l'exécution dans un espace de travail, la variable ${workspaceName}
injecte le nom de l'espace de travail dans les forçages de compilation de l'espace de travail.
Lorsque vous définissez ${workspaceName}
comme préfixe de table, Dataform ajoute le nom de l'espace de travail aux noms de toutes les tables de l'espace de travail. Après l'exécution, dans BigQuery, vous pouvez identifier le workspace d'où provient une table.
Lorsque vous définissez ${workspaceName}
comme suffixe de schéma, Dataform ajoute le nom de l'espace de travail à defaultSchema
, créant ainsi un schéma personnalisé dédié à l'espace de travail. Après l'exécution, dans BigQuery, vous pouvez rechercher toutes les tables exécutées à partir d'un espace de travail spécifique dans le schéma dédié.
Exemple de remplacements de compilation d'espace de travail dynamique
L'exemple suivant montre des forçages de compilation d'espaces de travail dynamiques appliqués à un dépôt contenant des espaces de travail nommés d'après les développeurs qui travaillent sur le dépôt: Sasha
et Kai
.
L'objectif des remplacements de compilation d'espace de travail dans cet exemple est de créer des environnements de développement isolés pour Sasha et Kai.
Les paramètres par défaut suivants sont définis dans workflow_settings.yaml
:
defaultProject
:analytics
defaultDataset
:dataform
Les remplacements de compilation d'espace de travail suivants créent un préfixe de table et un suffixe de schéma dynamiques pour chaque espace de travail du dépôt:
- Google Cloud ID du projet :
analytics_dev
- Préfixe de table:
${workspaceName}
- Suffixe de schéma:
${workspaceName}
Lorsque Sasha déclenche manuellement l'exécution dans l'espace de travail Sasha
, Dataform exécute son contenu avec les paramètres suivants:
- Google Cloud project:
analytics_dev
- schema :
dataform_sasha
- noms de table:
sasha_name
, par exemple,sasha_orders
.
Lorsque Kai déclenche manuellement l'exécution dans l'espace de travail Kai
, Dataform exécute son contenu avec les paramètres suivants:
- Google Cloud project:
analytics_dev
- schema :
dataform_kai
- noms des tables:
kai_name
, par exemple,kai_orders
Avant de commencer
Dans la console Google Cloud, accédez à la page Dataform page.
Sélectionnez ou créez un dépôt.
Facultatif: Pour remplacer le projet Google Cloud par défaut, accordez à votre compte de service Dataform l'accès au projet Google Cloud que vous prévoyez d'utiliser.
Rôles requis
Pour obtenir les autorisations nécessaires pour créer des forçages de compilation d'espace de travail, demandez à votre administrateur de vous accorder le rôle IAM Administrateur Dataform (roles/dataform.admin
) sur les dépôts.
Pour en savoir plus sur l'attribution de rôles, consultez la page Gérer l'accès aux projets, aux dossiers et aux organisations.
Vous pouvez également obtenir les autorisations requises via des rôles personnalisés ou d'autres rôles prédéfinis.
Créer des remplacements de compilation d'espace de travail
Pour créer des remplacements de compilation d'espace de travail Dataform, procédez comme suit:
- Dans votre dépôt, accédez à Settings (Paramètres).
- Cliquez sur Modifier.
- Dans le volet Remplacements de compilation d'espace de travail, dans le champ Google Cloud Project ID (ID de projet), saisissez l'ID du projet. Google Cloud
- Dans le champ Préfixe de table, saisissez un préfixe pour tous les noms de table.
- Facultatif: Pour créer un préfixe de table dynamique unique pour chaque espace de travail, saisissez
${workspaceName}
comme préfixe de table.
- Facultatif: Pour créer un préfixe de table dynamique unique pour chaque espace de travail, saisissez
- Dans le champ Suffixe de schéma, saisissez un suffixe à ajouter au schéma de la table ou de la vue créée.
- Facultatif: Pour créer un suffixe de schéma dynamique unique pour chaque espace de travail, saisissez
${workspaceName}
comme suffixe de table.
- Facultatif: Pour créer un suffixe de schéma dynamique unique pour chaque espace de travail, saisissez
- Cliquez sur Enregistrer.
Dataform applique des remplacements de compilation d'espace de travail à tous les espaces de travail de votre dépôt.
Modifier les remplacements de compilation d'espace de travail
Pour modifier les forçages de compilation de l'espace de travail Dataform, procédez comme suit:
- Dans votre dépôt, accédez à Settings (Paramètres).
- Cliquez sur Modifier.
- Modifiez les remplacements de compilation de l'espace de travail, puis cliquez sur Enregistrer.
Supprimer les remplacements de compilation d'espace de travail
Pour supprimer des remplacements de compilation d'espace de travail Dataform, procédez comme suit:
- Dans votre dépôt, accédez à Settings (Paramètres).
- Cliquez sur Modifier.
- Dans le volet Remplacements de compilation d'espace de travail, cliquez sur Tout effacer, puis sur Enregistrer.
Étape suivante
- Pour savoir comment déclencher manuellement l'exécution, consultez la section Déclencher l'exécution.