Présentation des bonnes pratiques dans Dataform

Ce document présente les meilleures pratiques pour gérer la taille d'un dépôt, la structure du dépôt et le cycle de vie du code dans Dataform.

Bonnes pratiques concernant la taille de dépôt

La taille du dépôt affecte plusieurs aspects du développement dans Dataform. par exemple:

  • Collaboration
  • Lisibilité du codebase
  • Processus de développement
  • Compilation du workflow
  • Exécution du workflow

Dataform applique Quotas et limites d'API sur les ressources de compilation La taille de votre dépôt peut entraîner le dépassement de ces quotas. et limites. Cela peut entraîner l'échec de la compilation et de l'exécution de votre Workflow SQL.

Pour limiter ce risque, nous vous recommandons de scinder les dépôts volumineux. Lorsque vous divisez un dépôt volumineux, vous divisez un workflow SQL volumineux en un de plus petits workflows SQL, hébergés dans différents dépôts et connectés par des dépendances entre dépôts.

Cette approche vous permet de respecter les quotas et limites Dataform, les processus et les autorisations, et améliorer la lisibilité du codebase ainsi que la collaboration. Cependant, la gestion des dépôts fractionnés peut s'avérer plus difficile que la gestion d'un dans un dépôt unique.

Pour en savoir plus sur l'impact de la taille de dépôt dans Dataform et pour diviser les dépôts, consultez Diviser les dépôts.

Bonnes pratiques pour la structure du dépôt

Nous vous recommandons de structurer les fichiers dans le répertoire definitions pour refléter le de votre workflow. N'oubliez pas que vous pouvez adopter une structure personnalisée qui correspond le mieux à vos besoins.

La structure recommandée pour les sous-répertoires definitions est la suivante : les étapes clés de la plupart des workflows SQL:

  • sources, pour stocker les déclarations de source de données
  • intermediate, stockage de la logique de transformation des données
  • output : stocke les définitions des tables de sortie
  • Facultatif: extras, stockage de fichiers supplémentaires

Les noms de tous les fichiers dans Dataform doivent être conformes à BigQuery de nommage de table. Nous vous recommandons de nommer les fichiers Le répertoire definitions d'un dépôt Dataform reflète structure de sous-répertoires.

Pour en savoir plus sur les meilleures pratiques pour structurer et nommage de fichiers dans un dépôt, consultez Structurer le code dans un dépôt.

Bonnes pratiques concernant le cycle de vie du code

Le cycle de vie du code par défaut dans Dataform comprend les phases suivantes:

Pour gérer le cycle de vie du code dans Dataform, vous pouvez créer une exécution (développement, préproduction et production, par exemple).

Pour en savoir plus sur le cycle de vie du code dans Dataform, consultez Présentation du cycle de vie du code dans Dataform

Vous pouvez choisir de conserver vos environnements d'exécution dans un seul dépôt, ou dans plusieurs dépôts.

Environnements d'exécution dans un dépôt unique

Vous pouvez créer des environnements d'exécution isolés comme le développement, la préproduction et la production Dépôt Dataform avec remplacements de compilation workspace et des configurations de versions.

Vous pouvez créer des environnements d'exécution isolés de différentes manières:

  • Diviser les tables de développement et de production par schéma
  • Répartir les tables de développement et de production par schéma et par projet Google Cloud
  • Répartir les tables de développement, de préproduction et de production par projet Google Cloud

Vous pouvez ensuite planifier des exécutions dans des environnements de préproduction et de production configurations de workflow. Nous vous recommandons déclencher manuellement des exécutions dans l'environnement de développement.

Pour en savoir plus sur les bonnes pratiques de gestion du cycle de vie du code dans Dataform, consultez Gérer le cycle de vie du code

Cycle de vie du code dans plusieurs dépôts

Pour adapter les autorisations Identity and Access Management à chaque du cycle de vie du code, vous pouvez créer plusieurs copies d'un dépôt et les stocker dans différentes projets Google Cloud.

Chaque projet Google Cloud sert d'environnement d'exécution correspondant à une étape du cycle de vie de votre code, par exemple développement et production.

Dans cette approche, nous vous recommandons de conserver le codebase du dépôt. les mêmes dans tous les projets Google Cloud. Pour personnaliser la compilation et l'exécution dans chaque copie du dépôt, utilisez Remplacements de compilation Workspace configurations de versions configurations de workflow.

Étape suivante