airflow 是一个使用python语言编写的data pipeline管理、调度和监控工作流的平台
DAG:
- 多个task的集合,定义了这些task间的执行顺序和依赖关系。
- 定义在python文件中,airflow会执行每一个文件,动态构建出DAG对象,每一个DAG对应一个workflow。在airflow动态构建过程中,发现DAG满足触发条件,则生产当前execution date的DAG运行实例(DAG RUN)
task和opeartor:
- task是operator的一个实例,也是DAGs中的一个node
- operator描述了task的类型,不同operator可以用来完成不同类型的task;一个operator定义一个task,每个operator独立执行,如:
- HiveOperator:执行Hive SQL,通常是执行ETL,将数据运算提取后写入目标
- HivePartitionSensor:检测Hive表中的某个分区是否存在
- PythonOperator:执行Python脚本
- operator描述了task的类型,不同operator可以用来完成不同类型的task;一个operator定义一个task,每个operator独立执行,如: