Présentation du cycle de vie du code dans Dataform

Ce document décrit le cycle de vie du code dans Dataform et explique comment configurer la compilation et l'exécution dans Dataform.

À propos du cycle de vie du code dans Dataform

Le cycle de vie du code Dataform comprend les phases suivantes:

Développement
Vous développez un workflow SQL dans un espace de travail Dataform.
Compilation

Dataform compile le code du workflow SQL de votre espace de travail en SQL en temps réel, créant ainsi un résultat de la compilation de l'espace de travail que vous pouvez exécuter dans BigQuery. Dataform utilise les paramètres que vous avez définis dans le fichier dataform.json pour créer le résultat de la compilation.

La compilation Dataform est hermétique pour assurer la cohérence de la compilation, ce qui signifie que le même code est compilé à chaque fois en fonction du même résultat de compilation SQL. Dataform compile votre code dans un environnement de bac à sable sans accès à Internet. Aucune action supplémentaire, telle que l'appel d'API externes, n'est disponible lors de la compilation.

Exécution

Dans un appel de workflow, Dataform exécute le résultat de la compilation de l'espace de travail dans BigQuery.

Pour adapter le cycle de vie du code Dataform à vos besoins, vous pouvez configurer le résultat de la compilation afin d'influencer où et comment Dataform exécute votre workflow SQL. Ensuite, vous pouvez déclencher ou planifier manuellement des exécutions pour influencer le moment où Dataform exécute l'ensemble de votre workflow SQL ou de ses éléments sélectionnés.

Configurer la compilation Dataform

Par défaut, Dataform utilise les paramètres du fichier dataform.json pour créer des résultats de compilation. Vous pouvez remplacer les paramètres par défaut par des remplacements de compilation pour créer des résultats de compilation personnalisés. Vous pouvez ensuite déclencher manuellement l'exécution d'un résultat de compilation personnalisé ou planifier des exécutions.

Dataform fournit les options suivantes pour configurer les résultats de compilation:

Remplacements de compilation d'espace de travail
Vous pouvez configurer des remplacements de compilation qui s'appliquent à tous les espaces de travail d'un dépôt. Vous pouvez utiliser des remplacements de compilation d'espace de travail pour créer des environnements de développement isolés.
Configurations de version
Vous pouvez créer des configurations de version pour configurer des modèles permettant de créer des résultats de compilation pour un dépôt Dataform. Vous pouvez ensuite créer une configuration de workflow pour planifier l'exécution des résultats de compilation créés dans la configuration de version sélectionnée.
Remplacements de compilation de l'API Dataform
Vous pouvez transmettre des requêtes API Dataform dans le terminal pour créer et exécuter un seul résultat de compilation avec des remplacements de compilation.

Configurer des remplacements de compilation d'espace de travail

Les remplacements de compilation d'espace de travail vous permettent de créer des remplacements de compilation pour tous les espaces de travail d'un dépôt Dataform. Vous pouvez créer une configuration de remplacements de compilation d'espace de travail par dépôt.

Lorsque vous déclenchez manuellement l'exécution dans un espace de travail dans un dépôt avec des remplacements de compilation d'espace de travail, Dataform applique ces remplacements au résultat de la compilation de l'espace de travail.

Vous pouvez configurer les remplacements de compilation d'espace de travail suivants:

  • Projet Google Cloud dans lequel Dataform exécute le contenu de l'espace de travail
  • Préfixe de la table
  • Suffixe du schéma

Vous pouvez utiliser des remplacements de compilation d'espace de travail pour créer des environnements de développement isolés en isolant les résultats de la compilation d'espace de travail dans BigQuery à l'aide de remplacements de compilation dynamique. Les remplacements de compilation de préfixe de table dynamique et de suffixe de schéma contiennent la variable ${workspaceName}. Lorsque vous déclenchez l'exécution dans un espace de travail, Dataform remplace la variable ${workspaceName} par le nom de l'espace de travail actuel, ce qui crée des remplacements de compilation qui lui sont propres.

N'oubliez pas que vous ne pouvez pas planifier les exécutions des résultats de compilation créés avec des remplacements de compilation d'espace de travail.

Créer des configurations de version

Les configurations de version vous permettent de configurer des modèles de paramètres pour créer des résultats de compilation pour les dépôts.

Dans une configuration de version, vous pouvez configurer des remplacements de compilation pour les paramètres dataform.json, les variables de compilation et la fréquence de création des résultats de compilation pour l'ensemble du dépôt.

Dans une configuration de version, vous pouvez configurer les remplacements de compilation suivants:

Vous pouvez créer plusieurs configurations de version dans un dépôt Dataform, une pour chaque étape de votre cycle de vie de développement, ce qui génère des résultats de compilation dans un dépôt isolé.

Vous pouvez ensuite créer des configurations de workflow pour planifier les exécutions des résultats de compilation créés dans la configuration de version sélectionnée.

