Paramétriser des travaux
Cet article fournit une vue d’ensemble de l’utilisation de paramètres avec des travaux et des tâches.
Voici des concepts fondamentaux pour comprendre les paramètres des travaux :
- Paramètre de travail : paire clé-valeur définie au niveau du travail et transmise aux tâches. Consultez Configurer les paramètres d’un travail.
- Paramètre de tâche : paire clé-valeur ou tableau JSON défini au niveau de la tâche. Consultez Configurer les paramètres de tâche.
- Références de valeur dynamique : syntaxe pour les conditions de travail, les métadonnées et les paramètres des références. Voir Qu’est-ce qu’une référence de valeur dynamique ?.
- Valeurs de tâche : syntaxe permettant de capturer et de référencer les valeurs générées pendant les exécutions des tâches. Consultez Utiliser les valeurs de tâche pour transférer des informations entre les tâches.
Que pouvez-vous faire avec les paramètres ?
Ajoutez des paramètres aux travaux et aux tâches pour les cas d’utilisation avancés, notamment les suivants :
- Ajouter une logique extensible aux ressources de code.
- Conditionnaliser les exécutions.
- Référencer les paramètres courants entre plusieurs tâches.
- Utiliser les informations générées dans une tâche dans une autre tâche.
- Référencer les métadonnées et les informations d’état dans l’exécution du travail.
Quelle est la différence entre les paramètres de travail et de tâche ?
Les paramètres de travail sont des paires clé-valeur définies au niveau du travail. Vous pouvez remplacer les paramètres par défaut des paramètres de travail lorsque vous exécutez maintenant avec différents paramètres ou déclenchez l’exécution d’un travail à l’aide de l’API REST. Les paramètres de travail sont transmis aux tâches qui utilisent les paramètres clé-valeur. D’autres tâches peuvent référencer des paramètres du travail à l’aide de références de valeur dynamique.
Les paramètres de tâche sont des paires clé-valeur de tableaux JSON définis au niveau de la tâche. Chaque type de tâche transmet les valeurs de tâche aux ressources de code configurées différemment. Par exemple, les tâches de Notebook utilisent le sous-module dbutils.widgets
, tandis que les scripts Python transmettent des valeurs en tant qu’arguments au script comme s’il était appelé à partir de la ligne de commande. Les tâches en aval peuvent référencer des paramètres de tâche à partir de tâches en amont à l’aide de références de valeurs dynamiques.
Remarque
Certaines tâches n’ont pas de champ Paramètres dédié, mais elles autorisent les références aux valeurs de tâche ou aux références de valeurs dynamiques dans d’autres champs. Consultez Exemples de commandes dbt paramétrisées et Ajouter une logique de branchement à un travail avec la tâche If/else.
Créer des flux de travail à l’aide de valeurs dynamiques
Les paramètres de tâche définis avec des valeurs statiques ne peuvent être remplacés qu’en mettant à jour la définition de la tâche. La définition d’une valeur statique pour un paramètre de travail consiste simplement à configurer une valeur par défaut, que vous pouvez remplacer lorsque vous exécutez maintenant avec différents paramètres ou déclenchez une exécution de travail à l’aide de l’API REST.
Utilisez des références de valeurs dynamiques lors de la définition des paramètres de tâche pour implémenter des modèles tels que les suivants :
- Utilisez un paramètre de travail comme
output_table
pour une tâche etinput_table
pour une autre. - Capturez la sortie d’une requête de Notebook en tant que liste et bouclez-la dans une tâche For each.
- Création d’une logique de duplication basée sur le nombre d’enregistrements traités à l’aide d’une tâche de condition If/else.
- Reportez-vous aux paramètres d’autres tâches.