Ce document vous explique comment effectuer les opérations suivantes dans Dataform:
- Comprendre le cycle de vie du code dans Dataform
- Créez des remplacements de compilation d'espace de travail.
- Configurez des forçages de compilation avec l'API Dataform.
- Créez une configuration de version.
Avant de commencer
Dans la console Google Cloud, accédez à la page Dataform page.
Sélectionnez ou créez un dépôt.
Sélectionnez ou créez un espace de travail de développement.
Facultatif: Pour remplacer le projet Google Cloud par défaut dans la configuration de la version, accordez à votre compte de service Dataform l'accès au projet que vous prévoyez d'utiliser.
Rôles requis
Pour obtenir les autorisations nécessaires pour effectuer les tâches décrites dans ce document, demandez à votre administrateur de vous accorder les rôles IAM suivants sur les dépôts:
-
Administrateur Dataform (
roles/dataform.admin
) -
Éditeur Dataform (
roles/dataform.editor
)
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.
Présentation du cycle de vie du code dans Dataform
Cette section décrit le cycle de vie du code dans Dataform et les méthodes permettant de configurer la compilation et l'exécution dans Dataform.
Le cycle de vie du code Dataform se compose des phases suivantes:
- Développement
- Vous développez un workflow dans un espace de travail Dataform.
- Compilation
Dataform compile le code du workflow dans votre espace de travail en SQL en temps réel, créant un résultat de compilation de l'espace de travail que vous pouvez exécuter dans BigQuery. Dataform utilise les paramètres que vous définissez dans votre fichier de paramètres de workflow pour créer le résultat de la compilation.
La compilation Dataform est hermétique pour garantir la cohérence de la compilation, ce qui signifie que le même code est compilé pour obtenir le même résultat de compilation SQL à chaque fois. Dataform compile votre code dans un environnement 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 une invocation 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 pour influer sur l'emplacement et la manière dont Dataform exécute votre workflow. Vous pouvez ensuite déclencher ou planifier manuellement des exécutions pour déterminer quand Dataform exécute l'ensemble de votre workflow ou ses éléments sélectionnés.
Méthodes de configuration de la compilation Dataform
Par défaut, Dataform utilise les paramètres du fichier de paramètres de workflow pour créer des résultats de compilation. Vous pouvez remplacer les paramètres par défaut par des forçages 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 d'un dépôt Dataform. Vous pouvez ensuite créer une configuration de workflow pour planifier les exécutions des résultats de compilation créés dans une configuration de version sélectionnée.
- Forcer la compilation de l'API Dataform
- Vous pouvez transmettre des requêtes d'API Dataform dans le terminal pour créer et exécuter un seul résultat de compilation avec des forçages de compilation.
Configurer des remplacements de compilation d'espace de travail
Avec les remplacements de compilation d'espace de travail, vous pouvez 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 pour chaque dépôt.
Lorsque vous déclenchez manuellement une 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 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 compilation de l'espace de travail dans BigQuery avec des remplacements de compilation dynamiques. Les forçages de compilation du préfixe de table et du suffixe de schéma dynamiques contiennent la variable ${workspaceName}
.
Lorsque vous déclenchez une exécution dans un espace de travail, Dataform remplace la variable ${workspaceName}
par le nom de l'espace de travail actuel, créant ainsi des forçages de compilation propres à l'espace de travail.
N'oubliez pas que vous ne pouvez pas planifier l'exécution 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 de dépôts.
Dans une configuration de version, vous pouvez configurer des remplacements de compilation des paramètres de workflow, des variables de compilation et de la fréquence de création des résultats de compilation de l'ensemble de votre dépôt.
Dans une configuration de version, vous pouvez configurer les forçages de compilation suivants:
- Projet Google Cloud
- Préfixe de la table
- Suffixe du schéma
- Valeur d'une variable de compilation
Vous pouvez créer plusieurs configurations de version dans un dépôt Dataform, une pour chaque étape de votre cycle de développement, et ainsi créer des résultats de compilation de dépôts isolés.
Vous pouvez ensuite créer des configurations de workflow pour planifier des exécutions des résultats de compilation créés dans une 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 forçages de compilation de l'API Dataform
En transmettant des requêtes d'API Dataform dans le terminal, vous pouvez configurer des forçages 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'un commit Git spécifié.
Dans l'objet CodeCompilationConfig
de la requête compilationResults.create
, vous pouvez configurer des forçages de compilation pour la requête de compilation.
Vous pouvez configurer les forçages de compilation de l'API Dataform suivants:
- Projet Google Cloud
- Préfixe de la table
- Suffixe du schéma
- Valeur d'une variable de compilation
N'oubliez pas que les forçages 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 dans un espace de travail Dataform, en dehors de toute planification. Vous pouvez exécuter des actions sélectionnées dans le workflow.
- Configurations de workflow
- Vous pouvez planifier l'exécution des résultats de compilation créés dans une configuration de version sélectionnée. Vous pouvez sélectionner les actions de workflow à exécuter, et définir la fréquence et le fuseau horaire des exécutions.
Déclencher une exécution immédiate dans un espace de travail
Dans un espace de travail Dataform, vous pouvez déclencher manuellement l'exécution instantanée d'un workflow dans votre espace de travail, en dehors de toute planification.
Vous pouvez exécuter manuellement les éléments suivants du workflow dans votre espace de travail:
Si votre dépôt contient des remplacements de compilation d'espace de travail, vous pouvez afficher les remplacements de compilation que Dataform appliquera au résultat de compilation de l'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 configurer les paramètres d'exécution suivants:
- Configuration de version de compilation appliquée.
- Sélection des actions de workflow à exécuter.
- Planification et fuseau horaire des exécutions.
Vous pouvez sélectionner les actions de workflow suivantes à exécuter:
- Toutes les actions
- Actions sélectionnées
- Actions avec les balises sélectionnées
Ensuite, lors d'une exécution planifiée de la configuration de votre workflow, Dataform déploie votre sélection d'actions à partir du résultat de compilation appliqué dans BigQuery.
Les configurations de version et de workflow Dataform vous permettent de configurer la compilation et de planifier des exécutions dans Dataform, sans avoir à vous appuyer sur des services supplémentaires.
Expiration des ressources de cycle de vie
Dataform stocke les résultats de 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 invocations de workflow les plus récentes créées par la configuration. Lorsqu'une invocation de workflow créée par une configuration de workflow expire, Dataform la supprime de la liste des invocations récentes.
Expiration des résultats de compilation
L'expiration des résultats de compilation dépend de leur création dans un espace de travail de développement, dans une configuration de version ou par l'appel d'un workflow.
Lorsque vous développez un workflow dans un espace de travail Dataform, Dataform compile votre code en résultat de compilation en temps réel pour fournir une validation des 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 compilation devient le résultat de compilation en direct. Un nouveau résultat de compilation remplace le résultat de compilation en direct actuel. Dataform conserve le résultat de la compilation en direct jusqu'à ce qu'il soit remplacé par un nouveau résultat de compilation. Un résultat de compilation remplacé expire dans un délai maximal de 24 heures.
Dataform supprime les résultats de compilation expirés de la liste des résultats de compilation passés sur la page Détails d'une configuration de version.
Dataform conserve les résultats de compilation créés par les invocations de workflow pendant toute la durée de vie de l'invocation de workflow, jusqu'à 24 heures après l'expiration ou la suppression de l'invocation de workflow.
Créer des remplacements de compilation d'espace de travail
Les sections suivantes expliquent 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 forçages de compilation d'espace de travail pour créer des environnements de développement Dataform isolés.
Lorsque vous développez du code de workflow 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
- 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
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é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 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 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:
- ID du projet Google Cloud:
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:
- Projet Google Cloud:
analytics_dev
- Schéma:
dataform_sasha
- Noms de tables:
sasha_name
, par exemplesasha_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
- Schéma:
dataform_kai
- Noms des tables:
kai_name
, par exemple,kai_orders
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 ID du projet Google Cloud, saisissez l'ID du projet.
- 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 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.
- 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 les remplacements 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.
- Dans le volet Remplacements de compilation d'espace de travail, cliquez sur Tout effacer, puis sur Enregistrer.
Configurer des forçages de compilation avec l'API Dataform
Cette section explique comment créer et exécuter un résultat de compilation avec des forçages de compilation à l'aide de l'API Dataform.
À propos des forçages de compilation de l'API Dataform
Pour exécuter votre workflow, Dataform compile votre code en SQL afin de créer un résultat de compilation. Ensuite, lors d'un appel de workflow, Dataform exécute le résultat de la compilation dans BigQuery.
Par défaut, Dataform utilise les paramètres du fichier de paramètres de workflow pour créer le résultat de la compilation. Pour isoler les données exécutées à différentes étapes de votre cycle de développement, vous pouvez remplacer les paramètres par défaut par des forçages de compilation.
En transmettant des requêtes d'API Dataform dans le terminal, vous pouvez créer et exécuter un seul résultat de compilation avec des forçages de compilation. Vous pouvez créer un résultat de compilation d'un espace de travail ou d'un commit Git sélectionné.
Pour créer un résultat de compilation avec des forçages de compilation, vous devez envoyer la requête compilationResults.create
de l'API Dataform. Dans la requête, vous devez spécifier une source, qui doit être un espace de travail ou un commit Git, pour que Dataform compile dans le résultat de la compilation. Dans l'objet CodeCompilationConfig
de la requête compilationResults.create
, vous pouvez configurer des forçages de compilation.
Vous pouvez ensuite exécuter le résultat de la compilation créée dans une requête workflowInvocations.create
de l'API Dataform.
Vous pouvez configurer les forçages de compilation suivants à l'aide de l'API Dataform:
- Projet Google Cloud
- Projet dans lequel Dataform exécute le résultat de la compilation, défini dans le fichier
workflow_settings.yaml
en tant que propriétédefaultProject
ou dans le fichierdataform.json
en tant que propriétédefaultDatabase
. - Préfixe de la table
- Préfixe personnalisé ajouté à tous les noms de table dans le résultat de la compilation.
- Suffixe de schéma
- Suffixe personnalisé ajouté au schéma des tables définies dans la propriété
defaultDataset
du fichierworkflow_settings.yaml
, la propriétédefaultSchema
du fichierdataform.json
ou le paramètreschema
du blocconfig
d'une table. - Valeur d'une variable de compilation
- Valeur d'une variable de compilation à utiliser dans le résultat de compilation. Vous pouvez utiliser des variables de compilation pour exécuter des tables de manière conditionnelle.
Au lieu des forçages de compilation de l'API Dataform que vous ne pouvez utiliser que pour un seul résultat de compilation, vous pouvez configurer des forçages de compilation de l'espace de travail dans la console Google Cloud.
Pour découvrir d'autres façons de configurer des forçages de compilation dans Dataform, consultez la section Présentation du cycle de vie du code.
Définir une source de résultats de compilation
Pour générer la requête compilationResults.create
de l'API Dataform, vous devez spécifier une source pour le résultat de la compilation.
Vous pouvez définir un espace de travail Dataform ou une branche, un tag ou un SHA de commit Git comme source dans la requête compilationResults.create
.
Définir un espace de travail comme source de résultats de compilation
Dans la requête
compilationResults.create
, renseignez la propriétéworkspace
avec le chemin d'accès d'un espace de travail Dataform sélectionné au format suivant:{ "workspace": "projects/PROJECT_NAME/locations/LOCATION/repositories/REPOSITORY_NAME/workspaces/WORKSPACE_NAME" }
Remplacez les éléments suivants :
- PROJECT_NAME : le nom de votre projet Google Cloud
- LOCATION: emplacement de votre dépôt Dataform, défini dans les paramètres du workflow.
- REPOSITORY_NAME: nom de votre dépôt Dataform.
- WORKSPACE_NAME: nom de votre espace de travail Dataform.
L'exemple de code suivant montre la propriété workspace
dans la requête compilationResults.create
définie sur un espace de travail appelé "sales-test"
:
{
"workspace": "projects/analytics/locations/europe-west4/repositories/sales/workspaces/sales-test"
}
Définir un commit Git comme source de résultats de compilation
Dans la requête
compilationResults.create
, renseignez la propriétégitCommitish
avec la branche, la balise ou l'ID SHA de commit Git sélectionnés au format suivant:{ "gitCommitish": "GIT_COMMITISH" }
Remplacez GIT_COMMITISH par la branche Git, la balise Git ou le SHA de commit Git sélectionnés pour le résultat de la compilation.
L'exemple de code suivant montre que la propriété gitCommitish
de la requête compilationResults.create
est définie sur "staging"
:
{
"gitCommitish": "staging"
}
Ignorer le projet par défaut
Pour créer des tables de préproduction ou de production dans un projet Google Cloud distinct de celui utilisé pour le développement, vous pouvez transmettre un autre ID de projet dans l'objet CodeCompilationConfig
de la requête compilationResults.create
de l'API Dataform.
Transmettre un ID de projet par défaut distinct dans la requête compilationResults.create
remplace l'ID de projet par défaut configuré dans le fichier de paramètres de workflow, mais ne remplace pas les ID de projet configurés dans des tables individuelles.
Pour remplacer l'ID de projet par défaut, définissez la propriété
defaultDatabase
sur l'ID de projet sélectionné dans l'objetCodeCompilationConfig
au format suivant:{ "codeCompilationConfig": { "defaultDatabase": "PROJECT_NAME" } }
Remplacez PROJECT_NAME par l'ID de projet que vous souhaitez définir pour le résultat de compilation.
Ajouter un préfixe de table
Pour identifier rapidement les tables à partir du résultat de la compilation, vous pouvez ajouter un préfixe à tous les noms de table dans le résultat de la compilation en transmettant le préfixe de table dans l'objet CodeCompilationConfig
de la requête compilationResults.create
de l'API Dataform.
Pour ajouter un préfixe de table, définissez la propriété
tablePrefix
dans l'objetCodeCompilationConfig
au format suivant:{ "codeCompilationConfig": { "tablePrefix": "PREFIX", } }
Remplacez PREFIX par le préfixe que vous souhaitez ajouter, par exemple
staging
.Par exemple, si le nom de votre table est
table_name
, Dataform crée des tables avec le nomstaging_table_name
.
Ajouter un suffixe de schéma
Pour séparer les données de développement, de mise en phase et de production, vous pouvez ajouter un suffixe aux schémas dans un résultat de compilation en transmettant le suffixe de schéma dans l'objet CodeCompilationConfig
de la requête compilationResults.create
de l'API Dataform.
Pour ajouter un suffixe de schéma, définissez la propriété
schemaSuffix
dans l'objetCodeCompilationConfig
au format suivant:{ "codeCompilationConfig": { "schemaSuffix": "SUFFIX", } }
Remplacez SUFFIX par le suffixe que vous souhaitez ajouter, par exemple
_staging
.Par exemple, si la propriété
defaultDataset
du fichierworkflow_settings.yaml
est définie surdataform
, Dataform crée des tables dans le schémadataform_staging
.
Exécuter des fichiers sélectionnés de manière conditionnelle avec des variables de compilation
Pour exécuter un tableau sélectionné uniquement dans un paramètre d'exécution spécifique, vous pouvez créer une variable de compilation pour le paramètre d'exécution, puis transmettre sa valeur dans l'objet CodeCompilationConfig
dans la requête de l'API Dataform compilationResults.create
.
Pour exécuter une table de manière conditionnelle dans un paramètre d'exécution spécifique à l'aide de l'API Dataform, procédez comme suit:
- Créez une variable de compilation et ajoutez-la aux tables sélectionnées.
Définissez la paire clé-valeur YOUR_VARIABLE et VALUE dans le bloc
codeCompilationConfig
d'une requête de compilation de l'API Dataform au format suivant:{ "codeCompilationConfig": { "vars": { "YOUR_VARIABLE": "VALUE" } } }
Remplacez YOUR_VARIABLE par le nom de votre variable, par exemple
executionSetting
.Remplacez VALUE par la valeur de la variable pour ce résultat de compilation qui répond à la condition
when
définie dans les tables sélectionnées.
L'exemple de code suivant montre la variable executionSetting
transmise à une requête de compilation de l'API Dataform:
{
"gitCommitish": "staging",
"codeCompilationConfig": {
"vars": {
"executionSetting": "staging"
}
}
}
Exécuter un résultat de compilation avec des forçages de compilation
- Pour exécuter le résultat de la compilation créé par une requête
compilationResults.create
, transmettez l'ID du résultat de la compilation renvoyé par la requêtecompilationResults.create
dans une requêteworkflowInvocations.create
.
L'exemple de code suivant montre un ID de résultat de compilation transmis dans une requête workflowInvocations.create
:
{
"compilationResult": "projects/my-project-name/locations/europe-west4/repositories/my-repository-name/compilationResults/7646b4ed-ac8e-447f-93cf-63c43249ff11"
}
Créer une configuration de version
Les sections suivantes vous expliquent comment créer une configuration de version dans Dataform pour configurer des modèles de paramètres de compilation, que vous pouvez exécuter selon un calendrier. Vous pouvez utiliser des configurations de version pour configurer des environnements d'exécution, par exemple, les environnements de préproduction et de production.
Pour exécuter des workflows dans BigQuery, Dataform compile le code du workflow SQL en résultat de compilation. Ce processus se produit automatiquement lorsque vous développez un workflow dans un espace de travail Dataform.
Les configurations de version vous permettent de personnaliser les résultats de compilation. Vous pouvez les utiliser pour créer des environnements d'exécution, par exemple en préproduction.
Paramètres de configuration de la version
Dans une configuration de version, vous pouvez configurer des forçages de compilation des paramètres de workflow, définir des variables de compilation et définir la fréquence de création des résultats de compilation.
Une configuration de version Dataform contient les paramètres de compilation suivants:
- Paramètres de publication
- ID de la version, commitish Git pour les résultats de compilation et fréquence de création des résultats de compilation. La fréquence est un paramètre facultatif. Si elle est définie, la fréquence minimale est de 1 heure.
- Remplacements de compilation
- Forcements du projet Google Cloud, du préfixe de table, du suffixe de schéma et des variables de compilation définis dans les paramètres de workflow.
Fonctionnement d'une configuration de version
Dataform crée des résultats de compilation à partir d'une configuration de version à la fréquence spécifiée ou lorsque vous déclenchez la compilation. La fréquence est un paramètre facultatif et n'est pas nécessaire pour créer une configuration de version. Si elle est définie, la fréquence minimale est de 1 heure. Vous pouvez déclencher manuellement la compilation sur la page Détails de la configuration de la version ou déclencher la compilation avec la méthode releaseConfigs
de l'API Dataform.
Lors de la compilation, Dataform extrait le code du commit Git spécifié de votre dépôt. Ensuite, Dataform compile le code avec les forçages de compilation appliqués (le cas échéant) et crée le résultat de compilation. Le dernier résultat de compilation créé pour la configuration de la version est le résultat de la compilation en direct.
Vous pouvez planifier l'exécution des résultats de compilation à partir de configurations de version dans les configurations de workflow. Vous pouvez également exécuter une configuration de version sélectionnée en dehors de toute planification. Lors de l'exécution d'une configuration de workflow, Dataform exécute le résultat de compilation en direct à partir de la configuration de version sélectionnée.
Créer une configuration de version
Pour créer une configuration de version Dataform, procédez comme suit:
- Dans votre dépôt, accédez à Publications et planification.
- Dans la section Configurations de version, cliquez sur Créer.
Dans le volet Créer une configuration de version, configurez les paramètres de version.
Dans le champ ID de version, saisissez un ID unique pour la configuration de la version.
Les ID ne peuvent contenir que des chiffres, des lettres, des traits d'union et des traits de soulignement.
Dans le champ Commitish Git, saisissez la branche Git ou l'ID de commit Git pour la version.
Dans un dépôt Dataform non connecté à un dépôt distant, la valeur est toujours
main
.Facultatif: Dans la liste Fréquence, sélectionnez la fréquence de création des résultats de compilation.
Si elle est définie, la fréquence minimale est de 1 heure.
Facultatif: Dans la section Forcer la compilation, configurez les paramètres de compilation.
- Dans le champ ID du projet Google Cloud, saisissez l'ID du projet Google Cloud dans lequel vous souhaitez stocker le résultat de la compilation.
- Dans le champ Suffixe du schéma, saisissez un suffixe à ajouter au schéma configuré dans les paramètres de workflow.
- Dans le champ Préfixe de table, saisissez un préfixe pour tous les noms de table.
Facultatif: Dans la section Variables de compilation, définissez les variables de compilation.
- Cliquez sur Ajouter une variable.
- Dans le champ Clé, saisissez la variable de compilation.
- Dans le champ Valeur, saisissez la valeur de la variable de compilation.
- Pour ajouter une autre variable de compilation, cliquez sur Ajouter une variable.
Cliquez sur Créer.
Si vous remplacez le projet par défaut, assurez-vous que votre compte de service Dataform a accès au projet défini dans la configuration de la version.
Par exemple, la configuration de version suivante crée un résultat de compilation production
à partir de la branche main
toutes les heures, sans aucun forçage de compilation:
- ID de version:
production
- Git commitish:
main
- Fréquence: toutes les heures
- Aucun remplacement de compilation
Afficher les détails d'une configuration de version
Vous pouvez afficher les détails suivants d'une configuration de version:
- Paramètres de publication
- Commitish Git
- Code temporel du dernier résultat de compilation
- Planification Cron
- Remplacements de compilation
- Variables de compilation
- Résultat de la compilation en direct
- Code temporel de création
- Commitish Git
- SHA du commit
- Résultats de compilation précédents
Pour afficher les détails d'une configuration de version, procédez comme suit:
- Dans votre dépôt, accédez à Publications et planification.
- Sélectionnez une configuration de version.
- Sur la page Détails de la configuration de la version, inspectez les détails de la configuration de la version.
Le tableau Résultats de la compilation programmée affiche les résultats de compilation précédents créés automatiquement par la configuration de la version.
Le tableau Résultats de compilation manuelle/par API affiche les résultats de compilation créés manuellement ou via des appels à l'API Dataform parmi les 1 000 derniers résultats de compilation du dépôt.
Déclencher manuellement la compilation
Pour créer manuellement un résultat de compilation à partir d'une configuration de version sélectionnée, procédez comme suit:
- Dans votre dépôt, accédez à Publications et planification.
- Sélectionnez une configuration de version.
- Sur la page Détails de la configuration de la version, cliquez sur Nouvelle compilation.
Le résultat de compilation nouvellement créé devient le résultat en direct pour cette configuration de version.
Les résultats de compilation manuelle sont affichés dans le tableau Résultats de compilation manuelle/par API sur la page Détails de la configuration de la version.
Déclencher l'exécution d'une configuration de version
Pour déclencher l'exécution du résultat de la compilation en direct dans une configuration de version sélectionnée dans BigQuery, procédez comme suit:
- Dans votre dépôt, accédez à Publications et planification.
- Dans la section Configurations de version, cliquez sur Démarrer l'exécution.
- Dans le volet Execute manual workflow (Exécuter le workflow manuel), dans la liste Release configuration (Configuration de version), sélectionnez une configuration de version.
- Sélectionnez les actions du workflow à exécuter :
- Pour exécuter l'ensemble du workflow, cliquez sur Toutes les actions.
- Pour exécuter des actions sélectionnées dans le workflow, cliquez sur Sélection d'actions, puis sélectionnez les actions.
- Pour exécuter des actions avec des tags sélectionnés, cliquez sur Sélection de tags, puis sélectionnez des tags.
- Facultatif: Pour exécuter les actions ou balises sélectionnées et leurs dépendances, sélectionnez l'option Inclure les dépendances.
- Facultatif: Pour exécuter les actions ou balises sélectionnées et leurs dépendances, sélectionnez l'option Inclure les dépendances.
Facultatif: Pour reconstruire toutes les tables à partir de zéro, sélectionnez l'option Run with full refresh (Exécuter avec actualisation complète).
Sans cette option, Dataform met à jour les tables incrémentielles sans les recréer à partir de zéro.
Cliquez sur Démarrer l'exécution.
Modifier une configuration de version
Pour modifier une configuration de version, procédez comme suit:
- Dans votre dépôt, accédez à Publications et planification.
- À côté de la configuration de version que vous souhaitez modifier, cliquez sur le menu Plus, puis sur Modifier.
- Dans le volet Modifier la configuration de la version, modifiez les paramètres de la configuration de la version, puis cliquez sur Enregistrer.
Supprimer une configuration de version
Pour supprimer une configuration de version, procédez comme suit:
- Dans votre dépôt, accédez à Publications et planification.
- À côté de la configuration de version que vous souhaitez supprimer, cliquez sur le menu Plus, puis sur Supprimer.
- Dans la boîte de dialogue Supprimer la configuration de version, cliquez sur Supprimer.
Étape suivante
- Pour en savoir plus sur les bonnes pratiques concernant le cycle de vie du code dans Dataform, consultez la section Gérer le cycle de vie du code.
- Pour savoir comment déclencher manuellement l'exécution dans un espace de travail, consultez la section Déclencher l'exécution.
- Pour savoir comment créer des configurations de workflow, consultez la section Planifier des exécutions avec des configurations de workflow.
- Pour en savoir plus sur l'API Dataform, consultez la section API Dataform.