utp*_*utp 2 jenkins airflow airflow-scheduler google-cloud-composer
我在气流 dag 中有 3 个任务。
这三个任务具有时间依赖性
任务 1 - 早上 8 点
任务 - 凌晨 2 点 - 上午 10 点
任务-3 - 上午 12 点
我没有找到任何提到这一点的文档。它告诉我们只设置上游或下游作业。谁能帮忙解决这个问题
我正在使用 Google Cloud Composer
嗯,Airflow 结构被设置schedule_interval为 DAG 级别。这意味着您可以设置整个 DAG 开始执行的时间,但您无法真正为每个任务指定不同的执行时间。
如果您有三个相互不依赖的独立任务,解决方案是创建三个不同的 DAG,并在这三个不同的时间安排它们。
task_2相反,如果和 的时间依赖性task_3并不那么重要,但您只关心一个接一个执行,那么您实际上可以设置任务之间的依赖性,以便task_2始终在task_1完成后运行并task_3始终在task_2完成后运行。要设置依赖关系,您可以使用非常方便的语法(假设您的任务已分配给变量task_1, task_2, task_3):
task_1 >> task_2 >> task_3
Run Code Online (Sandbox Code Playgroud)
您可以参考Airflow官方文档了解更多信息。
TL;DR: 您无法安排单个任务在不同的特定时间运行,因为您可以设置的唯一时间是整个 DAG 运行时间。
| 归档时间: |
|
| 查看次数: |
5245 次 |
| 最近记录: |