Dataform est un service sans serveur permettant aux analystes de données de développer et déployer des tables, des tables incrémentielles ou des vues dans BigQuery. Dataform propose un environnement Web pour le développement de workflows SQL, avec GitHub, GitLab, Azure DevOps Services et Bitbucket, l'intégration continue, le déploiement continu et l'exécution des workflows.
Dépôts
Chaque projet Dataform est stocké dans un dépôt. Un dépôt Dataform héberge une collection de fichiers de configuration JSON, fichiers SQLX et JavaScript.
Les dépôts Dataform contiennent les types de fichiers suivants:
Fichiers de configuration
Les fichiers de configuration JSON ou SQLX vous permettent de configurer vos workflows SQL. Ils contiennent une configuration générale, des calendriers d'exécution ou des schémas pour créer des tables et des vues.
Définitions
Les définitions sont des fichiers SQLX et JavaScript qui définissent de nouvelles tables, et d'opérations SQL supplémentaires. à exécuter dans BigQuery.
Inclut
Les inclusions sont des fichiers JavaScript dans lesquels vous pouvez définir des variables et des fonctions à utiliser dans votre projet.
Chaque dépôt Dataform est connecté à un compte de service. Vous pouvez Sélectionnez un compte de service lorsque vous créez un dépôt. ou modifier le compte de service ultérieurement.
Par défaut, Dataform utilise un compte de service dérivé de votre numéro de projet au format suivant:
service-YOUR_PROJECT_NUMBER@gcp-sa-dataform.iam.gserviceaccount.com
Contrôle des versions
Dataform utilise le système de contrôle de version Git pour conserver un enregistrement des chaque modification apportée aux fichiers du projet et pour gérer les versions des fichiers.
Chaque dépôt Dataform peut gérer son propre dépôt Git. connecté à un dépôt Git tiers distant. Vous pouvez connectez un dépôt Dataform à un dépôt GitHub, GitLab, Azure DevOps Services ou Bitbucket.
Les utilisateurs contrôlent les versions du code de leur workflow SQL. dans les espaces de travail Dataform. Dans un espace de travail Dataform, vous pouvez extraire les modifications du dépôt, valider tout ou partie des modifications, et les transférer vers les branches Git du dépôt.
Développement de workflow
Dans Dataform, vous modifiez les fichiers et les répertoires à l'intérieur d'un espace de travail de développement. Un espace de travail de développement est une copie virtuelle le contenu d'un dépôt Git. Dataform préserve l'état de votre espace de travail de développement entre les sessions.
Dans un espace de travail de développement, vous pouvez développer des actions de workflow SQL. à l'aide de Dataform Core avec SQLX et JavaScript, ou exclusivement avec JavaScript. Vous pouvez mettre en forme automatiquement votre code Dataform Core ou votre code JavaScript.
Chaque élément d'un workflow SQL Dataform, tel qu'une table ou une assertion, correspond à une action exécutée par Dataform dans BigQuery. Par exemple, un fichier de définition de table est une action de création ou de mise à jour dans BigQuery.
Dans un espace de travail Dataform, vous pouvez développer les éléments suivants : Actions du workflow SQL:
- Déclarations des données sources
- Tables et vues
- Tables incrémentielles
- Partitions et clusters de table
- Dépendances entre les actions
- Documentation sur les tableaux
- Opérations SQL personnalisées
- Étiquettes BigQuery
- Tags avec stratégie BigQuery
- Tags Dataform
- Les tests de qualité des données, appelés assertions
Vous pouvez utiliser JavaScript pour réutiliser le code de votre workflow Dataform SQL comme suit:
- Dans un fichier avec encapsulation de code
- Dans un dépôt avec des inclusions
- Sur les dépôts avec des packages
Dataform compile le code du workflow SQL dans votre espace de travail en temps réel. Dans votre espace de travail, vous pouvez afficher les requêtes compilées et les détails des actions dans chaque fichier. Vous pouvez également consulter l'état de la compilation et les erreurs dans dans le fichier modifié ou dans le dépôt.
Pour tester la sortie d'une requête SQL compilée avant de l'exécuter BigQuery, vous pouvez exécuter un aperçu de la requête dans votre espace de travail Dataform.
Pour inspecter l'intégralité du workflow SQL défini dans votre espace de travail, vous pouvez afficher un graphique compilé interactif qui affiche toutes les actions compilées dans votre workflow SQL et les relations entre elles.
Compilation du workflow
Dataform utilise les paramètres de compilation par défaut, configurés dans le fichier des paramètres du workflow, pour compiler le workflow SQL dans votre espace de travail vers SQL en temps réel, ce qui crée un résultat de compilation de l'espace de travail.
Vous pouvez remplacer les paramètres de compilation pour personnaliser la façon dont Dataform compile votre workflow SQL en résultat de compilation.
Avec les remplacements de compilation d'espace de travail, vous pouvez configurer des remplacements de compilation pour tous les espaces de travail d'un dépôt. Vous pouvez définir des remplacements d'espace de travail dynamique pour créer des résultats de compilation personnalisés pour chaque espace de travail, transformant les espaces de travail en environnements de développement isolés. Vous pouvez ignorer le projet Google Cloud dans lequel Dataform s'exécutera le contenu d'un espace de travail, ajouter un préfixe aux noms de toutes les tables compilées, et ajouter un suffixe au schéma par défaut.
Avec les configurations de version, vous pouvez configurer des modèles de paramètres de compilation pour créer de compilation d'un dépôt Dataform. Dans une version vous pouvez ignorer le projet Google Cloud dans lequel Dataform exécutera les résultats de la compilation, ajoutera un préfixe aux noms des toutes les tables compilées, ajouter un suffixe au schéma par défaut, et ajouter des variables de compilation. Vous pouvez également définir la fréquence pour créer des résultats de compilation. Planifier des exécutions de résultats de compilation dans une configuration de version sélectionnée, vous pouvez Créer une configuration de workflow
Exécution du workflow
Pendant l'exécution du workflow, Dataform exécute les résultats de la compilation de Workflows SQL pour créer ou mettre à jour des éléments dans BigQuery
Pour créer ou actualiser les tables et les vues définies dans votre workflow SQL dans BigQuery, vous pouvez démarrer manuellement l'exécution d'un workflow dans un espace de travail de développement ou planifier des exécutions.
Vous pouvez planifier des exécutions Dataform dans BigQuery à l'aide de la méthode de différentes manières:
- Créer des configurations de workflow pour planifier les exécutions des résultats de compilation créés dans les configurations de version
- Planifier des exécutions avec Cloud Composer
- Planifier des exécutions avec Workflows et Cloud Scheduler
Pour déboguer les erreurs, vous pouvez surveiller les exécutions comme suit:
- Afficher les journaux d'exécution Dataform détaillés
- Afficher les journaux d'audit pour Dataform
- Afficher les journaux Cloud Logging pour Dataform
Étape suivante
- Pour en savoir plus sur Dataform Core, consultez Présentation de Dataform Core
- Pour en savoir plus sur les dépôts Dataform, consultez Présentation des dépôts.
- Pour en savoir plus sur les espaces de travail Dataform, consultez Introduction au développement dans un espace de travail
- Pour en savoir plus sur le développement de workflows SQL dans Dataform, consultez Présentation des workflows SQL
- Pour en savoir plus sur l'utilisation de JavaScript dans Dataform, consultez Présentation de JavaScript dans Dataform
- Pour en savoir plus sur le cycle de vie du code dans Dataform, consultez Présentation du cycle de vie du code dans Dataform