使用 python 脚本的气流触发作业

Airflow-Trigger job using python script

我有基于类别的 dag 列表。这些 dag 应该根据类别的优先级从 master dag 调用(以避免资源限制)。

我的想法是创建一个 python 脚本,其中应根据我们在元数据 table 中设置的优先级(而不是基于时间)触发这些类别 dag。此 python 脚本将在 master dag 中使用 bashoperator 调用。

要明确一点,达格大师应该是基于时间的。子 dag 应该根据优先级从 master 触发。

我的问题是..

1)dag可以用python触发吗?没有时间基础。 2) 我想 运行 几个类别 dags 并行。这是如何实现的。请帮我解决这个问题。

您可以使用 TriggerDagRunOperator 并在每个使用 TriggerDagRunOperator 的任务上设置 priority_weight

TriggerDagRunOperator: Triggers a DAG run for a specified dag_id

priority_weight (int) – priority weight of this task against other task. This allows the executor to trigger higher priority tasks before others when things get backed up. Set priority_weight as a higher number for more important tasks.