Présentation de la taille du dépôt

Ce document vous aide à comprendre comment la taille du dépôt affecte le développement de workflow SQL et l'utilisation des ressources de compilation Dataform, et comment estimer l'utilisation des ressources de compilation de votre dépôt.

À propos de la taille des dépôts dans Dataform

La taille d'un dépôt a un impact sur les aspects de développement suivants dans Dataform:

Collaboration
Plusieurs collaborateurs travaillant sur un grand dépôt peuvent créer un nombre excessif de requêtes pull, ce qui augmente le risque de conflits de fusion.
Lisibilité du codebase
Un nombre plus élevé de fichiers constituant un workflow SQL dans un même dépôt peut rendre la navigation dans le dépôt difficile.
Processus de développement
Certaines zones d'un grand workflow SQL dans un même dépôt peuvent nécessiter des autorisations ou des processus personnalisés, tels que la planification, différents des autorisations et des processus appliqués au reste du workflow SQL. La grande taille du dépôt rend difficile l'adaptation des processus de développement à des zones spécifiques du workflow SQL.
Compilation de workflows
Dataform applique des limites d'utilisation aux ressources de compilation. Une grande taille de dépôt peut entraîner le dépassement de ces limites, ce qui entraîne l'échec de la compilation.
Exécution du workflow
Lors de l'exécution, Dataform exécute le code du dépôt dans votre espace de travail et déploie les composants dans BigQuery. Plus le dépôt est volumineux, plus Dataform met de temps à l'exécuter.

Si la taille importante de votre dépôt a un impact négatif sur votre développement dans Dataform, vous pouvez le diviser en plusieurs dépôts plus petits.

À propos des limites des ressources de compilation de dépôt

Lors du développement, Dataform compile tout le code du dépôt dans votre espace de travail pour générer une représentation du workflow SQL dans votre dépôt, appelée résultat de compilation. Dataform applique des limites d'utilisation aux ressources de compilation.

Votre dépôt peut dépasser les limites d'utilisation pour les raisons suivantes:

  • Bug de boucle infinie dans le code du dépôt.
  • Bug de fuite de mémoire dans le code du dépôt.
  • Grande taille du dépôt, avec environ plus de 1 000 actions de workflow SQL.

Pour en savoir plus sur les limites d'utilisation des ressources de compilation, consultez la section Limites des ressources de compilation Dataform.

Estimer l'utilisation des ressources de compilation de votre dépôt

Vous pouvez estimer l'utilisation des ressources de compilation suivantes pour votre dépôt:

  • Utilisation du temps CPU
  • Taille maximale totale des données sérialisées du graphique généré des actions définies dans votre dépôt

Pour obtenir une approximation approximative de l'utilisation actuelle du temps de processeur de compilation pour la compilation de votre dépôt, vous pouvez chronométrer la compilation de votre workflow Dataflow SQL sur une machine Linux ou macOS locale.

  • Pour chronométrer la compilation de votre workflow SQL, dans votre dépôt, exécutez la commande dataform compile de la CLI Dataform au format suivant:
time dataform compile

L'exemple de code suivant montre le résultat de l'exécution de la commande time dataform compile:

real    0m3.480s
user    0m1.828s
sys     0m0.260s

Vous pouvez considérer le résultat real comme un indicateur approximatif de l'utilisation du temps de processeur pour la compilation de votre dépôt.

Pour obtenir une approximation approximative de la taille totale du graphique des actions généré dans votre dépôt, vous pouvez écrire la sortie du graphique dans un fichier JSON. Vous pouvez considérer la taille du fichier JSON non compressé comme un indicateur approximatif de la taille totale du graphique.

  • Pour écrire la sortie du graphique compilé de votre workflow SQL dans un fichier JSON, dans votre dépôt, exécutez la commande de la CLI Dataform suivante:
dataform compile --json > graph.json

Étape suivante