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 le code d'un 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 du workflow 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 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
Projet Google Cloud dans lequel Dataform exécute le résultat de la compilation de l'espace de travail, défini dans workflow_settings.yaml sur defaultProject ou 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éfinies dans

Définissez ce paramètre en tant que defaultDataset dans workflow_settings.yaml, 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 avec des remplacements de compilation uniques. Vous pouvez modifier de manière dynamique les remplacements de compilation de préfixe de table et de suffixe de schéma à l'aide de 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é qui lui est dédié. 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 dynamique d'espace de travail

L'exemple suivant montre des remplacements de compilation d'espace 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.

Dans cet exemple, l'objectif des remplacements de compilation d'espace de travail 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 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}
  • Schema suffix (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:

  • 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 des tables: kai_name (par exemple, kai_orders)

Avant de commencer

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

    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

Pour obtenir les autorisations nécessaires pour créer des remplacements de compilation d'espace de travail, demandez à votre administrateur de vous accorder le rôle IAM Administrateur Dataform (roles/dataform.admin) pour 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 tables.
    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 Schema Suffix (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