什么是 Airflow
Apache Airflow 是一个提供基于 DAG 有向无环图来编排工作流的、可视化的分布式任务调度平台,与 Oozie、Azkaban 等任务流调度平台类似。Airflow 在 2014 年由 Airbnb 发起,2016 年 3 月进入 Apache 基金会,在 2019 年 1 月成为顶级项目。Airflow 采用 Python 语言编写,提供可编程方式定义 DAG 工作流,可以定义一组有依赖的任务,按照依赖依次执行, 实现任务管理、调度、监控功能。
另外,Airflow 提供了 WebUI 可视化界面,提供了工作流节点的运行监控,可以查看每个节点的运行状态、运行耗时、执行日志等。也可以在界面上对节点的状态进行操作,如:标记为成功、标记为失败以及重新运行等。在 Airflow 中工作流上每个 task 都是原子可重试的,一个工作流某个环节的 task 失败可自动或手动进行重试,不必从头开始跑。
Airflow 官网:http://airflow.apache.org/,Airflow 支持的任务调度类型如下: