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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM