日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 >

工作流调度系统介绍,常见工作流调度系统对比,azkaban与Oozie对比,Azkaban介绍与特性(来自学习笔记)

發(fā)布時間:2024/9/27 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 工作流调度系统介绍,常见工作流调度系统对比,azkaban与Oozie对比,Azkaban介绍与特性(来自学习笔记) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

1. 工作流調(diào)度器azkaban

1.1 概述

1.1.1為什么需要工作流調(diào)度系統(tǒng)

一個完整的數(shù)據(jù)分析系統(tǒng)通常都是由大量任務(wù)單元組成:shell腳本程序,java程序,mapreduce程序、hive腳本等
各任務(wù)單元之間存在時間先后及前后依賴關(guān)系
為了很好地組織起這樣的復(fù)雜執(zhí)行計劃,需要一個工作流調(diào)度系統(tǒng)來調(diào)度執(zhí)行;

例如,我們可能有這樣一個需求,某個業(yè)務(wù)系統(tǒng)每天產(chǎn)生20G原始數(shù)據(jù),我們每天都要對其進行處理,處理步驟如下所示:
1、 通過Hadoop先將原始數(shù)據(jù)同步到HDFS上;
2、 借助MapReduce計算框架對原始數(shù)據(jù)進行轉(zhuǎn)換,生成的數(shù)據(jù)以分區(qū)表的形式存儲到多張Hive表中;
3、 需要對Hive中多個表的數(shù)據(jù)進行JOIN處理,得到一個明細(xì)數(shù)據(jù)Hive大表;
4、 將明細(xì)數(shù)據(jù)進行復(fù)雜的統(tǒng)計分析,得到結(jié)果報表信息;
5、 需要將統(tǒng)計分析得到的結(jié)果數(shù)據(jù)同步到業(yè)務(wù)系統(tǒng)中,供業(yè)務(wù)調(diào)用使用。

1.1.2 工作流調(diào)度實現(xiàn)方式

簡單的任務(wù)調(diào)度:直接使用linux的crontab來定義;
復(fù)雜的任務(wù)調(diào)度:開發(fā)調(diào)度平臺
或使用現(xiàn)成的開源調(diào)度系統(tǒng),比如ooize、azkaban等

1.1.3 常見工作流調(diào)度系統(tǒng)

市面上目前有許多工作流調(diào)度器
在hadoop領(lǐng)域,常見的工作流調(diào)度器有Oozie, Azkaban,Cascading,Hamake等

1.1.4 各種調(diào)度工具特性對比

下面的表格對上述四種hadoop工作流調(diào)度器的關(guān)鍵特性進行了比較,盡管這些工作流調(diào)度器能夠解決的需求場景基本一致,但在設(shè)計理念,目標(biāo)用戶,應(yīng)用場景等方面還是存在顯著的區(qū)別,在做技術(shù)選型的時候,可以提供參考

特性HamakeOozieAzkabanCascading
工作流描述語言XMLXML (xPDL based)text file with key/value pairsJava API
依賴機制data-drivenexplicitexplicitexplicit
是否要web容器NOYESYESNO
進度跟蹤console/log messagesweb pageweb pageJava API
Hadoop job調(diào)度支持noYESYESYES
運行模式command line utilitydaemondaemonAPI
Pig支持yesyesyesyes
事件通知nononoyes
需要安裝noyesyesno
支持的hadoop版本0.18+0.20+currently unknown0.18+
重試支持noworkflownode evelyesyes
運行任意命令yesyesyesyes
Amazon EMR支持yesnocurrently unknownyes

1.1.5 Azkaban與Oozie對比

對市面上最流行的兩種調(diào)度器,給出以下詳細(xì)對比,以供技術(shù)選型參考。總體來說,ooize相比azkaban是一個重量級的任務(wù)調(diào)度系統(tǒng),功能全面,但配置使用也更復(fù)雜。如果可以不在意某些功能的缺失,輕量級調(diào)度器azkaban是很不錯的候選對象。
詳情如下:
功能
兩者均可以調(diào)度mapreduce,pig,java,腳本工作流任務(wù)
兩者均可以定時執(zhí)行工作流任務(wù)

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

工作流傳參
Azkaban支持直接傳參,例如inputOozie數(shù)ELinputOozie支持參數(shù)和EL表達式,例如{fs:dirSize(myInputDir)}

定時執(zhí)行
Azkaban的定時執(zhí)行任務(wù)是基于時間的
Oozie的定時執(zhí)行任務(wù)基于時間和輸入數(shù)據(jù)

資源管理
Azkaban有較嚴(yán)格的權(quán)限控制,如用戶對工作流進行讀/寫/執(zhí)行等操作
Oozie暫無嚴(yán)格的權(quán)限控制

工作流執(zhí)行
Azkaban有兩種運行模式,分別是solo server mode(executor server和web server部署在同一臺節(jié)點)和multi server mode(executor server和web server可以部署在不同節(jié)點)
Oozie作為工作流服務(wù)器運行,支持多用戶和多工作流

工作流管理
Azkaban支持瀏覽器以及ajax方式操作工作流
Oozie支持命令行、HTTP REST、Java API、瀏覽器操作工作流

1.2 Azkaban介紹

Azkaban是由Linkedin開源的一個批量工作流任務(wù)調(diào)度器。用于在一個工作流內(nèi)以一個特定的順序運行一組工作和流程。Azkaban定義了一種KV文件格式來建立任務(wù)之間的依賴關(guān)系,并提供一個易于使用的web用戶界面維護和跟蹤你的工作流。
它有如下功能特點:
1.Web用戶界面
2.方便上傳工作流
3.方便設(shè)置任務(wù)之間的關(guān)系
4.調(diào)度工作流
5.認(rèn)證/授權(quán)(權(quán)限的工作)
6.能夠殺死并重新啟動工作流
7.模塊化和可插拔的插件機制
8.項目工作區(qū)
9.工作流和任務(wù)的日志記錄和審計

與50位技術(shù)專家面對面20年技術(shù)見證,附贈技術(shù)全景圖

總結(jié)

以上是生活随笔為你收集整理的工作流调度系统介绍,常见工作流调度系统对比,azkaban与Oozie对比,Azkaban介绍与特性(来自学习笔记)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。