Airflow Dag可视化管理编辑工具Airflow Console

基于个人理解的springAOP部分源码分析,内含较多源码,慎入

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

爬虫管理平台以及wordpress本地搭建

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

Airflow Dag可视化管理编辑工具Airflow Console
免责声明:非本网注明原创的信息,皆为程序自动获取互联网,目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责;如此页面有侵犯到您的权益,请给站长发送邮件,并提供相关证明(版权证明、身份证正反面、侵权链接),站长将在收到邮件12小时内删除。

IntelliJ IDEA 2020.2正式发布,诸多亮点总有几款能助你提效