[發明專利]一種Hadoop集群管理任務的分發方法和系統有效
| 申請號: | 201510347803.9 | 申請日: | 2015-06-19 |
| 公開(公告)號: | CN104915260B | 公開(公告)日: | 2018-05-25 |
| 發明(設計)人: | 彭毅 | 申請(專利權)人: | 北京搜狐新媒體信息技術有限公司 |
| 主分類號: | G06F9/48 | 分類號: | G06F9/48;G06F9/50 |
| 代理公司: | 北京集佳知識產權代理有限公司 11227 | 代理人: | 王寶筠 |
| 地址: | 100084 北京市海淀區*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 子階段 分發 調度周期 任務分發 管理 排序 并行執行 調度單元 任務規劃 篩選條件 依次處理 依賴關系 組件節點 細粒度 預設 吞吐量 并行 掃描 調度 規劃 | ||
1.一種Hadoop集群管理任務的分發方法,其特征在于,包括:
接收來自用戶的管理操作命令,并驗證所述管理操作命令的有效性;
當所述管理操作命令有效時,解析所述管理操作命令,以生成管理任務集合;所述管理任務集合至少包括一個管理任務;
根據預先定義的Hadoop組件的依賴關系對所述管理任務集合內的管理任務進行階段規劃;其中,在階段規劃中,將能夠并行執行的管理任務規劃到同一階段,將執行有先后順序的管理任務規劃到不同階段;
依次處理每一階段中的管理任務,將同一階段內配往同一目標組件節點的管理任務規劃為一個子階段,形成<管理操作、階段、子階段>的三級層級的規劃數據;
當進入一個調度周期后,掃描當前待調度的子階段,并依據<管理操作、階段、子階段>的層級對所有待調度的子階段進行排序;
根據預設篩選條件按照排序后的子階段從前到后的順序依次判斷當前子階段是否適合在當前調度周期內進行任務分發;如果當前子階段適合在當前調度周期內進行任務分發,并且該當前子階段所屬管理操作之前分發的管理任務沒有失敗,則將當前子階段中的所有管理任務進行分發;
所述預設篩選條件為:當前子階段的調度不會破壞其所屬管理操作各階段執行的有序性;當前子階段中任務配往的目標組件節點在當前調度周期內沒有任務安排。
2.根據權利要求1所述的方法,其特征在于,如果當前子階段適合在當前調度周期內進行任務分發,并且該子階段所述管理操作之前分發的任務存在失敗,則取消該管理操作的后續子階段的任務分發,并標記失敗。
3.根據權利要求1或2所述的方法,其特征在于,所述根據預先定義的Hadoop組件的依賴關系對所述管理任務集合內的管理任務進行階段規劃,具體包括:
根據所述管理任務集合內的管理任務生成每個管理任務對應的初始DAG節點,所述DAG節點包括管理任務屬性、入度屬性和被依賴集屬性;所述初始DAG節點的入度為0,被依賴集為空集;
根據預先定義的Hadoop組件的依賴關系賦予所述管理任務集合內的每一管理任務對應的被依賴集和入度屬性,生成有向無環圖節點即DAG節點,以得到DAG圖;所述入度屬性表示管理任務所依賴的其它管理任務的數量,所述被依賴集內含有直接依賴當前管理任務的那些管理任務;
將DAG圖中入度為0的DAG節點對應的管理任務劃入第一階段;刪除屬于第一階段的DAG節點,并修改DAG圖中的剩余DAG節點的入度屬性,以完成DAG圖的更新;將更新后的DAG圖中入度為0的DAG節點對應的管理任務劃入第二階段;依次類推直至所有DAG節點對應的管理任務均規劃到相應的階段。
4.根據權利要求1或2所述的方法,其特征在于,所述預先定義的Hadoop組件的依賴關系為二維Hadoop組件的依賴關系,所述二維Hadoop組件的依賴關系不僅定義了組件之間的依賴關系,還定義了組件在操作類型上的依賴關系。
5.根據權利要求1或2所述的方法,其特征在于,任務分發后,還包括:
獲取來自組件節點的心跳信息;根據所述心跳信息更新規劃數據;
其中,所述心跳信息包括當前組件節點、組件節點上服務以及服務組件的狀態信息,所述心跳信息還包括該當前組件節點的任務執行情況。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京搜狐新媒體信息技術有限公司,未經北京搜狐新媒體信息技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201510347803.9/1.html,轉載請聲明來源鉆瓜專利網。





