Tous les produits
Search
Centre de documentation

DataWorks:Nœud de branchement

Dernière mise à jour :Aug 10, 2026

Définissez la logique de branchement et orientez les tâches vers différentes branches en aval selon des conditions spécifiées.

Présentation

Un nœud de branchement évalue les paramètres de sortie des nœuds en amont à l'aide d'opérateurs de comparaison Python. Il crée plusieurs branches conditionnelles qui exécutent différents nœuds en aval en fonction des résultats obtenus.

Prérequis

  • L'utilisateur RAM que vous souhaitez utiliser a été ajouté à votre espace de travail.

    Pour développer des tâches avec un utilisateur RAM, ajoutez-le en tant que membre à votre espace de travail et attribuez-lui le rôle Develop ou Workspace Administrator. Le rôle Workspace Administrator offre plus d'autorisations que nécessaire ; attribuez-le avec prudence. Pour savoir comment ajouter un membre et lui assigner des rôles, consultez la rubrique Ajouter des membres à un espace de travail.

  • Un groupe de ressources serverless est associé à votre espace de travail. Pour en savoir plus, reportez-vous aux rubriques du répertoire Utiliser des groupes de ressources serverless.

  • Avant de configurer un nœud de branchement, créez-le. Pour plus d'informations, voir Créer un nœud de workflow de planification.

Notes d'utilisation

  • Les nœuds de branchement sont disponibles uniquement dans l'édition DataWorks Standard ou ultérieure. Pour connaître les éditions DataWorks et les modalités d'achat, consultez la rubrique Éditions DataWorks.

  • Un seul nœud de branchement prend en charge un maximum de 50 branches.

  • Les nœuds de branchement sont généralement utilisés conjointement avec des nœuds d'assignation. Pour en savoir plus, voir Nœud d'assignation.

  • Si les conditions d'une branche en aval ne sont pas remplies, les tâches de cette branche passent en état de simulation (dry run). Les journaux enregistrent alors un message semblable à : It's set condition-skip by task.

  • Les conditions de branchement ne permettent pas d'utiliser une chaîne vide ('') pour l'évaluation. Par exemple, si la condition de branchement est '${tp_code}' != '' et que la valeur du paramètre est un espace, cet espace est considéré comme « ayant une valeur » (un espace n'est pas égal à une chaîne vide), ce qui entraîne la sélection de la branche. Nous vous recommandons d'utiliser un marqueur spécial pour représenter une valeur vide. Par exemple, définissez la valeur par défaut du paramètre sur tp_code='NONE' et configurez la condition de branchement comme suit : '${tp_code}' != 'NONE'.

Étape 1 : Développer le nœud de branchement

  1. Accédez à la page de configuration du nœud de branchement pour définir la logique de branchement.

    1. Sur la page Definition, cliquez sur Add Branch.

    2. Dans la boîte de dialogue Branch Definition, configurez les paramètres.

      Paramètre

      Description

      Condition

      • Les conditions de branchement sont définies à l'aide d'opérateurs de comparaison Python.

      • Si une expression est évaluée à true lors de l'exécution, la condition de branchement est remplie.

      • Si une expression ne peut pas être analysée lors de l'exécution, l'instance entière du nœud de branchement échoue.

      • Vous pouvez utiliser les variables globales et les paramètres définis dans le contexte du nœud au sein de la condition. Par exemple, ${input} peut être un paramètre d'entrée du nœud de branchement.

      Associated Node Output

      • La sortie du nœud crée des dépendances pour les nœuds en aval.

      • Si la condition de branchement est remplie, le nœud en aval dépendant de la sortie liée s'exécute. Son exécution dépend également de l'état de ses autres nœuds en amont.

      • Si la condition de branchement n'est pas remplie, le nœud en aval dépendant de la sortie liée ne s'exécute pas. L'état du nœud est défini sur Not run because branch condition not met.

      Description

      Brève description de la définition de la branche. Par exemple, vous pouvez définir deux branches avec les conditions ${input}==1 et ${input}>2.

  2. Configurez les nœuds en aval.

    Vous pouvez configurer divers types de nœuds en aval d'un nœud de branchement. Cet exemple utilise des nœuds MySQL.

    1. Créez deux nœuds MySQL nommés branch_1 et branch_2, puis accédez à la page de développement de chaque nœud.

    2. Sur la droite de la page de développement du nœud MySQL, choisissez Scheduling Settings > Scheduling Dependency, cliquez sur Add Dependency, sélectionnez le nœud de branchement en amont et sa sortie correspondante, puis enregistrez la configuration.

  3. Une fois le développement du nœud de branchement et de ses nœuds en aval terminé, configurez leurs propriétés de planification pour permettre une exécution périodique. Pour en savoir plus, voir Configurer les propriétés de planification des nœuds.

Étape 2 : Déployer et gérer les nœuds

  1. Après avoir configuré la planification, déployez les nœuds dans l'environnement de production. Pour plus d'informations, consultez la rubrique Déployer des nœuds et des workflows.

  2. Une fois les tâches déployées, elles s'exécutent périodiquement selon la planification configurée. Accédez à Operation and Maintenance Center > Node O&M > Auto Triggered Task O&M > Auto Triggered Task pour afficher les tâches planifiées déployées et effectuer des opérations de maintenance. Pour en savoir plus, voir Présentation d'Operation Center.

Annexe : Opérateurs de comparaison Python

Supposons que la variable a vaut 10 et que la variable b vaut 20.

Opérateur

Description

Exemple

==

Vérifie si deux objets sont égaux.

(a == b) renvoie false.

!=

Vérifie si deux objets ne sont pas égaux.

(a != b) renvoie true.

<>

Vérifie si deux objets ne sont pas égaux.

(a <> b) renvoie true. Cet opérateur est similaire à !=.

>

Vérifie si x est supérieur à y.

(a > b) renvoie false.

<

Vérifie si x est inférieur à y. Tous les opérateurs de comparaison renvoient 1 pour vrai et 0 pour faux. Ces valeurs correspondent respectivement aux variables spéciales True et False.

(a < b) renvoie true.

>=

Vérifie si x est supérieur ou égal à y.

(a >= b) renvoie false.

<=

Vérifie si x est inférieur ou égal à y.

(a <= b) renvoie true.