Vous pouvez également déclencher manuellement l'exécution d'un résultat de compilation dans une configuration de version sélectionnée.

Configurer un seul résultat de compilation avec des remplacements de compilation de l'API Dataform

En transmettant des requêtes API Dataform dans le terminal, vous pouvez configurer des remplacements de compilation pour un seul résultat de compilation.

Dans la requête compilationResults.create, vous pouvez créer un seul résultat de compilation d'un espace de travail Dataform ou d'une propriété Git spécifiée.

Dans l'objet CodeCompilationConfig de la requête compilationResults.create, vous pouvez configurer des remplacements de compilation pour la requête de compilation.

Vous pouvez configurer les remplacements de compilation de l'API Dataform suivants:

N'oubliez pas que les remplacements de compilation de l'API Dataform s'appliquent à un seul résultat de compilation et à une seule exécution. Vous ne pouvez pas les utiliser pour planifier des exécutions Dataform.

Vous pouvez exécuter un résultat de compilation dans la requête workflowInvocations.create.

Méthodes de configuration de l'exécution Dataform

Dataform fournit les options suivantes pour configurer l'exécution:

Exécution manuelle dans un espace de travail
Vous pouvez déclencher manuellement l'exécution instantanée d'un workflow SQL dans un espace de travail Dataform, en dehors de n'importe quelle planification. Vous pouvez exécuter certaines actions dans le workflow SQL.
Configurations de workflows
Vous pouvez planifier les exécutions des résultats de compilation créés dans la configuration de version sélectionnée. Vous pouvez sélectionner les actions de workflow SQL à exécuter, et définir la fréquence et le fuseau horaire des exécutions.

Déclencher une exécution instantanée dans un espace de travail

Dans un espace de travail Dataform, vous pouvez exécuter manuellement et instantanément le workflow SQL dans votre espace de travail, en dehors de n'importe quelle planification.

Vous pouvez exécuter manuellement les éléments suivants du workflow SQL dans votre espace de travail:

Si votre dépôt contient des remplacements de compilation d'espace de travail, vous pouvez afficher ceux que Dataform appliquera au résultat de la compilation d'espace de travail.

Créer des configurations de workflow

Les configurations de workflow vous permettent de planifier l'exécution des résultats de compilation à partir d'une configuration de version sélectionnée. Vous pouvez créer plusieurs configurations de workflow dans un dépôt Dataform.

Dans une configuration de workflow, vous pouvez définir les paramètres d'exécution suivants:

  • Configuration de la version de compilation appliquée
  • Sélection des actions de workflow SQL à exécuter
  • Planification et fuseau horaire des exécutions

Vous pouvez sélectionner les actions de workflow SQL suivantes à exécuter:

  • Toutes les actions
  • Actions sélectionnées
  • Actions associées aux balises sélectionnées

Ensuite, lors de l'exécution planifiée de la configuration de votre workflow, Dataform déploie votre sélection d'actions à partir du résultat de la compilation appliqué dans BigQuery.

Les configurations de version et de workflow de Dataform vous permettent de configurer la compilation et de planifier les exécutions dans Dataform, sans avoir à faire appel à des services supplémentaires.

Expiration des ressources du cycle de vie

Dataform stocke les résultats de la compilation et les appels de workflow pendant une période spécifique.

Expiration des appels de workflow

Les appels de workflow expirent au bout de 90 jours ou lorsque vous les supprimez manuellement.

Dans une configuration de workflow, vous pouvez afficher la liste des appels de workflow les plus récents créés par la configuration. Lorsqu'un appel de workflow créé par une configuration de workflow expire, Dataform le supprime de la liste des appels récents.

Expiration des résultats de la compilation

L'expiration des résultats de la compilation dépend de la manière dont ils sont créés: dans un espace de travail de développement, dans une configuration de version ou via un appel de workflow.

Lorsque vous développez un workflow SQL dans un espace de travail Dataform, Dataform compile votre code dans un résultat de compilation en temps réel afin de valider les requêtes. Les résultats de compilation créés de cette manière expirent au bout de 24 heures.

Dans une configuration de version, le dernier résultat de la compilation devient le résultat de la compilation en direct. Un nouveau résultat de compilation remplace le résultat actuel de la compilation. Dataform conserve le résultat de la compilation en ligne jusqu'à ce qu'il soit remplacé par un nouveau résultat de compilation. Un résultat de compilation remplacé expire au bout de 24 heures maximum.

Dataform supprime les résultats de compilation arrivés à expiration de la liste des résultats de compilation antérieurs sur la page Détails d'une configuration de version.

Dataform conserve les résultats de compilation créés par les appels de workflow pendant toute la durée de vie de l'appel de workflow, jusqu'à 24 heures après son expiration ou sa suppression.

Étapes suivantes