Tous les produits
Search
Centre de documentation

E-MapReduce:Gérer les définitions de workflow

Dernière mise à jour :Sep 17, 2026

Une définition de workflow vous permet de créer un graphe orienté acyclique (DAG) visuel en faisant glisser des nœuds et en établissant des dépendances entre eux. Cette rubrique explique comment créer un workflow et gérer les définitions de workflow.

Prérequis

Un projet est créé. Pour plus d'informations, consultez la rubrique Créer un projet.

Créer un workflow

  1. Accédez à l'onglet Project.

    1. Connectez-vous à la console EMR avec votre compte Alibaba Cloud (compte principal) ou un utilisateur RAM.

    2. Dans le volet de navigation de gauche, choisissez EMR Studio > Workflow.

    3. Sur la page Workflow, localisez l'espace de travail cible et cliquez sur Console dans la colonne Actions.

    4. Sur la page Project Management, cliquez sur le nom d'un projet existant.

  2. Dans le volet de navigation de gauche, choisissez Development > Workflow Definition.

  3. Sur la page Workflow Definition, cliquez sur Create Workflow.

  4. Sur la page Create Workflow, faites glisser un nœud vers le canevas. Dans la boîte de dialogue qui s'affiche, configurez les paramètres et cliquez sur OK.

    Cet exemple utilise un nœud SHELL. Pour plus d'informations sur les autres types de nœuds, consultez la rubrique Types de nœuds.

    Paramètre

    Description

    Node Name

    Nom du nœud. Un nom de nœud doit être unique au sein d'un workflow.

    Run Task

    • Normal (par défaut) : Exécute le nœud lors de l'exécution du workflow.

    • No : Ignore le nœud lors de l'exécution du workflow.

    Description

    Description fonctionnelle du nœud.

    Task Priority

    Priorité du nœud dans le workflow. Valeur par défaut : MEDIUM. Valeurs valides :

    • HIGHEST

    • HIGH

    • MEDIUM

    • LOW

    • LOWEST

    Retries After Failure

    Nombre maximal de tentatives automatiques d'exécution du nœud par le système en cas d'échec du workflow.

    Retry Interval upon Failure

    Intervalle entre deux tentatives consécutives. Unité : minutes.

    Time for Delayed Execution

    Délai avant l'exécution du nœud. La valeur par défaut est 0, ce qui signifie que le nœud est exécuté immédiatement après sa création. Le nœud n'est retardé que si vous spécifiez une valeur supérieure à 0 pour ce paramètre. Unité : minutes.

    Timeout Alert

    Cet interrupteur est désactivé par défaut. Activez l'interrupteur Timeout Alert pour définir une durée de délai d'expiration et sélectionner au moins une stratégie de délai d'expiration.

    • Timeout Alert : Envoie une notification au groupe d'alerte spécifié si le temps d'exécution du nœud dépasse la durée de délai d'expiration configurée.

    • Task Failed Upon Timeout : Échoue l'instance de nœud si son temps d'exécution dépasse la durée de délai d'expiration configurée.

    Node to Run Tasks

    • Resource Group for Scheduling (par défaut) : Soumet le nœud au groupe de ressources de planification du workflow.

    • Worker Node in EMR Cluster (Submitted to YARN) : Soumet le nœud à un nœud de travail dans un cluster EMR pour qu'il s'exécute dans un conteneur YARN.

      Avertissement

      Ce mode affecte directement le système de fichiers ou l'environnement d'exécution du cluster EMR. Procédez avec prudence.

      Dans ce mode, vous pouvez également configurer les paramètres suivants :

      • Queues for Scheduling : File d'attente YARN à laquelle le nœud est soumis.

      • Task Execution Container Memory (MB) : Mémoire allouée au conteneur d'exécution de la tâche. La valeur par défaut est 1024.

      • Number of vCPUs : Nombre de cœurs virtuels alloués au conteneur d'exécution de la tâche. Par défaut : 1.

      • Priority : Priorité du conteneur, de 0 à 100, où une valeur plus élevée indique une priorité plus grande. Par défaut : 0.

      • Execution User : Par défaut, l'utilisateur dolphinscheduler soumet le nœud. Dans un cluster standard (non haute sécurité), si vous souhaitez définir un utilisateur d'exécution personnalisé, assurez-vous que le service YARN inclut les configurations suivantes :

        • yarn.nodemanager.container-executor.class=org.apache.hadoop.yarn.server.nodemanager.LinuxContainerExecutor

        • yarn.nodemanager.linux-container-executor.nonsecure-mode.limit-users=false

    Remarque

    Pour les tâches basées sur YARN telles que Spark, Hive ou Sqoop, définissez le paramètre Node to Run Tasks sur Worker Node in EMR Cluster (Submitted to YARN). Cela vous permet de tirer pleinement parti des capacités de planification et de gestion des ressources de YARN.

    Script

    Programme Shell personnalisé.

    Remarque

    Lorsque vous effectuez des opérations d'écriture dans le script, tenez compte des points suivants :

    • Vous pouvez écrire des données dans des systèmes de stockage distants, tels que des systèmes de fichiers distribués comme Alibaba Cloud OSS et HDFS.

    • N'écrivez pas de données dans le système de fichiers local du cluster. Les opérations directes sur les chemins locaux, telles que /tmp/local_file.txt, ne sont pas prises en charge.

    Resources

    Fichiers de ressources requis pour l'exécution du nœud. Ces fichiers doivent d'abord être téléchargés sur la page Resource Center dans la section File Management. Une fois sélectionnés, vous pouvez y faire référence dans le script par leurs chemins complets, par exemple path/to/test.txt.

    Custom Parameters

    Paramètres personnalisés pour le nœud qui remplacent les espaces réservés ${variable} dans le script. Pour plus d'informations, consultez la rubrique Paramètres.

    Pre-task

    Nœud ancêtre du nœud actuel.

  5. (Facultatif) Configurez les dépendances entre les nœuds.

    EMR Workflow vous permet de configurer des dépendances de nœuds personnalisées entre les workflows.

    • Cliquez sur l'icône image..png située à droite d'un nœud et faites glisser la ligne de connexion pour la relier à un autre nœud.

    • Sélectionnez une ligne de connexion ou un nœud, puis cliquez sur l'icône image..png dans le coin supérieur droit pour supprimer la dépendance ou le nœud.

  6. Enregistrez le workflow.

    1. Dans le coin supérieur droit, cliquez sur Save.

    2. Dans la boîte de dialogue qui s'affiche, configurez les paramètres et cliquez sur OK.

      Paramètre

      Description

      Name

      Nom du workflow.

      Description

      Description fonctionnelle du workflow.

      Timeout Alert

      Cet interrupteur est désactivé par défaut. Si vous activez l'interrupteur Timeout Alert, vous devez spécifier une Timeout Period. Une alerte est envoyée si le temps d'exécution dépasse cette période de délai d'expiration.

      Execution Policy

      Mode d'exécution des instances du workflow. Valeurs valides :

      • Parallel (Par défaut) : Les instances de workflow sont exécutées en parallèle.

      • Serial Waiting : Exécute les instances de workflow séquentiellement. Chaque nouvelle instance attend que la précédente soit terminée avant de démarrer.

      Global Variables

      Une variable globale est valide pour tous les nœuds du workflow.

