[發(fā)明專利]基于MapReduce編程架構(gòu)的任務(wù)分配方法及裝置有效
| 申請?zhí)枺?/td> | 200810241080.4 | 申請日: | 2008-12-25 |
| 公開(公告)號(hào): | CN101764835A | 公開(公告)日: | 2010-06-30 |
| 發(fā)明(設(shè)計(jì))人: | 李麗娟;陳浩華;嚴(yán)哲峰 | 申請(專利權(quán))人: | 華為技術(shù)有限公司 |
| 主分類號(hào): | H04L29/08 | 分類號(hào): | H04L29/08;H04L29/06 |
| 代理公司: | 北京凱特來知識(shí)產(chǎn)權(quán)代理有限公司 11260 | 代理人: | 鄭立明 |
| 地址: | 518129 廣東*** | 國省代碼: | 廣東;44 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 基于 mapreduce 編程 架構(gòu) 任務(wù) 分配 方法 裝置 | ||
技術(shù)領(lǐng)域
本發(fā)明涉及網(wǎng)絡(luò)通信領(lǐng)域,尤其涉及一種基于MapReduce編程架構(gòu)的任務(wù) 分配方法及裝置。
背景技術(shù)
隨著高性能應(yīng)用和運(yùn)算需求的迅猛發(fā)展,單臺(tái)高性能計(jì)算機(jī)已經(jīng)不能解決 一些超大規(guī)模應(yīng)用問題,這就需要將多臺(tái)計(jì)算機(jī)資源聯(lián)合起來,構(gòu)成計(jì)算機(jī)集 群,共同解決大規(guī)模應(yīng)用問題。并行編程技術(shù)可以有效地開發(fā)并行計(jì)算機(jī)尤其 是集群計(jì)算機(jī)的計(jì)算能力,是硬件和軟件之間的橋梁,是并行計(jì)算的低層實(shí)現(xiàn) 與高層抽象的界面。
現(xiàn)有技術(shù)所提供的一種基于MapReduce編程架構(gòu)的任務(wù)分配方法,該方法 具體包括,將對海量數(shù)據(jù)的計(jì)算任務(wù)分為K個(gè)子任務(wù),然后一次性分配到各個(gè) 節(jié)點(diǎn)(計(jì)算機(jī))上進(jìn)行計(jì)算處理。
在實(shí)現(xiàn)本發(fā)明的過程中,發(fā)明人發(fā)現(xiàn)現(xiàn)有技術(shù)存在如下問題:
由于現(xiàn)有技術(shù)提供的技術(shù)方案是一次性分配到各個(gè)節(jié)點(diǎn)(計(jì)算機(jī))上進(jìn)行 計(jì)算處理,其僅考慮了任務(wù)分配,并沒有考慮在任務(wù)執(zhí)行過程中,由于節(jié)點(diǎn)(計(jì) 算機(jī))資源的動(dòng)態(tài)變化帶來的負(fù)載失衡的問題。
發(fā)明內(nèi)容
本發(fā)明實(shí)施方式提供一種基于MapReduce編程架構(gòu)的任務(wù)分配方法及裝 置,所述方法和系統(tǒng)具有負(fù)載均衡,避免任務(wù)重復(fù)轉(zhuǎn)移,防止系統(tǒng)抖動(dòng)的優(yōu)點(diǎn)。
本發(fā)明的具體實(shí)施方式提供一種基于MapReduce編程架構(gòu)的任務(wù)分配方 法,所述方法包括:
在判斷出空閑時(shí),發(fā)送空閑消息,并接收所述空閑消息的響應(yīng)消息,所述 響應(yīng)消息包括需要轉(zhuǎn)移的任務(wù)量和所述任務(wù)量所對應(yīng)的節(jié)點(diǎn)地址;在判斷出所 述需要轉(zhuǎn)移的任務(wù)量小于剩余能力時(shí),將所述需要轉(zhuǎn)移的任務(wù)量對應(yīng)的節(jié)點(diǎn)地 址存儲(chǔ)在過載節(jié)點(diǎn)列表中,向所述過載節(jié)點(diǎn)列表中的一個(gè)節(jié)點(diǎn)地址發(fā)送任務(wù)轉(zhuǎn) 移請求消息,接收轉(zhuǎn)移的任務(wù)并進(jìn)行計(jì)算處理;或
在判斷出過載且未進(jìn)行任務(wù)轉(zhuǎn)移時(shí),回復(fù)所接收到的空閑消息的響應(yīng)消 息;在收到任務(wù)轉(zhuǎn)移請求消息后,將轉(zhuǎn)移的任務(wù)發(fā)送給所述任務(wù)轉(zhuǎn)移請求消息 所對應(yīng)的節(jié)點(diǎn)。
本發(fā)明具體實(shí)施方式還提供一種基于MapReduce編程架構(gòu)的任務(wù)分配裝 置,所述裝置包括:
判斷單元,用于判斷空閑或過載;
發(fā)送單元,用于在所述判斷單元判斷出空閑時(shí),發(fā)送空閑消息;
接收單元,用于接收所述空閑消息的響應(yīng)消息,所述響應(yīng)消息包括需要轉(zhuǎn) 移的任務(wù)量和所述任務(wù)量所對應(yīng)的節(jié)點(diǎn)地址;
存儲(chǔ)單元,用于在所述需要轉(zhuǎn)移的任務(wù)量小于剩余能力時(shí),將所述需要轉(zhuǎn) 移的任務(wù)量對應(yīng)的節(jié)點(diǎn)地址存儲(chǔ)在過載節(jié)點(diǎn)列表中,
所述發(fā)送單元還用于向所述過載節(jié)點(diǎn)列表中的一個(gè)節(jié)點(diǎn)地址發(fā)送任務(wù)轉(zhuǎn) 移請求消息,
所述接收單元還用于接收轉(zhuǎn)移的任務(wù);
計(jì)算單元,用于對所述轉(zhuǎn)移的任務(wù)進(jìn)行計(jì)算處理;
所述判斷單元判斷出過載且未進(jìn)行任務(wù)轉(zhuǎn)移時(shí);通知所述發(fā)送單元回復(fù)接 收到的空閑消息的響應(yīng)消息;
任務(wù)轉(zhuǎn)移單元,用于在所述接收單元收到任務(wù)轉(zhuǎn)移請求消息后,將轉(zhuǎn)移的 任務(wù)發(fā)送給所述任務(wù)轉(zhuǎn)移請求消息所對應(yīng)的節(jié)點(diǎn)。
由上述所提供的技術(shù)方案可以看出,本發(fā)明實(shí)施例的技術(shù)方案將過載節(jié)點(diǎn) 的任務(wù)轉(zhuǎn)移到空閑節(jié)點(diǎn),從而實(shí)現(xiàn)了在任務(wù)執(zhí)行的過程中,對任務(wù)的動(dòng)態(tài)分配, 從而達(dá)到了負(fù)載均衡;上述方法轉(zhuǎn)移的任務(wù)不會(huì)大于接收節(jié)點(diǎn)的剩余能力,所 以該方法能夠避免由于任務(wù)轉(zhuǎn)移而出現(xiàn)的接收節(jié)點(diǎn)過載的情況,從而避免了接 收節(jié)點(diǎn)由于過載將轉(zhuǎn)移的任務(wù)再次轉(zhuǎn)移到其他的節(jié)點(diǎn),從而防止了系統(tǒng)的抖 動(dòng);上述方法在過載情況進(jìn)行任務(wù)轉(zhuǎn)移時(shí),由于該過載節(jié)點(diǎn)之前未進(jìn)行任務(wù)轉(zhuǎn) 移,所以其可以避免將需要轉(zhuǎn)移的任務(wù)重復(fù)轉(zhuǎn)移。
附圖說明
圖1為本發(fā)明具體實(shí)施方式提供的一種并行計(jì)算中的任務(wù)分配方法的流程 圖。
圖2為本發(fā)明一實(shí)施例提供的一種并行計(jì)算中的任務(wù)分配方法的流程圖。
圖3為本發(fā)明具體實(shí)施方式提供的一種并行計(jì)算中的任務(wù)分配裝置的結(jié)構(gòu) 圖。
具體實(shí)施方式
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于華為技術(shù)有限公司,未經(jīng)華為技術(shù)有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/200810241080.4/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 一種處理串行任務(wù)的數(shù)據(jù)處理裝置及方法
- 一種將MapReduce轉(zhuǎn)換為SQL的方法和裝置
- 一種基于MapReduce的數(shù)據(jù)處理方法和裝置
- MapReduce應(yīng)用的相關(guān)參數(shù)的配置方法和裝置
- MapReduce作業(yè)處理系統(tǒng)、服務(wù)器及處理方法
- 一種考慮任務(wù)相關(guān)性的Hive優(yōu)化方法及系統(tǒng)
- 一種運(yùn)行MapReduce作業(yè)的方法、裝置及系統(tǒng)
- 一種數(shù)據(jù)查詢的優(yōu)化方法和裝置
- 一種Sqoop集成多版本HBase的方法及裝置
- 一種計(jì)算HiveSql執(zhí)行進(jìn)度的方法





