Contrairement à un flux de travail planifié, qui s'exécute selon un calendrier prédéfini (par exemple, tous les jours à 1 h du matin), un flux de travail déclenché est un modèle de traitement des données à la demande et piloté par les événements. Un signal externe — tel qu'un téléchargement de fichier, l'arrivée d'un message, un appel API ou un clic manuel — déclenche son exécution en temps réel, offrant une excellente réactivité et une grande flexibilité pour le traitement des données.
|
Fonctionnalité |
Flux de travail planifié |
Flux de travail déclenché |
|
Mécanisme de déclenchement |
Calendrier fixe (expression cron) |
Signal externe (événement, API, manuel) |
|
Modèle d'exécution |
Planifié et prévisible |
Réactif et à la demande |
|
Cas d'utilisation |
Entrepôt de données par lots T+1, rapports planifiés |
Traitement des fichiers dès leur arrivée, intégration avec les systèmes métier, réparation manuelle des données |
|
Principaux avantages |
Fiabilité et planification prévisible |
Réactivité en temps réel et flexibilité |
Méthodes de déclenchement prises en charge
Un flux de travail déclenché prend en charge trois méthodes de déclenchement. Choisissez celle qui correspond le mieux à votre scénario.
|
Méthode de déclenchement |
Initiateur |
Scénarios principaux |
Points clés |
|
Déclenchement par événement |
Source d'événement externe (telle que OSS ou ApsaraMQ for Kafka) |
ETL piloté par les événements : Traitez les fichiers dès leur arrivée ou déclenchez un calcul en temps réel à partir des messages. |
Vous devez d'abord Créer un déclencheur et l'associer au flux de travail. Cela ne prend effet que dans l'environnement de production. |
|
Déclenchement manuel |
Utilisateur (développeur/ingénieur O&M) |
Tâches ponctuelles : Traitement ou analyse unique des données. |
Exécutez manuellement le flux de travail dans les environnements de développement et de production. Il s'agit de l'alternative recommandée aux flux de travail manuels. |
|
Déclenchement par API |
Système externe (via OpenAPI) |
Intégration système : Déclenché par des rappels provenant de systèmes métier (tels que CRM ou ERP) pour initier le traitement des données. |
Appelez une opération OpenAPI et assurez-vous de disposer des autorisations requises. |
Démarrage rapide : Créer un flux de travail déclenché manuellement
Cette rubrique vous guide pas à pas dans la création d'un flux de travail déclenché simple et son exécution manuelle, afin que vous puissiez rapidement découvrir le processus de bout en bout.
Étape 1 : Créer un flux de travail déclenché
Accédez à la page Workspaces dans la console DataWorks. Dans la barre de navigation supérieure, sélectionnez la région souhaitée. Recherchez l'espace de travail cible et choisissez dans la colonne Actions.
Dans le volet de navigation de gauche, cliquez sur
, puis cliquez sur à droite de Project Directory pour accéder à la page Create Workflow.Dans la boîte de dialogue qui s'affiche, sur la page Create Workflow, définissez le paramètre Scheduling Type sur Triggered scheduling. Saisissez un Name pour le flux de travail et cliquez sur Confirm pour créer le flux de travail.
Étape 2 : Orchestrer le flux de travail et développer les nœuds
Cliquez sur + Add Node dans la barre d'outils pour ouvrir la liste des nœuds. Faites glisser un nœud Shell depuis la liste des types de nœuds sur la gauche vers le canevas, saisissez un nom et finalisez la création.
-
Double-cliquez sur le nœud Shell pour accéder à la page d'édition du code et saisissez le code suivant :
echo "Hello, Trigger Workflow! Current time is ${bizdate}" Cliquez sur le bouton Save dans la barre d'outils.
Étape 3 : Déboguer et exécuter (environnement de développement)
Revenez au canevas du flux de travail et cliquez sur l'icône
dans la barre d'outils supérieure.Dans la boîte de dialogue qui s'affiche, saisissez la Value Used in This Run pour le flux de travail (par exemple, si nous sommes le 10/03/2026,
bizdatedoit être remplacé par20260309).Après quelques instants, consultez le journal d'exécution en bas pour voir le statut d'exécution du nœud et la sortie de la commande
echo.
Étape 4 : Déployer et exécuter (environnement de production)
Sur le canevas du flux de travail, cliquez sur le bouton Deploy
et suivez les instructions pour terminer le processus de déploiement.Une fois le déploiement réussi, accédez à Operation Center > Manually Triggered Task O&M > Manually Triggered Task> Triggered Workflow.
Recherchez le flux de travail que vous venez de déployer et cliquez sur Run dans la colonne Operation.
Dans la boîte de dialogue qui s'affiche, cliquez à nouveau sur Run pour déclencher une instance du flux de travail dans l'environnement de production. Consultez les détails de cette exécution sur la page Manual Instances.
Vous maîtrisez désormais l'utilisation de base des flux de travail déclenchés. Nous allons ensuite explorer les fonctionnalités plus avancées du déclenchement par événement.
Exemple avancé : Créer un flux de travail déclenché par événement
Scénario 1 : L'arrivée d'un nouveau fichier dans OSS déclenche automatiquement le traitement des données
Objectif : Lorsqu'un nouveau fichier CSV est téléchargé dans un répertoire spécifié d'OSS, déclencher automatiquement un flux de travail qui affiche le chemin du fichier.
Étape 1 : Créer un déclencheur OSS
Accédez à Operation Center > Scheduling Settings > Trigger Management.
-
Cliquez sur Create Trigger et configurez les paramètres comme suit :
RemarquePour une description détaillée des paramètres, consultez la rubrique OSS trigger.
Trigger Name : Saisissez un nom personnalisé, par exemple
oss_new_file_trigger.Applicable Workspace : Sélectionnez l'espace de travail cible où réside le flux de travail.
Trigger Event Type : Sélectionnez Object Storage Service (OSS).
Trigger Event : Sélectionnez
oss:ObjectCreated:PutObject(ou un autre événement de téléchargement).Bucket Name : Sélectionnez votre compartiment OSS.
File Name : Spécifiez le chemin et le format des fichiers à surveiller. Les caractères génériques sont pris en charge. Par exemple, pour surveiller tous les fichiers
.csvdans le répertoireinput/, saisissezinput/*.csv.-
Configuration du rôle : Pour une première utilisation, effectuez une One-Click Authorization et sélectionnez le rôle nommé DataWorks-EventBridge-OSS-MNS-Role-***.
*** représente un numéro ID aléatoire de 13 chiffres utilisé pour garantir l'unicité.
Cliquez sur Confirm pour terminer la création du déclencheur.
Étape 2 : Créer et associer un flux de travail
Suivez les étapes décrites dans la section Démarrage rapide : Créer un flux de travail déclenché manuellement pour créer un nouveau flux de travail déclenché nommé
process_oss_file_workflow.Dans le panneau de droite du canevas du flux de travail, accédez à Scheduling Settings > Scheduling Policy.
-
Dans la liste déroulante Trigger, sélectionnez le déclencheur
oss_new_file_triggerque vous venez de créer.Après avoir sélectionné un déclencheur, utilisez
${workflow.triggerMessage}dans les tâches internes pour obtenir le corps complet du message, ou${workflow.triggerMessage.xxx}pour obtenir la valeur d'un champ spécifique du corps du message.
Étape 3 : Développer un nœud et analyser les paramètres d'événement
Cliquez sur + Add Node dans la barre d'outils pour ouvrir la liste des nœuds. Faites glisser un nœud Shell depuis la liste des types de nœuds sur la gauche vers le canevas, saisissez un nom et finalisez la création.
-
Double-cliquez sur le nœud et écrivez du code pour récupérer et afficher le chemin du fichier à partir de l'événement déclencheur.
-
Utilisation générale : L'utilisation des paramètres suivante s'applique à la plupart des messages d'événement.
# When a trigger fires the workflow, event info is passed in via the built-in variable workflow.triggerMessage # We can get the full path of the uploaded file via ${workflow.triggerMessage.data.oss.object.key} echo "========= Start Processing OSS File =========" message='${workflow.triggerMessage}' echo "Raw Value: ${message}" # Extract the file name from the event message FILE_PATH='${workflow.triggerMessage.data.oss.object.key}' echo "A new file has arrived: ${FILE_PATH}" # Add specific processing logic here echo "========= Finish Processing OSS File =========" -
Cas particulier : Certains nœuds, tels que les nœuds Shell, possèdent leurs propres règles de syntaxe. Avant l'exécution du nœud, le moteur de planification substitue d'abord le contenu du message dans le texte du script, puis le transmet à l'interpréteur Shell pour exécution. Par conséquent, les guillemets, les espaces et les sauts de ligne du message participent directement à l'analyse syntaxique Shell. Cela peut entraîner une rupture de la structure originale du code après la récupération du paramètre par le nœud, en raison des espaces ou des sauts de ligne contenus dans le paramètre. Dans ce cas, utilisez un heredoc pour lire le message, ce qui évite la plupart des problèmes liés aux caractères spéciaux :
# Use a heredoc to safely capture the raw text substituted from ${workflow.triggerMessage}. message=$(cat <<'__DW_TRIGGER_MESSAGE__' ${workflow.triggerMessage} __DW_TRIGGER_MESSAGE__ ) # Scenario 1: Get the entire raw message printf 'Raw Value: %s\n' "$message" # Scenario 2: If you need only a specific field, use Python to parse the JSON and extract the value dt=$(printf '%s' "$message" | /home/tops/bin/python3 -c 'import json,sys; print(json.load(sys.stdin).get("body",{}).get("dt",""))') printf 'dt=%s\n' "$dt"Remarque${workflow.triggerMessage} : Récupère le corps complet du message d'événement au format JSON. Vous pouvez obtenir le format de message spécifique pour OSS depuis EventBridge > Event Bus >
DATAWORKS_TRIGGER_FOR_BUCKET_<OSS_Bucket_Name>> Event Tracing > Event Details.
-
Étape 4 : Déboguer et publier
-
Débogage :
Revenez au canevas du flux de travail et cliquez sur le bouton Run
.-
Dans la zone de saisie Trigger Message Body , collez un JSON d'événement OSS simulé. Copiez et modifiez la valeur
keyà partir de l'« Exemple de format de message » sur la page de configuration du déclencheur. Voici un exemple simple.{ "data": { "oss":{ "object": { "key": "input/test_file_20260310.csv" } } } } Cliquez sur Run et vérifiez si
input/test_file_20260310.csvs'affiche correctement dans les journaux.
Publication : Une fois le débogage réussi, cliquez sur le bouton Publish pour déployer le flux de travail dans l'environnement de production. Les déclencheurs d'événements ne prennent effet que dans l'environnement de production.
Étape 5 : Vérifier en production
-
Utilisez la console OSS ou un outil client pour télécharger un fichier CSV dans le compartiment et le chemin (par exemple, le répertoire
input/) que vous avez configurés dans le déclencheur. Accédez à Operation Center de DataWorks > Manually Triggered Task O&M > Manually Triggered Task > Triggered Workflow. Le flux de travail
process_oss_file_workflowpublié avec succès apparaît.-
Attendez quelques instants, puis accédez à Operation Center de DataWorks > Manually Triggered Task O&M > Triggered Workflow Instance. Une nouvelle instance de flux de travail est automatiquement déclenchée. Cliquez dessus pour afficher ses journaux et vérifier que le chemin du fichier est correctement traité.
===== Start Processing 0SS File ===== Raw Value: {"datacontenttype":"application/json;charset=utf-8","aliyunaccountid":"1162423445433459","data":{"eventVersion":"1.0","responseElements":{"requestId":"69B1083F7A439F343040ABCD"}, "eventSource":"acs:oss","eventTime":"2026-03-11T06:14:23.000Z","requestParameters":{"sourceIPAddress":"140.205.11.13"},"eventName":"0bjectCreated:Post0bject","userIdentity":{"principalId":"1162423445433459"}, "region":"cn-hangzhou","oss":{"bucket":{"name":"dwoss1024","arn":"acs:oss:cn-hangzhou:1162423445433459:dwoss1024","virtualBucket":"","ownerIdentity":"1162423445433459"},"ossSchemaVersion":"1.0","object":{"size":59537,"objectMeta": {"mimeType":"text/csv"},"deltaSize":0,"eTag":"63B4BA5A45AEFC679B9A917E8DDF0D32","key":"input/2013-2020-global-PS4-game-sales.csv"}}},"subject":"acs:oss:cn-hangzhou:1162423445433459:dwoss1024/input/2013-2020-global-PS4-game-sales.csv","aliyunoriginalaccountid":"1162423445433459","source":"acs.oss","type":"oss:0bjectCreated:Post0bject","aliyunpublishtime":"2026-03-11T06:14:23.959Z","specversion":"1.0","aliyuneventbusname":"DATAW0RKS_TRIGGER_F0R_BUCKET_dwoss1024","id":"69B1083F7A439F343040ABCD","time":"2026-03-11T06:14:23.000Z","aliyunregionid":"cn-hangzhou"}A new file has arrived: input/2013-2020-global-PS4-game-sales.csv ====== Finish Processing 0SS File =========
Meilleure pratique : Conception idempotente
En raison de facteurs tels que les fluctuations du réseau, les événements OSS peuvent être livrés plusieurs fois. Pour éviter un traitement en double des données, nous vous recommandons de mettre en œuvre l'idempotence dans votre logique métier. Une approche courante consiste à vérifier une table d'enregistrement (telle qu'une table MaxCompute) avant de traiter un fichier. Utilisez l'ETag du fichier ou son chemin unique comme identifiant et ignorez le fichier s'il a déjà été traité.
Scénario 2 : L'arrivée d'un message Kafka pilote le calcul en temps réel
Objectif : Surveiller les journaux de comportement des utilisateurs dans Kafka. Lorsque de nouveaux messages arrivent, déclencher un flux de travail pour les analyser et exécuter différentes logiques en fonction du contenu.
Étape 1 : Créer un déclencheur Kafka
Accédez à Operation Center > Scheduling Settings > Trigger Management, puis cliquez sur Create Trigger.
-
Configurez les paramètres suivants :
Trigger Name :
kafka_user_action_trigger.Trigger Event Type : Sélectionnez ApsaraMQ for Kafka.
Kafka Instance et Topic : Sélectionnez l'instance et le sujet que vous souhaitez surveiller.
ConsumerGroupId : Nous vous recommandons de sélectionner Quick Create. Le système génère automatiquement un ID de groupe de consommateurs pour éviter les conflits avec d'autres applications.
Key (facultatif) : Vous pouvez spécifier une clé de message. Seuls les messages dont la clé correspond exactement à la valeur spécifiée déclenchent le flux de travail.
Cliquez sur OK.
Étape 2 : Créer et associer un flux de travail
Suivez les étapes décrites dans la section Démarrage rapide : Créer un flux de travail déclenché manuellement pour créer un flux de travail déclenché nommé
handle_user_action_workflow.Dans le panneau de droite du canevas du flux de travail, sélectionnez Scheduling Settings > Scheduling Policy.
-
Dans la liste déroulante Trigger, sélectionnez le déclencheur
kafka_user_action_triggerque vous venez de créer.Après avoir sélectionné un déclencheur, utilisez
${workflow.triggerMessage}dans les nœuds internes pour récupérer le corps complet du message, ou${workflow.triggerMessage.xxx}pour récupérer la valeur d'un champ spécifique du corps du message. (Important) Étant donné que les messages peuvent arriver à haute fréquence, nous vous recommandons de configurer le nombre maximal d'instances parallèles pour les tâches internes, par exemple
100, afin d'éviter qu'une augmentation soudaine du volume de messages ne sature les ressources de planification.
Étape 3 : Développer des nœuds et analyser un JSON imbriqué
Supposons que le champ value du message Kafka soit une chaîne JSON au format suivant : {"user_id": "1001", "action_type": "login", "timestamp": 1688888888}.
Cliquez sur + Add Node dans la barre d'outils pour ouvrir la liste des nœuds. Faites glisser un nœud Python depuis la liste des types de nœuds sur la gauche vers le canevas.
-
Écrivez du code pour analyser le message. Étant donné que le champ
valueest lui-même une chaîne, vous devez effectuer une seconde analyse JSON dans le code.import json # 1. Use the built-in variable to get the value field of the Kafka message, which is a JSON string message_value_str = '${workflow.triggerMessage.value}' print(f'Received raw message value string: ${message_value_str}') try: # 2. Parse this string into a JSON object (dictionary) in Python message_data = json.loads(message_value_str) user_id = message_data.get("user_id") action_type = message_data.get("action_type") print(f"Successfully parsed message. User ID: ${user_id}, Action: ${action_type}") # 3. Execute different business logic based on the action_type if action_type == 'login': # o.run_sql(f"INSERT OVERWRITE TABLE user_login_record PARTITION(ds='{bizdate}') VALUES ('{user_id}');") print("Processing login action...") elif action_type == 'purchase': print("Processing purchase action...") else: print("Unknown action type.") except json.JSONDecodeError as e: print(f"Error decoding JSON: {e}") # Exception handling logic, e.g., write the error message to a dedicated log table raise e # Raise the exception to fail the node for easier troubleshooting
Étape 4 : Déboguer et publier
-
Débogage :
Revenez au canevas du flux de travail et cliquez sur le bouton Run
.-
Dans le champ Trigger Message Body, collez l'événement Kafka simulé. Notez que le champ
valueest une chaîne JSON échappée.{ "topic": "user-behavior-topic", "key": "some-key", "value": "{\"user_id\": \"1001\", \"action_type\": \"login\", \"timestamp\": 1688888888}" } Exécutez le flux de travail et vérifiez les journaux pour confirmer que le nœud Python peut analyser correctement
user_idetaction_type.
Publication : Une fois le débogage réussi, publiez le flux de travail dans l'environnement de production.
Étape 5 : Vérification en production
-
Envoyez un message correctement formaté au sujet Kafka que vous avez configuré.
Sur la page des détails du sujet, cliquez sur Quick Experience Message Sending and Receiving et sélectionnez la méthode d'envoi Console. Saisissez
some-keydans Message Key, saisissez{"user_id": "1001", "action_type": "login", "timestamp": 1688888888}dans Message Content, définissez Send to Specified Partition sur No et cliquez sur Send. Si la page affiche Message sent successfully, la vérification est réussie. Accédez à Operation Center de DataWorks > Manually Triggered Task O&M > Manually Triggered Task > Triggered Workflow. Le flux de travail
handle_user_action_workflowpublié avec succès apparaît.-
Dans Operation Center > Manually Triggered Task O&M > Manual instance > Triggered Workflow Instance, vérifiez si une nouvelle instance de flux de travail a été déclenchée et examinez ses journaux d'exécution.
2026-xxx 14:55:40 INFO ======================================================================== Received raw message value string: ${"user_id": "1001", "action_type": "login", "timestamp": 1688888888} Successfully parsed message. User ID: $1001, Action: $login Processing login action... 2026-xxx 14:55:40 INFO ========================================================================
Meilleures pratiques : Concurrence et ordre
Contrôle de la concurrence : Assurez-vous de définir un nombre maximal raisonnable d'instances parallèles pour gérer les pics de messages.
Garantie de l'ordre : La planification DataWorks ne garantit pas un traitement strictement ordonné des messages. Si vous devez vous assurer que les messages pour le même utilisateur (ou la même partition) sont traités dans l'ordre, mettez en œuvre un verrouillage distribué dans votre code métier (par exemple, basé sur Redis ou MaxCompute), ou déléguez la logique de traitement à un moteur de calcul qui garantit une consommation ordonnée par partition (tel que Flink).
Conception et configuration principales
Orchestration du flux de travail
Le processus d'orchestration principal des flux de travail déclenchés est similaire à celui des flux de travail planifiés. Pour plus d'informations, consultez la rubrique Node/workflow orchestration.
Paramètres de planification
Dans le panneau Scheduling Settings situé à droite du canevas du flux de travail, vous pouvez définir des paramètres globaux pour le flux de travail. Tous les nœuds du flux de travail peuvent référencer ces paramètres.
Méthode de référence : Dans le code du nœud, référencez les paramètres du flux de travail au format
${workflow.parameter_name}.-
Priorité des paramètres : Les paramètres dans DataWorks suivent une règle de substitution hiérarchique. L'ordre de priorité est : Paramètres du nœud > Paramètres du flux de travail.
Pour plus d'informations sur les paramètres, consultez la rubrique Parameter design and flow .
Politique de planification
Lorsque plusieurs flux de travail ou tâches sont déclenchés simultanément et que les ressources système deviennent un goulot d'étranglement, utilisez les options Priority et Weighting Strategy pour mettre en œuvre une planification intelligente des ressources et garantir que les tâches les plus importantes soient exécutées en premier.
Protection des activités métier critiques : Définissez une priorité plus élevée pour les flux de travail métier essentiels afin qu'ils s'exécutent toujours avant les autres flux de travail non essentiels.
-
Réduction de la durée du chemin critique : Au sein d'une même instance de flux de travail, en utilisant la Priority weighting strategy , vous pouvez influencer l'ordre d'exécution des nœuds. Par exemple, avec la stratégie Downstream weighting, les nœuds situés sur le chemin critique qui possèdent davantage de dépendances en amont reçoivent des poids dynamiques plus élevés et sont exécutés en premier, réduisant ainsi efficacement la durée totale d'exécution du flux de travail.
Élément de configuration
Description
Priority
Définit le niveau de priorité absolu des instances de flux de travail dans la file d'attente de planification. Les niveaux disponibles sont 1, 3, 5, 7 et 8 (plus le chiffre est élevé, plus la priorité est haute). Les tâches ou flux de travail ayant une priorité plus élevée acquièrent toujours les ressources de planification avant ceux ayant une priorité plus faible.
Priority weighting strategy
Définit comment le poids dynamique de chaque nœud (tâche) au sein d'un flux de travail est calculé au même niveau de priorité. Les nœuds ayant des poids plus élevés sont exécutés en premier.
-
Pas de pondération : Tous les nœuds ont le même poids de base fixe.
-
Pondération descendante : Les poids des nœuds sont ajustés dynamiquement. Plus un nœud possède de dépendances en amont, plus son poids est élevé. Cette stratégie permet aux nœuds situés sur le chemin critique du DAG (graphe orienté acyclique) d'être exécutés en premier. Le poids est calculé comme suit :
valeur de poids initiale + somme des priorités de tous les nœuds en amont.
Maximum Parallel Instances for Internal Tasks
Contrôle le nombre maximal d'instances de ce flux de travail pouvant s'exécuter simultanément. Cela sert au contrôle de la concurrence et à la protection des ressources. Lorsque le nombre d'instances en cours d'exécution atteint la limite, les nouvelles instances déclenchées ultérieurement passent à l'état d'attente. Vous pouvez le définir sur Allowed ou spécifier une valeur maximale personnalisée (jusqu'à 100 000).
RemarqueSi vous définissez la limite sur une valeur dépassant la capacité maximale du groupe de ressources, le goulot d'étranglement réel en matière de concurrence est déterminé par la limite physique du groupe de ressources.
-
Le système de priorité dans DataWorks suit une règle de substitution hiérarchique : Spécification d'exécution > Configuration au niveau du nœud > Configuration au niveau du flux de travail.
Configuration au niveau du flux de travail (référence) : Configurée dans la Scheduling Policy du flux de travail et sert de paramètre par défaut pour tous les nœuds.
Configuration au niveau du nœud (local) : Dans les Scheduling Settings > Scheduling Policy d'un nœud individuel au sein du flux de travail, vous pouvez définir une Priority plus élevée pour un nœud spécifique, ce qui remplace le paramètre au niveau du flux de travail.
Spécification d'exécution (temporaire) : Spécifiée via l'option Runtime Priority Reset lorsque vous déclenchez manuellement une exécution dans le Operation and Maintenance Center. Cette configuration a la priorité la plus élevée, ne prend effet que pour l'exécution en cours et ne modifie aucune configuration permanente.
O&M et gestion
Surveillance des instances : Toutes les instances déclenchées ou exécutées manuellement peuvent être consultées, relancées, arrêtées et dépannées sur la page Operation Center > Manually Triggered Task O&M > Manual Instance.
Surveillance et alertes : Créez une règle personnalisée dans Operation Center > Monitoring and Alerting > Rule Management. Après avoir activé l'option Monitor Triggered Workflows, la règle surveille uniquement les instances de flux de travail déclenchées. Pour plus d'informations sur la configuration de la règle, consultez la rubrique Rule management.
Cloner un flux de travail : Cliquez avec le bouton droit sur un flux de travail dans le Project Directory et sélectionnez Clone pour créer rapidement une copie incluant tous les nœuds et dépendances. Pour plus d'informations, consultez la rubrique Clone a workflow relative aux flux de travail planifiés.
Gestion des versions : Dans le panneau Versions situé à droite du canevas du flux de travail, vous pouvez afficher, comparer et restaurer les versions historiques d'un flux de travail. Pour plus d'informations, consultez la rubrique Version management relative aux flux de travail planifiés.
Limites d'utilisation et considérations
Environnement effectif : Le mécanisme de déclenchement par événement ne prend effet qu'après le déploiement du flux de travail dans l'environnement de production (Operation Center).
Nombre de nœuds : Un seul flux de travail prend en charge jusqu'à 400 nœuds. Nous vous recommandons de maintenir le nombre en dessous de 100 pour simplifier la maintenance.
Restriction de groupe de ressources : Les nœuds créés dans un flux de travail déclenché ne peuvent utiliser que des serverless resource groups.
Limite de concurrence : Le nombre maximal d'instances parallèles est de 100 000, mais la concurrence réelle est limitée par les spécifications du groupe de ressources de planification que vous avez acheté.
Planification au niveau du nœud : Lors de la configuration de la planification au niveau du nœud, seule l'option Priority est prise en charge. L'option Priority Weighting Policy n'est pas prise en charge.
Types de nœuds non pris en charge : EMR Spark Streaming, Flink SQL Streaming, Flink JAR Streaming, Flink Python Streaming et les nœuds de vérification de dépendance ne peuvent pas être utilisés dans les flux de travail déclenchés. Ces types de nœuds ne peuvent être développés et exécutés que sous forme de nœuds autonomes.