专栏首页Ryan MiaoAirflow Dag可视化管理编辑工具Airflow Console

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

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

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 【 airflow 实战系列】 基于 python 的调度和监控工作流的平台

    airflow 是一个使用python语言编写的data pipeline调度和监控工作流的平台。Airflow被Airbnb内部用来创建、监控和调整数据管道。...

    刘远
  • 你不可不知的任务调度神器-AirFlow

    Airflow 是一个编排、调度和监控workflow的平台,由Airbnb开源,现在在Apache Software Foundation 孵化。AirFlo...

    王知无-import_bigdata
  • 闲聊Airflow 2.0

    在 2020 年 12 月 17 日 Apache Airflow 团队发布了 Apache Airflow 2.0.0。当时就想写写 Airflow 的新特性...

    哒呵呵
  • 闲聊调度系统 Apache Airflow

    Apache Airflow 是一个由开源社区维护的,专职于调度和监控工作流的 Apache 项目,于2014年10月由 Airbnb 开源,2019年1月从 ...

    哒呵呵
  • 实用调度工具Airflow

    引言 前面写过一篇文章《端午搬砖:聊聊调度云服务》,主要讲云服务的。如果企业也业务上云,可以优先选用这些服务,减少工作量。 而在传统企业内部,数据集成是基础,更...

    大数据和云计算技术
  • Agari使用Airbnb的Airflow实现更智能计划任务的实践

    这是一篇由 Siddharth Anand撰写的文章,他是Agari公司的数据架构师。本文是Agari使用Airbnb的Airflow实现更智能计划任务的实践,...

    CSDN技术头条
  • Apache AirFlow 入门

    Airflow 于 2014 年 10 月由 Airbnb 的 Maxime Beauchemin 开始。它是第一次提交的开源,并在 2015 年 6 月宣布正...

    HLee
  • 没看过这篇文章,别说你会用Airflow

    Airflow 作为一款开源分布式任务调度框架,已经在业内广泛应用。本文总结了 Freewheel Transformer 团队近两年使用 Airflow 作为...

    深度学习与Python
  • 调度系统Airflow的第一个DAG

    考虑了很久,要不要记录airflow相关的东西, 应该怎么记录. 官方文档已经有比较详细的介绍了,还有各种博客,我需要有一份自己的笔记吗?

    Ryan-Miao
  • Airflow配置和使用

    Airflow能做什么 Airflow是一个工作流分配管理系统,通过有向非循环图的方式管理任务流程,设置任务依赖关系和时间调度。 Airflow独立于我们要运行...

    生信宝典
  • 任务流管理工具 - Airflow配置和使用

    Airflow能做什么 Airflow是一个工作流分配管理系统,通过有向非循环图的方式管理任务流程,设置任务依赖关系和时间调度。 Airflow独立于我们要运行...

    生信宝典
  • 0612-如何在RedHat7.4上安装airflow

    Airflow是一款纯Python编写的任务流调度工具,airflow由许多模块组成,用户可单独安装部分模块比如pip install 'apache-airf...

    Fayson
  • 调度系统Airflow1.10.4调研与介绍和docker安装

    随着公司调度任务增大,原有的,基于crontab和mysql的任务调度方案已经不太合适了,需要寻找一个可以支持分布式扩容的调度系统解决方案。

    Ryan-Miao
  • airflow—执行器CeleryExecutor(3)

    CeleryExecutor可用于正式环境,使用 Celery 作为Task执行的引擎, 扩展性很好。这里使用rabbitmq作为celery的消息存储。

    刘远
  • 如何部署一个健壮的 apache-airflow 调度系统

    介绍了如何安装、配置、及使用,本文介绍如何如何部署一个健壮的 apache-airflow 调度系统 - 集群部署。

    somenzz
  • Airflow速用

    Airflow是Apache用python编写的,用到了 flask框架及相关插件,rabbitmq,celery等(windows不兼容);、

    用户1558882
  • 0613-Airflow集成自动生成DAG插件

    Airflow的DAG是通过python脚本来定义的,原生的Airflow无法通过UI界面来编辑DAG文件,这里介绍一个插件,通过该插件可在UI界面上通过拖放的...

    Fayson
  • Centos7安装部署Airflow详解

    ——————————————————————————————————————————————

    待你如初见
  • DAG、Workflow 系统设计、Airflow 与开源的那些事儿

    DAG (Directed Acyclic Graph) 是一个非常有用、也有很有意思的数据结构。如果说数组、链表、二叉树这类数据结构是学习中的基础,那么 DA...

    包子面试培训

扫码关注云+社区

领取腾讯云代金券