Airflow是否适合不关心执行日期/时间的DAG?

时间:2018-05-06 16:36:37

标签: airflow

Airflow中的API似乎表明它是围绕回填,追赶和安排在间隔期间定期运行。

我有一个ETL,它使用DAG中前一个节点(数据来源)的版本在S3上提取数据。例如,以下是DAG的节点:

  • ImageNet-mono
  • ImageNet-removed-red
  • ImageNet-mono-scaled-to-100x100
  • ImageNet-removed-red-scaled-to-100x100

其中ImageNet-monoImageNet-mono-scaled-to-100x100的前一个节点 其中ImageNet-removed-redImageNet-removed-red-scaled-to-100x100

的上一个节点

它们都经过scaled-to-100x100管道的转换,但由于输入不同而产生不同的数据。

如您所见,没有涉及日期。 Airflow是否合适?

修改

目前,图表非常简单,只需少于10个节点即可手动管理。他们不定期参加比赛。但是,只要有人更新节点的代码,我就必须逐个手动运行下游节点python GetImageNet.py removed-red,然后python scale.py 100 100 ImageNet-removed-red然后python scale.py 100 100 ImageNet-mono。我正在研究一种管理图形的方法,只需单击一下即可触发运行。

1 个答案:

答案 0 :(得分:0)

我认为使用Airflow很好,只要您发现使用DAG表示很有用。如果您的DAG不需要定期执行,则可以将计划设置为None而不是crontab。然后,您可以通过API触发DAG,也可以通过Web界面手动触发。

如果要运行特定任务,可以触发DAG并将任务标记为成功或使用Web界面清除它们。