Airflow Console: https://github.com/Ryan-Miao/airflow-console

Apache Airflow扩展组件,

可以辅助生成dag, 并存储到git仓库.

Airflow提供了基于python语法的dag任务管理,我们可以定制任务内容

和任务依赖. 但对于很多数据分析人员来说,操作还是过于复杂. 期望可以

通过简单的页面配置去管理dag.

即本项目提供了一个dag可视化配置管理方案.

如何使用

一些概念

DAG: Airflow原生的dag, 多个任务依赖组成的有向无环图, 一个任务依赖链。

Ext Dag: DAG扩展, DAG生成模板,通过页面配置Ext Dag可以一键生成DAG python配置。

Ext Dag Category: Airflow原生不提供分类的概念,但Console我们扩展了分类功能, 我们创建不同Dag模板可以分属于不同的DAG分类。

Ext Dag Task: Ext Dag的任务,真正任务的封装体,分为Operator和Sensor, 可以组装成Ext Dag.

1.创建业务分类.

我们的调度任务可以根据业务进行分类. 首先创建我们的业务类型.



2.创建dag

3.创建任务

点击task按钮进入task列表, 再点击add添加一个任务.

添加bash任务

添加hive sql任务

添加hive出库到mysql任务, 对应的插件为hive_to_rdbms_operator

4.配置任务依赖关系

Airflow提供了任务上下游依赖的管理方案,具体就是使用python的 >> 语法

a >> b 表示a的{{ds}}的任务执行完毕才可以执行b.

点击更新按钮保存依赖关系.

5.生成dag.py脚本

点击提交按钮, 生成python脚本预览.

确认没有问题后, 提交就可以将dag保存的git仓库. Airflow那边定时拉取git更新即可.

本地启动

通过docker-airflow

启动airflow, 暴露pg端口和webserver端口,

docker-compose.yml

cd doc
docker-compose up

启动后访问localhost:8090即airflow初始化完成.

  1. 修改本项目db

修改application-dev.yml中DataSource的url host为localhost.

  1. 导入db

schema.sql导入pg.

  1. 启动本项目

访问localhost:8081/api 即swagger地址.

  1. 启动web

最新文章

  1. iOS开发系列--打造自己的“美图秀秀”
  2. dr.wondr博士随笔之某古旧非智能机T6XXX 恢复一例
  3. java中的==和equals
  4. 用LR12录制app,用LR11跑场景,无并发数限制,已试验过,可行!
  5. linux Shell的使用
  6. http://www.cnblogs.com/wzh206/archive/2010/03/21/1691112.html
  7. poj3686The Windy's (KM)
  8. [liu yanling]测试用例设计综合策略
  9. ORACLE数据库不同故障下的恢复总结
  10. Unity 压缩texture
  11. css3新属性的学习使用
  12. HDU 1216 Assistance Required 埃拉托色尼色筛法
  13. Debian9 配置之旅
  14. js 浏览器兼容css中webkit、Moz、O、ms...写法封装(es6语法)
  15. hdu5238 calculator (线段树+crt)
  16. Mac上通过iterm 上传文件到服务器
  17. ABBYY PDF Transformer+安装教程
  18. Spring之JDBCTemplate学习
  19. 用H5上传文件
  20. ZH奶酪:哈工大LTP云平台标记含义及性能

热门文章

  1. Android 用视频做页面背景
  2. 关于前端数据&逻辑的思考
  3. 记一次开发CefSharp做浏览器时关闭页面上时未释放遇到的小问题
  4. CD题解(药水的选择)
  5. JAVA基础笔记10-11-12-13-14
  6. 调整数组顺序使奇数位于偶数前面(剑指offer-13)
  7. python学习笔记之文件操作(三)
  8. python 检索文件内容工具
  9. TKCTF-学校内部的校赛
  10. 用Kubernetes部署Springboot或Nginx,也就一个文件的事