Oozie的作用


 

 

Oozie的作用:
  1、統一調度hadoop系統中常見的mr任務啟動、 hdfs操作、 shell調度、 hive操作等
  2、使得復雜的依賴關系、時間觸發、事件觸發使用xml語言進行表達,開發效率提高
  3、一組任務使用一個DAG來表示,使用圖形表達流程邏輯更加清晰
  4、支持很多種任務調度,能完成大部分hadoop任務處理
  5、程序定義支持EL常量和函數,表達更加豐富

 

 

 

 

  Oozie是一個開源的工作流調度系統,它能夠管理邏輯復雜的多個Hadoop作業,按照指定的順序將其協同運行起來。

例如,我們可能有這樣一個需求,某個業務系統每天產生20G原始數據,我們每天都要對其進行處理,處理步驟如下所示:

1、通過Hadoop先將原始數據同步到HDFS上;
2、借助MapReduce計算框架對原始數據進行轉換,生成的數據以分區表的形式存儲到多張Hive表中;
3、需要對Hive中多個表的數據進行JOIN處理,得到一個明細數據Hive大表;
4、將明細數據進行復雜的統計分析,得到排序后的報表信息;
5、需要將統計分析得到的結果數據同步到業務系統中,供業務調用使用。

  上述過程可以通過工作流系統來編排任務,最終生成一個工作流實例,然后每天定時啟動運行這個實例即可。
  在這種依賴於Hadoop存儲和處理能力要求的應用場景下,Oozie可能能夠簡化任務調度和執行。

 

 

 

  Oozie的主要功能包括:組織各種工作流(包括Pig、Hive等),以規定方式執行工作流(包括定時任務、定數任務、數據促發任務等),托管工作流(包括命令行接口,任務失敗時的通知機制,如郵件通知等)

  由於,需要存儲工作流信息,為提高可靠性,確保任務配置不丟失,Oozie內部使用數據庫來存儲工作流相關信息,用戶可以使用Oozie內嵌的Derby數據庫,也可以使用MySQL、PostgreSQl、Orcale等數據庫。


免責聲明!

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



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