hadoop工作流調度系統


常見工作流調度系統

Oozie, Azkaban, Cascading, Hamake

各種調度工具特性對比

 

特性

Hamake

Oozie

Azkaban

Cascading

工作流描述語言

XML

XML (xPDL based)

text file with key/value pairs

Java API

依賴機制

data-driven

explicit

explicit

explicit

是否要web容器

No

Yes

Yes

No

進度跟蹤

console/log messages

web page

web page

Java API

Hadoop job調度支持

no

yes

yes

yes

運行模式

command line utility

daemon

daemon

API

Pig支持

yes

yes

yes

yes

事件通知

no

no

no

yes

需要安裝

no

yes

yes

no

支持的hadoop版本

0.18+

0.20+

currently unknown

0.18+

重試支持

no

workflownode evel

yes

yes

運行任意命令

yes

yes

yes

yes

Amazon EMR支持

yes

no

currently unknown

yes

Azkaban與Oozie對比

ooize相比azkaban是一個重量級的任務調度系統,功能全面,但配置使用也更復雜。如果可以不在意某些功能的缺失,輕量級調度器azkaban是很不錯的候選對象。

詳情如下:

1、功能

都可以調度mapreduce、pig、java、腳本等工作流任務和執行工作流任務

2、工作流定義

Azkaban使用Properties文件定義工作流,Oozie使用XML文件定義工作流

3、工作流傳參

Azkaban支持直接傳參,例如${input},Oozie支持參數和EL表達式,例如${fs:dirSize(myInputDir)}

4、定時執行

Azkaban的定時執行任務是基於時間的,Oozie的定時執行任務基於時間和輸入數據

5、資源管理

Azkaban有較嚴格的權限控制,如用戶對工作流進行讀/寫/執行等操作,Oozie暫無嚴格的權限控制

6、工作流執行

Azkaban有兩種運行模式,分別是solo server mode(executor server和web server部署在同一台節點)和multi server mode(executor server和web server可以部署在不同節點)

Oozie作為工作流服務器運行,支持多用戶和多工作流

7、工作流管理

Azkaban支持瀏覽器以及ajax方式操作工作流

Oozie支持命令行、HTTP REST、Java API、瀏覽器操作工作流

Azkaban

Azkaban是由Linkedin開源的一個批量工作流任務調度器。用於在一個工作流內以一個特定的順序運行一組工作和流程。Azkaban定義了一種KV文件格式來建立任務之間的依賴關系,並提供一個易於使用的web用戶界面維護和跟蹤你的工作流。

它有如下功能特點:

1、Web用戶界面

2、方便上傳工作流

3、方便設置任務之間的關系

4、調度工作流

5、認證/授權(權限的工作)

6、能夠殺死並重新啟動工作流

7、模塊化和可插拔的插件機制

8、項目工作區

9、工作流和任務的日志記錄和審計


免責聲明!

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



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