




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、什么是Oozie ? 1.Apache Oozie 是用于 Hadoop 平臺的一種工作流調度引擎,用于運行Hadoop Map/Reduce和Pig 任務工作流.同時Oozie還是一個Java Web程序,運行在Java Servlet容器中。2.Oozie工作流中的任務是在遠程運行,Oozie負責任務的調度分發,將資源發送到JOB的運行環境。 3.Oozie工作流中擁有多個Action,所有的Action以有向無環圖(DAG).4.Oozie工作流通過HPDL來構造。5.oozie是基于hadoop的調度器,以xml的形式寫調度流程,可以調度java,pig,hive,shell,jar等
2、等。6.Oozie工作流中包含可控制的工作流節點(control flow node)和Action節點(action node)。主要的功能有:Workflow: 順序執行流程節點,支持fork(分支多個節點),join(合并多個節點為一個)Coordinator,定時觸發workflowBundle Job,綁定多個coordinator 怎么使用Oozie ?Oozie工作流程圖 Oozie工作流程定義Oozie 工作流是控制依賴有向非循環圖 (DAG) 中安排的 Oozie 操作的集合。控制依賴(Control dependency)可確保以下操作在前面的操作已成功完成后才會啟動。控制
3、流節點:可以定義開始(start),結束(end),錯誤(fail)節點,也提供控制工作流的執行過程,如選擇(decision),并行(fork),join接點。DAG由控制流節點或動作節點組成,各個節點又是通過箭線互相連通。在Oozie中工作流的狀態有幾種:PREP(準備狀態),RUNNING(運行),SUSPENDED(掛起),SUCCEEDED(成功),KILLED(殺死),FAILED(失敗)。控制流節點1. 啟動控制節點:是工作流作業的入口點。在工作流啟動時,它會自動過渡到啟動過程中指定的節點。 2. 末端控制節點:是結束工作流作業時所用的節點。它表示工作流操作已經成功完成。一個工作
4、流定義必須有一個末端節點。 3. 停止控制節點:可使工作流作業自行停止。在到達停止節點(kill node)時,如果工作流作業啟動的一個或更多操作正在運行,那么當前運行的所有操作都將停止。工作流定義可以包含零個或更多停止節點。 Sqoop failed, error message$wf:errorMessage(wf:lastErrorNode()控制流節點4.decision 決策控制節點:可使工作流確定要采用的執行路徑。決策節點的工作原理類似于擁有一組謂詞轉換對(predicates-transition pair)和一個默認轉換的 switch-case 塊。謂詞是按順序進行評估的,直
5、至其中一個評估為 ture 為止,同時還會進行相應的轉換。如果沒有一個謂詞被評估為 true,則會采用默認轉換。 $wf:actionData(hiveSwitch)paramNum eq 1 控制流節點5.分支-聯接控制流節點(fork.join)-并發執行任務 動作節點(Aciton)工作流程定義中,能夠發出一個計算任務或者處理任務執行的節點稱為動作節點動作 的基本特性:1.遠程執行: 對Oozie來說,動作節點的執行都是遠程的,因為Oozie可能部署在一個單獨的服務器上,而工作流Job是在Hadoop集群的節點上執行的。即使Oozie在Hadoop集群的某個節點上,它也是處于與Hadoo
6、p進行獨立無關的JVM示例之中(Oozie部署在Servlet容器當中)。2.異步性:動作節點的執行,對于Oozie來說是異步的。Oozie啟動一個工作流Job,這個工作流Job便開始執行。Oozie可以通過兩種方式來探測工作流Job的執行情況:一種是基于回調機制,對每個任務的執行(可以看成是動作節點的執行)都對應一個唯一的URL,如果任務執行結束或者執行失敗,會通過回調這個URL通知Oozie已經完成;另一種就是輪詢,Oozie不停地去查詢任務執行的完成狀態,如果由于網絡故障回調機制失敗,也會使用輪詢的方式來處理。3.執行結果要么成功,要么失敗 ,如果動作節點執行成功,則會轉向ok節點;如果
7、失敗則會轉向error節點。4.可恢復性:如果一個動作節點執行失敗,Oozie提供了一些恢復執行的策略,這個要根據失敗的特點來進行:如果是狀態轉移過程中失敗,Oozie會根據指定的重試時間間隔去重新執行;如果不是轉移性質的失敗,則只能通過手工干預來進行恢復;如果重試恢復執行都沒有解決問題,則最終會跳轉到error節點。oozie格式寫一個Oozie,有兩個是必要的:perties和workflow.xml1、perties里定義環境變量 工作流生命周期 Oozie shell 操作可以將 Oozie shell 操作作為工作流的一部分進行配置,從而運行某個文件中的一
8、組 shell 腳本。您可以利用包含必要參數的 job-tracker、name-node 和 exec 元素來配置 Oozie shell 操作,從而執行相關的任務,如清單 6 所示。您可以將具有配置參數的一個配置 shell 操作來創建或刪除 HDFS 上的文件和目錄,然后啟動 shell 作業。您可以使用與配置元素內聯的 job-xml 元素,利用配置參數將一個 XML 文件傳遞給 shell 作業。您可以配置其他文件或歸檔文件,讓它們可用于 shell 作業。在 shell 作業結束后,您可以讓 shell 作業的輸出可供 workflow 作業使用,但它需要滿足以下條件:輸出的格式必
9、須是一個有效的 Java 屬性文件。輸出的大小必須小于 2KB。Oozie Java 操作Java 操作運行了指定的主要 Java 類的 public static void main (String args) 方法。Java 應用程序作為具有單個 mapper 任務的 MapReduce 作業運行在 Hadoop 集群上。工作流作業一直要等到 Java 操作結束運行之后才能繼續執行下一個操作。Java 操作可使用 job-tracker、name-node、Java 主類、JVM 選項和輸入參數進行配置,如清單 9 所示。您可以使用 Expression Language (EL) 表達式
10、將參數分配給內聯屬性值。您必須以 Java 屬性文件的格式寫入所有輸出參數。您可以配置 Java 操作來清理 HDFS 文件和目錄,或者建立 Apache HCatalog 分區,然后再啟動 Java 應用程序。這使得 Oozie 能夠在出現暫時性或非暫時性故障時重試 Java 操作。Oozie Hive 操作可以配置 Hive 操作,來執行 HDFS 上的文件和目錄中的任何 Hive 腳本。該操作啟動了一個 MapReduce 作業來完成這些任務。您需要在 Oozie 上配置 Hive 操作,使用 Hive 配置文件 hive-default.xml 或 hive-site.xml 作為 j
11、ob-xml 元素。對于支持 Hive 訪問 Oozie 環境而言,這一點是必需的。您可以配置 Hive 操作來創建或刪除 HDFS 文件和目錄,然后再啟動 Hive 作業。configuration 元素中指定的屬性值將會覆蓋 job-xml 文件中指定的值。您可以添加其他的文件和歸檔文件,讓它們可用于 Hive 作業。Oozie 執行了由腳本元素中的路徑指定的 Hive 腳本。您可以通過 Oozie 工作流,將參數作為輸入參數分配給 Hive 腳本。注意事項:運行Oozie應用時,作業的配置文件,jar包,相關程序代碼,不如hive ql要放在HDFS上,只有屬性文件(perties)放在本地磁盤。 怎么運行Oozie ?oozie運行啟動任務:Java代碼oozie job -oozie http:/xxx5:11000/oozie -config perties -run 停止任務:oozie job -oozie http:/localhost:8080/oozie -kill 14-20090525161321-oozie-joe注意:在停止任務的時候,有的時候會出現全線問題,需要修
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 景觀設計畢業答辯方案匯報
- 《上海汽車展》課件
- 醫學微生物學試題庫含答案(附解析)
- 保育員(高級)考試題含參考答案解析
- 8月化學檢驗員(初級)考試題+參考答案解析
- 中學生物教育教學研究
- 《海爾品牌戰略案例》課件
- 藥品倉儲庫房貨架光滑度測試考核試卷
- 電力儀表的節能技術考核試卷
- 調味品與文化傳承的結合考核試卷
- 頭療館轉讓合同
- 2025年軍隊文職考試《公共科目》試題與參考答案
- 國內外科研機構績效管理模式分析
- 2023年高考真題-物理(福建卷) 含答案
- 1型糖尿病飲食宣教
- 《精裝修成品保護》課件
- 學校食堂設備故障應急預案
- 《中小學生時間規劃管理主題班會:做時間的主人》課件(五套)
- 二年級乘除法口訣專項練習1000題
- DB35T 2148-2023 養殖大黃魚等級規格
- 藥企與醫療機構合作協議書范文
評論
0/150
提交評論