Bonnes pratiques concernant la taille du dépôt
La taille du dépôt a un impact sur plusieurs aspects du développement dans Dataform, par exemple:
- Collaboration
- Lisibilité du codebase
- Processus de développement
- Compilation de workflows
- Exécution du workflow
Dataform applique des quotas et des limites d'API sur les ressources de compilation. Si votre dépôt est volumineux, il peut dépasser ces quotas et limites. Cela peut entraîner l'échec de la compilation et de l'exécution de votre workflow SQL.
Pour atténuer ce risque, nous vous recommandons de diviser les grands dépôts. Lorsque vous divisez un grand dépôt, vous divisez un grand workflow SQL en plusieurs petits workflows SQL hébergés dans différents dépôts et connectés par des dépendances entre les dépôts.
Cette approche vous permet de respecter les quotas et limites de Dataform, de définir des processus et des autorisations précis, et d'améliorer la lisibilité et la collaboration du codebase. Toutefois, la gestion de dépôts fractionnés peut être plus difficile que la gestion d'un seul dépôt.
Pour en savoir plus sur l'impact de la taille des dépôts dans Dataform et sur les bonnes pratiques à suivre pour les diviser, consultez la section Diviser des dépôts.
Bonnes pratiques concernant la structure des dépôts
Nous vous recommandons de structurer les fichiers dans le répertoire definitions
pour refléter les étapes de votre workflow. N'oubliez pas que vous pouvez adopter une structure personnalisée qui répond le mieux à vos besoins.
La structure recommandée suivante des sous-répertoires definitions
reflète les étapes clés de la plupart des workflows SQL:
sources
, qui stocke les déclarations de sources de donnéesintermediate
, qui stocke la logique de transformation des donnéesoutput
, qui stocke les définitions des tables de sortie- Facultatif:
extras
, stockage de fichiers supplémentaires
Les noms de tous les fichiers de Dataform doivent respecter les consignes de dénomination des tables BigQuery. Nous vous recommandons que les noms des fichiers du répertoire definitions
d'un dépôt Dataform reflètent la structure des sous-répertoires.
Pour en savoir plus sur les bonnes pratiques de structuration et de dénomination des fichiers dans un dépôt, consultez la section 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 se compose des phases suivantes:
Développement du code de workflow SQL dans les espaces de travail Dataform
Vous pouvez développer avec le noyau Dataform ou exclusivement avec JavaScript.
Compilation de votre code en résultat de compilation à l'aide des paramètres de votre fichier de paramètres de workflow.
Vous pouvez configurer des résultats de compilation personnalisés avec des configurations de version et des remplacements de compilation d'espace de travail.
Les configurations de version vous permettent de configurer les résultats de compilation personnalisés de l'ensemble de votre dépôt. Vous pourrez planifier leur exécution plus tard dans les configurations de workflow.
Les remplacements de compilation d'espace de travail vous permettent de configurer des remplacements de compilation pour tous les espaces de travail de votre dépôt, créant ainsi des résultats de compilation personnalisés pour chaque espace de travail.
Exécution du résultat de la compilation dans BigQuery
Vous pouvez planifier des exécutions ou des résultats de compilation de dépôts avec des configurations de workflow.
Pour gérer le cycle de vie du code dans Dataform, vous pouvez créer des environnements d'exécution, par exemple de développement, de préproduction et de production.
Pour en savoir plus sur le cycle de vie du code dans Dataform, consultez la section 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 même dépôt
Vous pouvez créer des environnements d'exécution isolés tels que le développement, la préproduction et la production dans un seul dépôt Dataform avec des remplacements de compilation d'espace de travail et des configurations de version.
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
- Diviser les tables de développement et de production par schéma et projet Google Cloud
- Diviser les tables de développement, de préproduction et de production par projet Google Cloud
Vous pouvez ensuite planifier des exécutions dans les environnements de préproduction et de production à l'aide de configurations de workflow. Nous vous recommandons de déclencher les exécutions manuellement 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 la section 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 étape du cycle de vie du code, vous pouvez créer plusieurs copies d'un dépôt et les stocker dans différents projetsGoogle Cloud .
Chaque projet Google Cloud sert d'environnement d'exécution qui correspond à une étape du cycle de vie de votre code, par exemple, le développement et la production.
Dans cette approche, nous vous recommandons de conserver le code de base du dépôt dans tous les projets Google Cloud. Pour personnaliser la compilation et l'exécution dans chaque copie du dépôt, utilisez des remplacements de compilation d'espace de travail, des configurations de version et des configurations de workflow.
Étape suivante
- Pour en savoir plus sur la taille des dépôts dans Dataform, consultez la section Présentation de la taille des dépôts.
- Pour en savoir plus sur les bonnes pratiques à suivre pour diviser des dépôts, consultez la section Diviser des dépôts.
- Pour en savoir plus sur les bonnes pratiques concernant la structure de dépôt, consultez la section Structurer le code dans un dépôt.
- Pour en savoir plus sur le cycle de vie du code dans Dataform et sur les différentes façons de le configurer, consultez la section Présentation du cycle de vie du code dans Dataform.
- Pour en savoir plus sur les bonnes pratiques concernant le cycle de vie du code, consultez la section Gérer le cycle de vie du code.