Créer des remplacements de compilation d'espace de travail

Ce document explique comment créer des remplacements 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 remplacements 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 en temps réel pour créer un résultat de compilation pour l'espace de travail. Dataform utilise les paramètres définis dans le fichier dataform.json pour créer le résultat de la 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 dataform.json pour tous les espaces de travail de votre dépôt, vous pouvez créer des remplacements de compilation d'espace de travail.

Les remplacements de compilation d'espace de travail vous permettent de remplacer les paramètres suivants pour tous les espaces de travail de votre dépôt:

Projet
Projet Google Cloud dans lequel Dataform exécute le résultat de la compilation de l'espace de travail, défini dans dataform.json en tant que defaultDatabase.
Préfixe de la table
Préfixe personnalisé ajouté à tous les noms de tables dans tous les espaces de travail du dépôt.
Suffixe du schéma
Suffixe personnalisé ajouté au schéma des tables défini dans defaultSchema dans dataform.json ou dans le paramètre schema du bloc config d'une table.

Pour créer des environnements de développement isolés, vous pouvez isoler les espaces de travail à l'aide de 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 remplacements 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 qu'il contient. Après l'exécution, dans BigQuery, vous pouvez identifier l'espace de travail 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 localiser 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 remplacements de compilation dynamique d'espaces de travail 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.

Dans cet exemple, les remplacements de compilation d'espace de travail visent à créer des environnements de développement isolés pour Sasha et Kai.

Les paramètres par défaut suivants sont définis dans dataform.json:

  • defaultDatabase : analytics
  • defaultSchema : dataform

Les remplacements de compilation d'espace de travail suivants créent un préfixe de table dynamique et un suffixe de schéma pour chaque espace de travail du dépôt:

  • ID du projet Google Cloud : analytics_dev
  • Préfixe de table: ${workspaceName}
  • Suffixe du 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:

  • Projet Google Cloud: analytics_dev
  • schema : dataform_sasha
  • Noms de tables: 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:

  • Projet Google Cloud: analytics_dev
  • schema : dataform_kai
  • Noms de tables: kai_name, par exemple, kai_orders

Avant de commencer

  1. Dans la console Google Cloud, accédez à la page Dataform.

    Accéder à la page Dataform

  2. Sélectionnez ou créez un dépôt.

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

Afin d'obtenir les autorisations nécessaires pour créer des remplacements de compilation d'espace de travail, demandez à votre administrateur de vous attribuer 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 section Gérer les accès.

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:

  1. Dans votre dépôt, accédez à Settings (Paramètres).
  2. Cliquez sur Modifier.
  3. Dans le volet Remplacements de compilation d'espace de travail, saisissez l'ID du projet Google Cloud dans le champ ID du projet Google Cloud.
  4. Dans le champ Préfixe de table, saisissez un préfixe pour tous les noms de table.
    1. Facultatif: Pour créer un préfixe de table dynamique unique pour chaque espace de travail, saisissez ${workspaceName} comme préfixe de table.
  5. Dans le champ Suffixe du schéma, saisissez un suffixe à ajouter au schéma de la table ou de la vue créée.
    1. Facultatif: Pour créer un suffixe de schéma dynamique unique pour chaque espace de travail, saisissez ${workspaceName} comme suffixe de table.
  6. 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 remplacements de compilation d'espace de travail Dataform, procédez comme suit:

  1. Dans votre dépôt, accédez à Settings (Paramètres).
  2. Cliquez sur Modifier.
  3. Modifiez les remplacements de compilation d'espace de travail, puis cliquez sur Enregistrer.

Supprimer les remplacements de compilation d'espace de travail

Pour supprimer les remplacements de compilation d'espace de travail Dataform, procédez comme suit:

  1. Dans votre dépôt, accédez à Settings (Paramètres).
  2. Cliquez sur Modifier.
  3. Dans le volet Remplacements de compilation d'espace de travail, cliquez sur Tout effacer, puis sur Enregistrer.

Étapes suivantes