主要功能
-
使用Python代码动态生成DAG,可以做到更加灵活的配置和某种意义上的简单配置DAG。
-
丰富的Operator、Hook,支持非常多的第三方组件,能满足多种需求。
-
支持Apache Atlas,实现数据追踪。
-
具有方便的任务失败重试功能,及任务失败时自动发送报警邮件通知。
-
功能较为完善,支持命令行操作,以及REST请求触发DAG。
-
支持集群方式执行任务。
-
与LDAP或Kerberos集成,实现管理权限验证。
-
有多种展现方式查看调度的历史记录,方便监控。
与其他调度框架比较
Oozie
相比Oozie,Airflow使用方便,依赖很少。Oozie依赖YARN和HDFS,并且只能在YARN上执行,极大地限制了被调度任务的类型与代码执行方式。
Azkaban
相比Azkaban,Airflow更加通用且支持更多特性。Azkaban使用YAML配置文件生成DAG,欠缺灵活性。支持的第三方组件非常少,使用不太便捷。另外,Airlfow的社区活跃度高很多。