Azkaban是一個很是輕量的開源調度框架,適合二次開發,可是沒法直接用於生產環境,存在致命缺陷(好比AzkabanWebServer是單點,1年多時間沒有修復),在一些情景下的行爲簡單粗暴(好比重啓AzkabanExecutorServer會致使該server上正在運行的全部流程fail),不少時候須要人工干預,要達到生產環境的可靠性級別,至少大量二次開發,而且官方代碼更新很快,合併代碼有很大沖突風險,適合於一些對可靠性要求不高能夠快速上手的小公司,不建議使用;git
Oozie做爲apache頂級項目,使用普遍,功能豐富,代碼質量高,成熟可靠,代碼和部署相對複雜一點,建議使用;github
|
Oozieweb |
Azkabanapache |
版本框架 |
4.3tcp |
3.45oop |
開發語言url |
Javaspa |
Java插件 |
任務配置 |
Xml文件(存放在hdfs) Properties文件 |
Properties文件(打成Zip,上傳後存放在DB) |
添加任務 |
hdfs上傳Xml文件後client經過Properties文件提交 |
web上傳Zip AJAX上傳Zip |
任務運行 |
Yarn |
AzkabanExecutorServer執行 |
分配粒度 |
任務 |
工做流 |
失敗重試 |
支持 |
支持 |
擴展性 |
好,支持服務擴展、任務擴展 |
好,支持插件化、任務擴展 |
接口 |
命令行 Java API |
網頁 AJAX API |
支持任務類型 |
HDFS、MapReduce、Java、Shell、SSH、Pig、Hive、E-Mail、Sub-Workflow、Sqoop、Distcp |
Shell、Java 其餘須要插件支持 |
部署 |
相對複雜 |
簡單 |
GUI |
開源Hue提供GUI方式編輯流程定義 |
不提供GUI編輯流程定義 |
可靠性 |
可靠 經過Zookeeper實現HA |
不可靠 AzkabanWebServer是單點,17年3月社區就提到該問題,但1年多事後尚未修復 |
重啓影響 |
無 |
重啓AzkabanExecutorServer會致使該server上正在運行的全部流程fail,還可能須要刷新executors狀態 |
代碼質量 |
很是好 |
通常,而且代碼中不少TODO |
代碼更新 |
慢 |
很快,小版本不少 |
任務重複運行風險 |
無 |
有 |
SLA |
支持 |
支持 |
監控 |
web-services API instrumentation log |
不支持 |
流程狀態回調 |
JMS 或 oozie.coord.action.notification.url oozie.wf.workflow.notification.url oozie.wf.action.notification.url |
不支持 |