[發(fā)明專(zhuān)利]基于Hadoop云計(jì)算框架的高效迭代機(jī)制設(shè)計(jì)方法有效
| 申請(qǐng)?zhí)枺?/td> | 201710284534.5 | 申請(qǐng)日: | 2017-04-25 |
| 公開(kāi)(公告)號(hào): | CN107122238B | 公開(kāi)(公告)日: | 2018-05-25 |
| 發(fā)明(設(shè)計(jì))人: | 朱顥東;李紅嬋;南姣芬;張志鋒;趙進(jìn)超 | 申請(qǐng)(專(zhuān)利權(quán))人: | 鄭州輕工業(yè)學(xué)院 |
| 主分類(lèi)號(hào): | G06F9/48 | 分類(lèi)號(hào): | G06F9/48;G06F9/448;G06F11/20;H04L29/08 |
| 代理公司: | 鄭州大通專(zhuān)利商標(biāo)代理有限公司 41111 | 代理人: | 張立強(qiáng) |
| 地址: | 450002 *** | 國(guó)省代碼: | 河南;41 |
| 權(quán)利要求書(shū): | 查看更多 | 說(shuō)明書(shū): | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 云計(jì)算 迭代機(jī)制 應(yīng)用程序編程接口 主體控制模塊 循環(huán)迭代 調(diào)用 研究技術(shù)領(lǐng)域 緩存 迭代過(guò)程 功能研究 任務(wù)調(diào)度 容錯(cuò)機(jī)制 主節(jié)點(diǎn) 迭代 索引 創(chuàng)建 | ||
1.一種基于Hadoop云計(jì)算框架的高效迭代機(jī)制設(shè)計(jì)方法,其特征在于,一個(gè)Hadoop云計(jì)算平臺(tái)有多個(gè)節(jié)點(diǎn),其中所述節(jié)點(diǎn)分為主節(jié)點(diǎn)和從節(jié)點(diǎn),所述Hadoop云計(jì)算平臺(tái)為搭建了Hadoop云計(jì)算框架的多臺(tái)主機(jī)或服務(wù)器,包括以下步驟:
步驟1:在Hadoop云計(jì)算框架中創(chuàng)建一個(gè)用于簡(jiǎn)化MapReduce迭代程序編寫(xiě)的應(yīng)用程序編程接口API;
所述應(yīng)用程序編程接口API中有以下函數(shù):LoopMap函數(shù),LoopReduce函數(shù),SetMaxNumOfIterations函數(shù),SetFixedPointThreshold函數(shù),SetIterationInput函數(shù),AddStepInput函數(shù),MapperInputCache函數(shù),ReducerInputCache函數(shù),ReducerOutputCache函數(shù);
步驟2:調(diào)用應(yīng)用程序編程接口API,在主節(jié)點(diǎn)創(chuàng)建一個(gè)循環(huán)迭代主體控制模塊;所述步驟2包括:
步驟2.1:通過(guò)Java迭代器類(lèi)創(chuàng)建一個(gè)Java迭代器對(duì)象iterator;
步驟2.2:調(diào)用LoopMap函數(shù),所述LoopMap函數(shù)通過(guò)Map函數(shù)及將當(dāng)前迭代次數(shù)傳遞給Java迭代器對(duì)象iterator的Cursor變量,將Map函數(shù)與當(dāng)前迭代次數(shù)相關(guān)聯(lián);
步驟2.3:調(diào)用LoopReduce函數(shù),所述LoopReduce函數(shù)通過(guò)Reduce函數(shù)及將當(dāng)前迭代次數(shù)傳遞給Java迭代器對(duì)象iterator的Cursor變量,將Reduce函數(shù)與當(dāng)前迭代次數(shù)相關(guān)聯(lián);
步驟2.4:調(diào)用SetMaxNumOfIterations函數(shù),所述SetMaxNumOfIterations函數(shù)通過(guò)將MapReduce迭代程序的最大迭代次數(shù)傳遞給Java迭代器對(duì)象iterator的End變量,設(shè)置MapReduce迭代程序的最大迭代次數(shù);
步驟2.5:調(diào)用SetFixedPointThreshold函數(shù),所述SetFixedPointThreshold函數(shù)通過(guò)將迭代過(guò)程中相鄰兩次迭代結(jié)果的精度誤差閾值傳遞給Java迭代器對(duì)象iterator的Err變量,設(shè)置迭代過(guò)程中相鄰兩次迭代結(jié)果的精度誤差閾值;
步驟2.6:調(diào)用SetIterationInput函數(shù),所述SetIterationInput函數(shù)通過(guò)LoopMap函數(shù)將不同迭代的輸入數(shù)據(jù)作為數(shù)據(jù)源,將數(shù)據(jù)源與迭代過(guò)程相關(guān)聯(lián);
步驟2.7:調(diào)用AddStepInput函數(shù),所述AddStepInput函數(shù)通過(guò)Java迭代器對(duì)象iterator的Cursor變量及SetIterationInput函數(shù),將當(dāng)前迭代的輸出傳遞給下次迭代;
步驟3:調(diào)用應(yīng)用程序編程接口API,在從節(jié)點(diǎn)對(duì)迭代過(guò)程中被重復(fù)使用的數(shù)據(jù)進(jìn)行緩存和索引;所述步驟3包括:
步驟3.1:調(diào)用MapperInputCache函數(shù),所述MapperInputCache函數(shù)通過(guò)實(shí)例化HBase的HBaseConfiguration類(lèi)和HTableDescriptor類(lèi),把循環(huán)迭代過(guò)程中從節(jié)點(diǎn)的Map過(guò)程的輸入數(shù)據(jù)緩存到相應(yīng)的從節(jié)點(diǎn)、并為緩存的數(shù)據(jù)建立索引表MapperInputCacheTable;
步驟3.2:調(diào)用ReducerInputCache函數(shù),所述ReducerInputCache函數(shù)通過(guò)實(shí)例化HBase的HBaseConfiguration類(lèi)和HTableDescriptor類(lèi),把循環(huán)迭代過(guò)程中從節(jié)點(diǎn)Reduce過(guò)程的輸入數(shù)據(jù)緩存到相應(yīng)的從節(jié)點(diǎn)、并為緩存的數(shù)據(jù)建立索引表ReducerInputCacheTable;
步驟3.3:調(diào)用ReducerOutputCache函數(shù),所述ReducerOutputCache函數(shù)通過(guò)實(shí)例化HBase的HBaseConfiguration類(lèi)和HTableDescriptor類(lèi),把循環(huán)迭代過(guò)程中從節(jié)點(diǎn)Reduce過(guò)程的輸出數(shù)據(jù)緩存到相應(yīng)的從節(jié)點(diǎn)、并為緩存的數(shù)據(jù)建立索引表ReducerOutputCacheTable;
步驟4:為主節(jié)點(diǎn)中循環(huán)迭代主體控制模塊設(shè)計(jì)任務(wù)調(diào)度和容錯(cuò)機(jī)制,包括:
步驟4.1:對(duì)Hadoop云計(jì)算框架中的任務(wù)調(diào)度機(jī)制進(jìn)行設(shè)計(jì),包括:
步驟4.1.1:在主節(jié)點(diǎn)存儲(chǔ)從節(jié)點(diǎn)到主節(jié)點(diǎn)所使用過(guò)的數(shù)據(jù)之間的映射關(guān)系;
步驟4.1.2:主節(jié)點(diǎn)接收從節(jié)點(diǎn)發(fā)送的Heartbeat信號(hào);
步驟4.1.3:主節(jié)點(diǎn)檢查從節(jié)點(diǎn)是否空閑,若是,則主節(jié)點(diǎn)為該從節(jié)點(diǎn)指派一個(gè)任務(wù),并且在該任務(wù)執(zhí)行過(guò)程中使用該從節(jié)點(diǎn)中緩存的數(shù)據(jù);若否,則主節(jié)點(diǎn)指派該任務(wù)給其他從節(jié)點(diǎn);
步驟4.2:對(duì)Hadoop云計(jì)算框架中的容錯(cuò)機(jī)制進(jìn)行設(shè)計(jì),包括:
步驟4.2.1:主節(jié)點(diǎn)周期性地Ping從節(jié)點(diǎn),檢查從節(jié)點(diǎn)的狀態(tài)是否可用,當(dāng)檢測(cè)到從節(jié)點(diǎn)失效時(shí),則將在該從節(jié)點(diǎn)上正在執(zhí)行或已完成的Map任務(wù)置為空閑狀態(tài),并將該Map任務(wù)分配給其他從節(jié)點(diǎn)執(zhí)行;
步驟4.2.2:主節(jié)點(diǎn)周期性地Ping從節(jié)點(diǎn),檢查從節(jié)點(diǎn)的狀態(tài)是否可用,當(dāng)檢測(cè)到從節(jié)點(diǎn)失效時(shí),則將在該從節(jié)點(diǎn)上正在執(zhí)行的Reduce任務(wù)置為空閑狀態(tài);若在Reduce過(guò)程的輸出數(shù)據(jù)寫(xiě)入與該Reduce對(duì)應(yīng)的輸出文件中之前,存放中間key/value對(duì)的從節(jié)點(diǎn)失效,則將在該從節(jié)點(diǎn)上正在執(zhí)行的及已完成的Map任務(wù)置為空閑狀態(tài)。
該專(zhuān)利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專(zhuān)利權(quán)人授權(quán)。該專(zhuān)利全部權(quán)利屬于鄭州輕工業(yè)學(xué)院,未經(jīng)鄭州輕工業(yè)學(xué)院許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買(mǎi)此專(zhuān)利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710284534.5/1.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專(zhuān)利網(wǎng)。
- 同類(lèi)專(zhuān)利
- 專(zhuān)利分類(lèi)
- 一種云計(jì)算安全架構(gòu)的實(shí)現(xiàn)方法
- 一種移動(dòng)云計(jì)算資源優(yōu)化配置方法
- 新一代基于零處理零存儲(chǔ)的自助云終端
- 基于云計(jì)算移動(dòng)網(wǎng)絡(luò)資源管理模擬云計(jì)算系統(tǒng)
- 一種云計(jì)算調(diào)度方法和系統(tǒng)
- 一種云計(jì)算方法、云服務(wù)器及終端
- 用于云計(jì)算網(wǎng)絡(luò)管理的云計(jì)算系統(tǒng)
- 一種基于云計(jì)算安全架構(gòu)裝置的實(shí)現(xiàn)方法
- 云計(jì)算方法和裝置
- 一種云計(jì)算節(jié)點(diǎn)服務(wù)防護(hù)方法以及云平臺(tái)管理系統(tǒng)
- 一種基于熔斷機(jī)制的無(wú)速度項(xiàng)粒子群優(yōu)化算法
- 一種動(dòng)態(tài)應(yīng)急恢復(fù)機(jī)制的供水管網(wǎng)級(jí)聯(lián)魯棒性測(cè)算方法
- 基于Hadoop云計(jì)算框架的高效迭代機(jī)制設(shè)計(jì)方法
- 一種迭代協(xié)同顯著性檢測(cè)方法
- 膠囊網(wǎng)絡(luò)的訓(xùn)練方法、分類(lèi)方法、系統(tǒng)、設(shè)備及存儲(chǔ)介質(zhì)
- 一種用于人工智能加速的處理器微架構(gòu)及其指令集組合應(yīng)用方法
- 巖石聲發(fā)射的混合矩張量反演計(jì)算方法、存儲(chǔ)介質(zhì)和系統(tǒng)
- 一種基于節(jié)點(diǎn)刷新機(jī)制的低復(fù)雜度多元LDPC譯碼方法
- 一種基于團(tuán)隊(duì)遞歸反饋機(jī)制的圖像去雨方法及系統(tǒng)
- 基于量子海鷗演化機(jī)制加權(quán)Myriad濾波器設(shè)計(jì)方法
- 數(shù)字電視接收設(shè)備應(yīng)用程序與應(yīng)用環(huán)境銜接的方法
- java系統(tǒng)應(yīng)用程序編程接口調(diào)用方法及系統(tǒng)
- 應(yīng)用程序編程接口的適配缺陷檢測(cè)方法及檢測(cè)裝置
- 一種云應(yīng)用程序編程接口的容錯(cuò)調(diào)用方法
- 應(yīng)用程序兼容性檢測(cè)方法、開(kāi)發(fā)終端及存儲(chǔ)介質(zhì)
- 電商接口集成方法、系統(tǒng)、計(jì)算機(jī)設(shè)備、可讀存儲(chǔ)介質(zhì)
- 一種跨平臺(tái)開(kāi)發(fā)方法及系統(tǒng)
- 一種可撤銷(xiāo)應(yīng)用程序編程接口API的實(shí)現(xiàn)方法及系統(tǒng)
- 基于云傳輸?shù)膽?yīng)用程序編程接口服務(wù)的訪問(wèn)方法及系統(tǒng)
- 一種應(yīng)用程序編程接口API調(diào)試方法以及調(diào)試終端





