自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

2022年,閑聊 Airflow 2.2

開發(fā) 架構(gòu)
現(xiàn)在你覺得Airflow是不是在工作中還真有點(diǎn)用,有沒有一些共同的痛點(diǎn)呢?既然了解了airflow的作用,那就走進(jìn)的airflow,熟悉一下airflow的組件架構(gòu)。

1airflow

Airflow[1]是一個分布式任務(wù)調(diào)度框架,可以把具有上下級依賴關(guān)系的工作流組裝成一個有向無環(huán)圖[2]; 有向無環(huán)圖長得就如下一般:圖片

說的云里霧里的,那么Airflow究竟是什么呢?簡單說,airflow就是一個平臺,你可以在這個平臺上創(chuàng)建、管理、執(zhí)行自定義的工作流,這里的工作流就是前面所說的有向無環(huán)圖,如上圖所示一樣,有向無環(huán)圖是由一系列單獨(dú)運(yùn)行的task組合而成,任務(wù)之間的前后排列取決于任務(wù)之間處理的關(guān)系或者數(shù)據(jù)的流轉(zhuǎn)的方向,而這里的工作流有一個很專業(yè)的名字叫DAG(Directed Acyclic Graph),我相信看到這里,你心中應(yīng)該有些許概念了。

既然知道Airflow是什么了,那么它究竟能解決平常工作中的哪些問題呢?下面就需要聊聊具體的使用場景了:

Airflow解決的場景

  • 幫助運(yùn)維追溯服務(wù)器中運(yùn)行的定時任務(wù)的執(zhí)行的結(jié)果
  • 大數(shù)據(jù)處理場景下,方便管理觸發(fā)導(dǎo)入導(dǎo)出線上數(shù)據(jù)的各個任務(wù)以及這些任務(wù)之間的依賴關(guān)系
  • 實(shí)現(xiàn)大規(guī)模主機(jī)集群中作業(yè)統(tǒng)一的調(diào)度和管理平臺
  • 等等其它場景...

現(xiàn)在你覺得Airflow是不是在工作中還真有點(diǎn)用,有沒有一些共同的痛點(diǎn)呢?既然了解了airflow的作用,那就走進(jìn)的airflow,熟悉一下airflow的組件架構(gòu)。

Airflow架構(gòu)

Airflow架構(gòu)圖

Worker

見名知意,它就是一線干活的,用來處理DAG中定義的具體任務(wù)

Scheduler

是airflow中一個管事的組件,用于周期性輪詢?nèi)蝿?wù)的調(diào)度計(jì)劃,然后將任務(wù)分發(fā)給執(zhí)行的程序運(yùn)行工作流

Webserver

webserver是Airflow中通過flask框架整合管理界面,可以讓你通過http請求與airflow通信來管理airflow,可以通過界面的方式查看正在運(yùn)行的任務(wù),以及任務(wù)的運(yùn)行狀態(tài)、運(yùn)行日志等等,

通過管理界面創(chuàng)建、觸發(fā)、中止任務(wù)讓airflow使用變得更加簡單。如下圖所示,當(dāng)然這也是airflow的一個絕大優(yōu)勢。

Airflow Dashboard

Metadata Database

airflow的元數(shù)據(jù)數(shù)據(jù)庫,供scheduler、worker和webserver用來存儲狀態(tài)。

從整體上看Airflow的組件架構(gòu)不是很復(fù)雜,當(dāng)然這里的我們也進(jìn)行了一些其他任務(wù)編排工具,對比一下

2Airflow類似的編排工具比較

編排工具的受歡迎度

總體而言,Apache Airflow既是最受歡迎的工具,也是功能最廣泛的工具。

Airflow vs Luigi

luigi與airflow都是使用python和dag定義任務(wù)和依賴項(xiàng),但是luigi在架構(gòu)和使用上相對更加的單一和簡單,同時airflow因?yàn)閾碛胸S富的UI和計(jì)劃任務(wù)方便顯示更勝一籌,而luigi需要更多的自定義代碼實(shí)現(xiàn)的計(jì)劃任務(wù)的功能

Airflow vs Argo

airflow與argo都可以將任務(wù)定義為DAG,但是在Airflow中,您可以使用Python進(jìn)行此操作,而在Argo中,要使用YAML

Airflow vs Kubeflow

Airflow是一個通用的任務(wù)編排平臺,而Kubeflow特別專注于機(jī)器學(xué)習(xí)任務(wù),兩種工具都使用Python定義任務(wù),但是Kubeflow在Kubernetes上運(yùn)行任務(wù)。Kubeflow分為Kubeflow和Kubeflow管道:后一個組件允許您指定DAG,但與常規(guī)任務(wù)相比,它更側(cè)重于部署和監(jiān)控模型。

Airflow vs MLFlow

Airflow是一個通用的任務(wù)編排平臺,而MLFlow是專門為優(yōu)化機(jī)器學(xué)習(xí)項(xiàng)目而構(gòu)建的。這意味著MLFlow具有運(yùn)行和跟蹤實(shí)驗(yàn),以及訓(xùn)練和部署機(jī)器學(xué)習(xí)模型的功能,而Airflow適用于更廣泛的用例,您可以使用它來運(yùn)行任何類型的任務(wù)。

Airflow是一組管理和計(jì)劃任務(wù)的模塊的集合,MLFlow是一個純粹的Python庫,您可以將其導(dǎo)入到現(xiàn)有的機(jī)器學(xué)習(xí)代碼中。

從了解Airflow的概念,到使用場景,已然對airflow這種編排工具有一定的了解,通過拆分了解airflow組件架構(gòu),又進(jìn)一步對airflow的工作流程有一個初步的認(rèn)識,通過與其他編排工具對比,了解的airflow的優(yōu)勢以及結(jié)合自身的使用場景,更加有助于判斷,對編排工具選型的重要性。下一步,就將在實(shí)踐中在深一步走進(jìn)airflow。

責(zé)任編輯:武曉燕 來源: 云原生生態(tài)圈
相關(guān)推薦

2009-11-10 12:44:01

Visual Stud

2017-07-04 13:37:57

調(diào)度工具Airflow開源

2021-08-11 10:50:35

AirFlow MaxCompute阿里云

2010-05-20 16:27:25

2009-11-06 11:04:29

Visual Stud

2009-12-29 15:29:59

Ubuntu云計(jì)算

2009-11-16 17:15:12

Oracle減少回滾段

2022-04-29 11:43:11

人工智能機(jī)器學(xué)習(xí)物聯(lián)網(wǎng)

2010-03-19 13:44:37

云計(jì)算

2009-12-29 10:23:33

2020-08-18 08:11:08

安全體系化建設(shè)漏洞網(wǎng)絡(luò)安全

2022-01-05 00:03:32

場景容器Airflow

2022-02-17 11:41:26

JavaScript框架編程語言

2021-10-15 13:44:09

人工智能AI深度學(xué)習(xí)

2022-11-23 15:45:21

2022-06-22 13:20:21

物聯(lián)網(wǎng)傳感器機(jī)器

2022-07-11 09:00:35

VueVue 3

2021-11-23 10:56:53

物聯(lián)網(wǎng)應(yīng)用物聯(lián)網(wǎng)IOT

2022-06-16 11:33:57

物聯(lián)網(wǎng)區(qū)塊鏈科技

2022-11-15 09:28:53

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號