亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種基于分布式緩存的數(shù)據(jù)處理系統(tǒng)及處理方法_3

文檔序號:9417511閱讀:來源:國知局
務(wù)器中的中間處理數(shù)據(jù)通過基于TCP的http協(xié)議或者UDT協(xié)議拉取到reduce任務(wù)的數(shù)據(jù)節(jié)點(diǎn)中;
[0077]步驟S7:將map任務(wù)的中間處理數(shù)據(jù)輸出到本地磁盤中。
[0078]還包括當(dāng)實(shí)時(shí)檢測datanode本地節(jié)點(diǎn)所在的緩存序列是否達(dá)到預(yù)設(shè)的閾值,如果達(dá)到,則根據(jù)最近最久未使用置換算法將緩存序列中已緩存數(shù)據(jù)與待緩存數(shù)據(jù)進(jìn)行替換的步驟。具體實(shí)施時(shí),設(shè)定緩存序列的閾值為緩存序列大小的80%。
[0079]步驟S6中將map任務(wù)的中間處理數(shù)據(jù)的處理為:以〈key, value〉鍵值對的形式存放在緩存服務(wù)器中,其中key為mapID+reducelD,value為map任務(wù)的中間處理數(shù)據(jù)。
[0080]實(shí)現(xiàn)所述步驟SI的具體步驟為:
[0081]步驟SlOl:調(diào)用作業(yè)監(jiān)視器從所述用戶作業(yè)中獲得所要處理的數(shù)據(jù)范圍和位置信息,并將用戶作業(yè)分解為多個(gè)map任務(wù)和多個(gè)reduce任務(wù),并根據(jù)每個(gè)map任務(wù)中目標(biāo)數(shù)據(jù),訪問hadoop集群的namenode主節(jié)點(diǎn)中的元數(shù)據(jù),從元數(shù)據(jù)中獲取存放目標(biāo)數(shù)據(jù)的datanode本地節(jié)點(diǎn)的位置;每個(gè)map任務(wù)處理一個(gè)split數(shù)據(jù),大小為一個(gè)block大?。?br>[0082]步驟S102:定時(shí)檢查(按心跳heartbeat的形式周期性的檢查)任務(wù)監(jiān)視器是否有空閑的情況,如果有空閑則發(fā)送信號至作業(yè)監(jiān)視器中,否則不發(fā)送;
[0083]步驟S103:根據(jù)任務(wù)監(jiān)視器發(fā)送來的信號,將map任務(wù)分配到相應(yīng)的datanode本地節(jié)點(diǎn)的位置中。
[0084]實(shí)現(xiàn)所述步驟S2的具體方法為:在datanode本地節(jié)點(diǎn)所在的緩存序列中讀取數(shù)據(jù)分片,根據(jù)map任務(wù)中目標(biāo)數(shù)據(jù)進(jìn)行判斷,如果數(shù)據(jù)分片中有目標(biāo)數(shù)據(jù),則執(zhí)行步驟S3,如果數(shù)據(jù)分片中沒有目標(biāo)數(shù)據(jù),則執(zhí)行步驟S4。
[0085]所述緩存服務(wù)器中有無緩存空間利用Size彡m*s*(r-ra)進(jìn)行檢查,其中m表示已完成map任務(wù)個(gè)數(shù),s表示map任務(wù)的中間處理數(shù)據(jù)輸出的結(jié)果的平均大小,r表示全部reduce任務(wù)個(gè)數(shù),ra表示已分配的reduce任務(wù)個(gè)數(shù)。
[0086]以上所述僅為本發(fā)明的較佳實(shí)施例,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
【主權(quán)項(xiàng)】
1.一種基于分布式緩存的數(shù)據(jù)處理系統(tǒng),其特征在于,包括mapreduce數(shù)據(jù)處理模塊(I)、map任務(wù)內(nèi)存處理模塊(2)和reduce分布式緩存模塊(3), 所述mapreduce數(shù)據(jù)處理模塊(I),用于將提交來的用戶作業(yè)進(jìn)行任務(wù)分解,分解成多個(gè)map任務(wù)和多個(gè)reduce任務(wù),并將map任務(wù)分配至相應(yīng)的datanode本地節(jié)點(diǎn)中; 所述map任務(wù)內(nèi)存處理模塊(2),用于判斷map任務(wù)中的目標(biāo)數(shù)據(jù)是否存在于datanode本地節(jié)點(diǎn)的緩存序列中,如果存在則從緩存序列中讀取目標(biāo)數(shù)據(jù),如果不存在則將所述目標(biāo)數(shù)據(jù)緩存到datanode本地節(jié)點(diǎn)所在的緩存序列中; 所述reduce分布式緩存模塊(3),用于檢查緩存服務(wù)器中有無緩存空間,如果有則將map任務(wù)的中間處理數(shù)據(jù)處理后存放在緩存服務(wù)器中,再根據(jù)reduce任務(wù)獲取所有map任務(wù)的信息,并將存放在緩存服務(wù)器中的中間處理數(shù)據(jù)拉取到reduce任務(wù)的數(shù)據(jù)節(jié)點(diǎn)中;如果緩存服務(wù)器中無緩存空間,則將map任務(wù)的中間處理數(shù)據(jù)輸出到本地磁盤中。2.根據(jù)權(quán)利要求1所述的基于分布式緩存的數(shù)據(jù)處理系統(tǒng),其特征在于,所述mapreduce數(shù)據(jù)處理模塊(I)包括作業(yè)監(jiān)視器調(diào)用單元(101)和任務(wù)監(jiān)視器調(diào)用單元(102), 所述作業(yè)監(jiān)視器調(diào)用單元(101),用于調(diào)用作業(yè)監(jiān)視器從所述用戶作業(yè)中獲得所要處理的數(shù)據(jù)范圍和位置信息,并將用戶作業(yè)分解為多個(gè)map任務(wù)和多個(gè)reduce任務(wù),并根據(jù)每個(gè)map任務(wù)中目標(biāo)數(shù)據(jù),訪問hadoop集群的namenode主節(jié)點(diǎn)中的元數(shù)據(jù),從元數(shù)據(jù)中獲取存放目標(biāo)數(shù)據(jù)的datanode本地節(jié)點(diǎn)的位置;還用于根據(jù)任務(wù)監(jiān)視器發(fā)送來的信號,將map任務(wù)分配到相應(yīng)的datanode本地節(jié)點(diǎn)的位置中; 所述任務(wù)監(jiān)視器調(diào)用單元(102),用于定時(shí)檢查任務(wù)監(jiān)視器是否有空閑的情況,如果有空閑則發(fā)送信號至作業(yè)監(jiān)視器中,否則不發(fā)送。3.根據(jù)權(quán)利要求1所述的基于分布式緩存的數(shù)據(jù)處理系統(tǒng),其特征在于,所述map任務(wù)內(nèi)存處理模塊(2)包括map任務(wù)處理單元(201)和緩存檢測單元(202), 所述map任務(wù)處理單元(201),用于在datanode本地節(jié)點(diǎn)所在的緩存序列中讀取數(shù)據(jù)分片,根據(jù)map任務(wù)中目標(biāo)數(shù)據(jù)進(jìn)行判斷,如果數(shù)據(jù)分片中存在目標(biāo)數(shù)據(jù),則從緩存序列中讀取目標(biāo)數(shù)據(jù),如果數(shù)據(jù)分片中不存在目標(biāo)數(shù)據(jù),則將目標(biāo)數(shù)據(jù)緩存到緩存序列中; 所述緩存檢測單元(202),用于實(shí)時(shí)檢測datanode本地節(jié)點(diǎn)所在的緩存序列是否達(dá)到預(yù)設(shè)的閾值,如果達(dá)到,則根據(jù)最近最久未使用置換算法將緩存序列中已緩存數(shù)據(jù)與待緩存數(shù)據(jù)進(jìn)行替換。4.根據(jù)權(quán)利要求1所述的基于分布式緩存的數(shù)據(jù)處理系統(tǒng),其特征在于,所述reduce分布式緩存模塊(3)包括中間數(shù)據(jù)處理單元(301)和reduce任務(wù)處理單元(302), 所述中間數(shù)據(jù)處理單元(301),用于檢查緩存服務(wù)器中有無緩存空間,如果有則將map任務(wù)的中間處理數(shù)據(jù)以〈key, value)鍵值對的形式存放在緩存服務(wù)器中,其中key為mapID+reducelD,value為map任務(wù)的中間處理數(shù)據(jù);如果緩存服務(wù)器中無緩存空間,則將map任務(wù)的中間處理數(shù)據(jù)輸出到本地磁盤中; 所述reduce任務(wù)處理單元(302),用于對reduce任務(wù)初始化,根據(jù)初始化后的reduce任務(wù)調(diào)用任務(wù)監(jiān)視器,從任務(wù)監(jiān)視器上獲取所有map任務(wù)的信息,并檢查緩存服務(wù)器是否存在中間處理數(shù)據(jù),如果存在則將中間處理數(shù)據(jù)拉取到reduce任務(wù)的數(shù)據(jù)節(jié)點(diǎn)中。5.一種基于分布式緩存的數(shù)據(jù)處理方法,其特征在于,包括如下步驟: 步驟S1:將提交來的用戶作業(yè)進(jìn)行任務(wù)分解,分解成多個(gè)map任務(wù)和多個(gè)reduce任務(wù),并將map任務(wù)分配至相應(yīng)的datanode本地節(jié)點(diǎn)中; 步驟S2:判斷map任務(wù)中的目標(biāo)數(shù)據(jù)是否存在于datanode本地節(jié)點(diǎn)的緩存序列中,如果存在,則執(zhí)行步驟S3,如果不存在,則執(zhí)行步驟S4 ; 步驟S3:從緩存序列中讀取目標(biāo)數(shù)據(jù); 步驟S4:將所述目標(biāo)數(shù)據(jù)緩存到datanode本地節(jié)點(diǎn)所在的緩存序列中; 步驟S5:檢查緩存服務(wù)器中有無緩存空間,如果有緩存空間,則執(zhí)行步驟S6,如果無緩存空間,則執(zhí)行步驟S7 ; 步驟S6:將map任務(wù)的中間處理數(shù)據(jù)處理后存放在緩存服務(wù)器中,再根據(jù)reduce任務(wù)獲取所有map任務(wù)的信息,并將存放在緩存服務(wù)器中的中間處理數(shù)據(jù)拉取到reduce任務(wù)的數(shù)據(jù)節(jié)點(diǎn)中; 步驟S7:將map任務(wù)的中間處理數(shù)據(jù)輸出到本地磁盤中。6.根據(jù)權(quán)利要求5所述的基于分布式緩存的數(shù)據(jù)處理方法,其特征在于,還包括實(shí)時(shí)檢測datanode本地節(jié)點(diǎn)所在的緩存序列是否達(dá)到預(yù)設(shè)的閾值,如果達(dá)到,則根據(jù)最近最久未使用置換算法將緩存序列中已緩存數(shù)據(jù)與待緩存數(shù)據(jù)進(jìn)行替換的步驟。7.根據(jù)權(quán)利要求5所述的基于分布式緩存的數(shù)據(jù)處理方法,其特征在于,實(shí)現(xiàn)所述步驟SI的具體步驟為: 步驟SlOl:調(diào)用作業(yè)監(jiān)視器從所述用戶作業(yè)中獲得所要處理的數(shù)據(jù)范圍和位置信息,并將用戶作業(yè)分解為多個(gè)map任務(wù)和多個(gè)reduce任務(wù),并根據(jù)每個(gè)map任務(wù)中目標(biāo)數(shù)據(jù),訪問hadoop集群的namenode主節(jié)點(diǎn)中的元數(shù)據(jù),從元數(shù)據(jù)中獲取存放目標(biāo)數(shù)據(jù)的datanode本地節(jié)點(diǎn)的位置; 步驟S102:定時(shí)檢查任務(wù)監(jiān)視器是否有空閑的情況,如果有空閑則發(fā)送信號至作業(yè)監(jiān)視器中,否則不發(fā)送; 步驟S103:根據(jù)任務(wù)監(jiān)視器發(fā)送來的信號,將map任務(wù)分配到相應(yīng)的datanode本地節(jié)點(diǎn)的位置中。8.根據(jù)權(quán)利要求5所述的基于分布式緩存的數(shù)據(jù)處理方法,其特征在于,實(shí)現(xiàn)所述步驟S2的具體方法為:在datanode本地節(jié)點(diǎn)所在的緩存序列中讀取數(shù)據(jù)分片,根據(jù)map任務(wù)中目標(biāo)數(shù)據(jù)進(jìn)行判斷,如果數(shù)據(jù)分片中有目標(biāo)數(shù)據(jù),則執(zhí)行步驟S3,如果數(shù)據(jù)分片中沒有目標(biāo)數(shù)據(jù),則執(zhí)行步驟S4。9.根據(jù)權(quán)利要求5所述的基于分布式緩存的數(shù)據(jù)處理方法,其特征在于,所述步驟S6中將map任務(wù)的中間處理數(shù)據(jù)的處理為:以〈key, value〉鍵值對的形式存放在緩存服務(wù)器中,其中key為mapID+reducelD,value為map任務(wù)的中間處理數(shù)據(jù)。10.根據(jù)權(quán)利要求5至9任一項(xiàng)所述的基于分布式緩存的數(shù)據(jù)處理方法,其特征在于,所述緩存服務(wù)器中有無緩存空間利用Size彡m*s*(r-ra)進(jìn)行檢查,其中m表示已完成map任務(wù)個(gè)數(shù),s表示map任務(wù)的中間處理數(shù)據(jù)輸出的結(jié)果的平均大小,r表示全部reduce任務(wù)個(gè)數(shù),ra表示已分配的reduce任務(wù)個(gè)數(shù)。
【專利摘要】本發(fā)明涉及一種基于分布式緩存的數(shù)據(jù)處理系統(tǒng),包括用于將提交來的用戶作業(yè)分解成多個(gè)map任務(wù)和多個(gè)reduce任務(wù)的mapreduce數(shù)據(jù)處理模塊、用于處理map任務(wù)的map任務(wù)內(nèi)存處理模塊和用于通過reduce任務(wù)處理map任務(wù)的reduce分布式緩存模塊;本發(fā)明還涉及一種基于分布式緩存的數(shù)據(jù)處理方法;本發(fā)明的有益效果是:主要服務(wù)于map任務(wù),優(yōu)化map任務(wù)處理數(shù)據(jù),保證map能在最短的時(shí)間內(nèi)找到目標(biāo)數(shù)據(jù),且以最快的速度傳輸中間處理結(jié)果;能夠減少數(shù)據(jù)傳輸量,完全實(shí)現(xiàn)數(shù)據(jù)本地化處理,提高數(shù)據(jù)命中率,從而提升數(shù)據(jù)處理的執(zhí)行效率。
【IPC分類】G06F17/30
【公開號】CN105138679
【申請?zhí)枴緾N201510581178
【發(fā)明人】蔡曉東, 王麗娟, 陳超村, 趙勤魯, 呂璐, 甘凱今, 王迪, 楊超, 宋宗濤, 劉馨婷
【申請人】桂林電子科技大學(xué)
【公開日】2015年12月9日
【申請日】2015年9月14日
當(dāng)前第3頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1