Operators:
a. sensor: 感应器, 等待某个时间发生。该事件可以是HDFS的文件,既有的hive分区表或者是某个mysql 查询返回一行。
b. Remote Execution: 在远程机器上触发操作,可以是HQL语句,pig 脚本,mapreduce job,oracle 存储过程或者是bash脚本。
c. Data Transfers: 迁移数据从一个系统到另一个, 推送hive数据到myql或者从本地到hdfs,从postgresql到oracle或者其他。
Tasks:
一个任务代表了实例化的操作,因此也变成了一个有向无环图的节点,当调用抽象操作时候,该实例定义了特定的值。 一个任务可以等待某个特定hive 分区,oracle中触发特定的DML语句。
Task Instances
一个实例任务代表了在特定时间点的任务执行,当该任务定义了启动时间和调度(每小时或每天),一个任务实例代表了特定的运行任务。 任务实例有“已启动”,“重试”,“失败”,“成功”
Hooks:
对外部平台提供一个接口如:HIve,S3,Mysql,PostgreSQL,HDFS和Pig。 Hooks尽可能的实现了一个通用接口,并以一个模块的形式存在。有时候也用“airflow.models.Connection“ 模块来检索主机名和认证信息, Hooks保持认证代码和pipline的输出信息,并在集中在元存储数据库中。
Pools:
一些系统在处理多数进程的时候会被压跨,airflow pools 用来限制并发执行任务。其中pools 列表在UI(Memu——>Admin->Pools).可以通过输入pool的名字,或者分配一定数量的worker。该参数可以和priority_weight 一起结合使用,默认的优先级的值是1,可以调整为任何值。
Connections:
连接外部系统(用来存元数据信息).
未完待续
参考link:
阅读(5272) | 评论(0) | 转发(0) |