Opérations sur un workflow

Sur la page Workflow Definition, vous pouvez effectuer les opérations suivantes.

Opération

Description

Edit

Vous ne pouvez modifier qu'une définition de workflow dont l'état est Unpublish.

Run

Vous ne pouvez exécuter qu'un workflow dont l'état est online. Un workflow en ligne ne peut pas être modifié. Pour plus d'informations, consultez la rubrique Exécuter un workflow.

Configure Scheduling Time

Seuls les workflows en ligne peuvent être planifiés. Le système exécute alors automatiquement le workflow selon la planification. Après avoir créé une planification, son état est online, mais elle ne prend effet qu'après activation sur la page Schedule Management. Pour plus d'informations sur la planification d'un workflow, consultez la rubrique Planifier un workflow.

More

  • Copy Workflow : Crée un nouveau workflow en copiant le workflow actuel.

  • Delete : Supprime la définition du workflow. Le workflow doit être hors ligne avant sa suppression. Dans un projet, vous ne pouvez supprimer que les workflows que vous avez créés.

  • Workflow Treemap : Affiche les types de nœuds et leur statut sous forme arborescente.

  • Export : Exporte le workflow sous forme de fichier .json vers votre ordinateur local.

  • Mobile Workflow : Déplace le workflow actuel vers un dossier différent.

  • Version Information : Affiche l'historique des versions de la définition du workflow.

Exécuter un workflow

L'exécution d'un workflow génère une nouvelle instance sur la page Workflow Instance.

  1. Dans la colonne Actions, cliquez sur Run.

  2. Dans la boîte de dialogue qui s'affiche, configurez les paramètres et cliquez sur OK.

    Paramètre

    Description

    Policy upon Failure

    Politique de gestion des échecs de nœuds dans un workflow.

    • Proceed : Si un nœud échoue, les autres nœuds continuent de s'exécuter comme prévu.

    • Finished (Par défaut) : Si un nœud échoue, ses nœuds descendants sont arrêtés.

    Notification Policy

    Envoie une notification par e-mail en fonction du statut final de l'exécution du workflow. Les options disponibles sont les suivantes : Do Not Send (Par défaut), Send for Successful Workflows, Send for Failed Workflows et Always Send.

    Workflow Priority

    Priorité du nœud dans le workflow. Valeur par défaut : MEDIUM. Valeurs valides :

    • HIGHEST

    • HIGH

    • MEDIUM

    • LOW

    • LOWEST

    Resource Groups for Scheduling

    Groupe de ressources utilisé pour la planification et l'exécution de la tâche. Sélectionnez un groupe de ressources de planification existant dans la liste déroulante.

    Cluster/Template

    Cluster ou modèle de cluster pour l'exécution. Les options disponibles sont filtrées en fonction du groupe de ressources de planification sélectionné.

    Remarque

    Si vous sélectionnez un Cluster/Template pour le paramètre Cluster Template, un nouveau cluster est créé sur la base du modèle lorsque le workflow s'exécute, et le cluster est libéré une fois le workflow terminé. Si vous avez configuré une Timeout Alert pour la définition du workflow, le cluster est également libéré automatiquement si la règle de délai d'expiration est déclenchée. Si vous n'avez pas configuré d'Timeout Alert, le système libère automatiquement le cluster après 24 heures d'exécution.

    Backfill

    Indique s'il faut générer des données rétroactives en fonction des paramètres de backfilling lorsque le workflow est exécuté dans la plage de temps spécifiée.

    Remarque
    • Règle de backfilling : Si le workflow dispose d'une planification active, le backfilling suit la fréquence de la planification. Sinon, le système génère des exécutions une fois par jour à 00:00 par défaut.

    • Limitation : Une seule opération de backfilling de données peut générer un maximum de 100 instances de workflow.

    Sélectionnez Yes et configurez les paramètres suivants :

    • Dependency Mode : Prend en charge les modes Open et Off (par défaut). Ce paramètre indique si le backfilling de données pour une instance du workflow actuel déclenche le backfilling de données pour ses nœuds dépendants en aval.

      Des données rétroactives sont générées pour les workflows qui dépendent du workflow actuel uniquement si ce dernier est à l'état Online et si des paramètres de planification sont configurés pour celui-ci.

    • Execution Method

      • Serial Execution : Exécute les runs de backfilling séquentiellement, en créant une instance de workflow pour chaque intervalle dans la plage de temps spécifiée.

      • Parallel Execution (Par défaut) : Dans la plage de temps spécifiée, les runs de backfilling pour plusieurs jours sont exécutés simultanément, générant plusieurs instances de workflow en même temps.

        Pour ce mode, vous devez également configurer le paramètre Customize Parallelism, qui spécifie le nombre maximal d'instances pouvant s'exécuter en parallèle. Le parallélisme maximal pour chaque opération de backfilling est de 7.

        Remarque

        Si la définition du workflow utilise la politique d'exécution Parallel, vous ne pouvez utiliser que Parallel Execution pour le backfilling de données. De même, un workflow avec une politique Serial Waiting nécessite Serial Execution pour le backfilling de données.

    • Scheduling Period : Plage de dates pour l'exécution du workflow.

    Global Parameters

    Paramètre de démarrage et sa valeur. La valeur est utilisée pour définir une variable globale ou écraser la valeur existante de la variable globale lors du démarrage d'une nouvelle instance de workflow.

    Dry Run

    Indique s'il faut effectuer un test à blanc pour le workflow. Si vous effectuez un test à blanc pour le workflow, un journal de succès est enregistré.

  3. Dans le volet de navigation de gauche, choisissez Instance O&M>Workflow Instance pour afficher l'état d'exécution de l'instance.

Importer un workflow

  1. Sur la page Development > Workflow Definition, cliquez sur Import.

  2. Cliquez sur Upload, sélectionnez le fichier de définition de workflow exporté (.json) depuis votre ordinateur local, puis cliquez sur OK.

Configurer un workflow planifié

  1. Sur la page Workflow Definition, localisez la définition de workflow cible et cliquez sur Configure Scheduling Time dans la colonne Actions.

  2. Dans la boîte de dialogue qui s'affiche, définissez les paramètres et cliquez sur OK.

    • Time Period : La planification est active uniquement pendant cette plage horaire. Aucune instance n'est générée en dehors de cette plage.

    • Configure Scheduling Time : Heure et fréquence d'exécution du workflow.

  3. Dans la colonne Schedule Status, activez l'interrupteur pour activer la planification.

Rubriques connexes