亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

一種海量數(shù)據(jù)的分布式存儲(chǔ)方法

文檔序號(hào):9670891閱讀:661來源:國(guó)知局
一種海量數(shù)據(jù)的分布式存儲(chǔ)方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及數(shù)據(jù)存儲(chǔ)技術(shù)領(lǐng)域,特別涉及一種海量數(shù)據(jù)的分布式存儲(chǔ)方法。
【背景技術(shù)】
[0002]當(dāng)前,隨著網(wǎng)絡(luò)應(yīng)用的發(fā)展,網(wǎng)絡(luò)中的數(shù)據(jù)資源不斷地膨脹。數(shù)據(jù)庫(kù)服務(wù)器一方面需要解決存儲(chǔ)空間和訪問速度等問題,另一方面也需要考慮對(duì)海量數(shù)據(jù)的挖掘處理,以實(shí)現(xiàn)對(duì)海量數(shù)據(jù)進(jìn)行合理高效地存儲(chǔ)。
[0003]然而,在現(xiàn)有技術(shù)中,海量數(shù)據(jù)的存儲(chǔ)過程通常是粗放式存儲(chǔ),也即,在未加處理的情況下,按照接收到的數(shù)據(jù)文件的時(shí)間順序依次對(duì)數(shù)據(jù)文件進(jìn)行存儲(chǔ),這樣顯然會(huì)導(dǎo)致不同類型的數(shù)據(jù)混亂地?cái)D在一起,從而使得后續(xù)對(duì)存儲(chǔ)文件的訪問過程造成嚴(yán)重不便。
[0004]綜上所述可以看出,如何在數(shù)據(jù)存儲(chǔ)之前預(yù)先對(duì)數(shù)據(jù)進(jìn)行挖掘處理,以實(shí)現(xiàn)對(duì)數(shù)據(jù)合理高效的存儲(chǔ)是目前亟待解決的問題。

【發(fā)明內(nèi)容】

[0005]有鑒于此,本發(fā)明的目的在于提供一種海量數(shù)據(jù)的分布式存儲(chǔ)方法,通過在數(shù)據(jù)存儲(chǔ)之前預(yù)先對(duì)數(shù)據(jù)進(jìn)行挖掘處理,從而實(shí)現(xiàn)了對(duì)數(shù)據(jù)合理高效的存儲(chǔ)。其具體方案如下:
[0006]—種海量數(shù)據(jù)的分布式存儲(chǔ)方法,包括:
[0007]當(dāng)獲取到輸入文件時(shí),對(duì)所述輸入文件進(jìn)行分割處理,相應(yīng)地得到N份塊文件,N為正整數(shù);
[0008]分別對(duì)所述N份塊文件中的每一份塊文件進(jìn)行特征信息提取處理,相應(yīng)地得到每一份塊文件的特征信息;
[0009]對(duì)所述N份塊文件中具有相同特征信息的塊文件歸為一類,相應(yīng)地得到M類文件,其中,M為不大于N的正整數(shù);
[0010]分別對(duì)所述M類文件中的每一類文件進(jìn)行文件合并,相應(yīng)地得到M份合并文件,并對(duì)所述M份合并文件進(jìn)行存儲(chǔ)。
[0011]優(yōu)選的,任一份塊文件的文件大小為16MB至64MB中的任一數(shù)值。
[0012]優(yōu)選的,所述對(duì)所述輸入文件進(jìn)行分割處理,相應(yīng)地得到N份塊文件的過程,包括:
[0013]利用MapReduce函數(shù)庫(kù),對(duì)所述輸入文件進(jìn)行分割,得到所述N份塊文件。
[0014]優(yōu)選的,所述分別對(duì)所述N份塊文件中的每一份塊文件進(jìn)行特征信息提取處理,相應(yīng)地得到每一份塊文件的特征信息的過程,包括:
[0015]為所述N份塊文件中的每一份塊文件分配各自的Map任務(wù),相應(yīng)地得到N個(gè)Map任務(wù);
[0016]利用所述N個(gè)Map任務(wù)中的每一個(gè)Map任務(wù),從相應(yīng)的塊文件中提取出鍵值對(duì),相應(yīng)地得到N個(gè)鍵值對(duì);其中,任一份塊文件對(duì)應(yīng)的鍵值對(duì)均包含該塊文件的關(guān)鍵字以及相應(yīng)的數(shù)值;
[0017]將每一份塊文件對(duì)應(yīng)的鍵值對(duì)中的關(guān)鍵字確定為該塊文件的特征信息。
[0018]優(yōu)選的,所述對(duì)所述N份塊文件中具有相同特征信息的塊文件歸為一類,相應(yīng)地得到M類文件的過程,包括:
[0019]將所述N個(gè)Map任務(wù)分配給Map工作機(jī),以利用所述Map工作機(jī)對(duì)所述N個(gè)Map任務(wù)進(jìn)行處理,得到相應(yīng)的N個(gè)中間值;
[0020]將所述N個(gè)中間值不重復(fù)地寫入所述Map工作機(jī)的本地硬盤上的P個(gè)分區(qū),P為正整數(shù),并相應(yīng)地記錄每一個(gè)中間值所對(duì)應(yīng)的存放位置信息;
[0021]根據(jù)每一個(gè)中間值所對(duì)應(yīng)的存放位置信息,對(duì)所述P個(gè)分區(qū)上存儲(chǔ)的中間值進(jìn)行遠(yuǎn)程讀取操作,并將讀取到的中間值發(fā)送至Reduce工作機(jī),以利用所述Reduce工作機(jī)將具有相同關(guān)鍵字的塊文件所對(duì)應(yīng)的中間值排序在一起,相應(yīng)地得到M個(gè)排序后的文件,并將所述M個(gè)排序后的文件確定為所述M類文件。
[0022]優(yōu)選的,所述Map工作機(jī)對(duì)任一個(gè)Map任務(wù)進(jìn)行處理的過程,包括:
[0023]對(duì)與該Map任務(wù)對(duì)應(yīng)的塊文件進(jìn)行數(shù)據(jù)輸入處理,并將相應(yīng)的鍵值對(duì)傳遞給預(yù)設(shè)的Map函數(shù),以通過該Map函數(shù)獲取相應(yīng)的中間值,并將該中間值緩存至內(nèi)存中。
[0024]優(yōu)選的,所述分別對(duì)所述M類文件中的每一類文件進(jìn)行文件合并,相應(yīng)地得到M份合并文件的過程,包括:
[0025]通過所述Reduce工作機(jī),將所述M類文件中的每一類文件以及該類文件所對(duì)應(yīng)的關(guān)鍵字發(fā)送至相應(yīng)的Reduce函數(shù),以利用Reduce函數(shù)對(duì)每一類文件進(jìn)行文件合并處理,相應(yīng)地得到所述M份合并文件。
[0026]優(yōu)選的,在為所述N份塊文件中的每一份塊文件分配各自的Map任務(wù),相應(yīng)地得到所述N個(gè)Map任務(wù)之后,還包括:
[0027]對(duì)所述N個(gè)Map任務(wù)的有效性進(jìn)行實(shí)時(shí)監(jiān)測(cè),當(dāng)監(jiān)測(cè)到任一 Map任務(wù)失效后,重新執(zhí)行該Map任務(wù)。
[0028]優(yōu)選的,所述分布式存儲(chǔ)方法,還包括:
[0029]對(duì)所述Map工作機(jī)的工作狀態(tài)進(jìn)行實(shí)時(shí)監(jiān)測(cè),得到相應(yīng)的監(jiān)測(cè)結(jié)果;并對(duì)所述監(jiān)測(cè)結(jié)果進(jìn)行實(shí)時(shí)顯示。
[0030]優(yōu)選的,所述分布式存儲(chǔ)方法,還包括:
[0031]當(dāng)監(jiān)測(cè)到所述Map工作機(jī)失效時(shí),將所述Map工作機(jī)當(dāng)前正在處理的Map任務(wù)置為失效狀態(tài),并結(jié)束所述Map工作機(jī)的運(yùn)作。
[0032]本發(fā)明中,當(dāng)獲取到輸入文件時(shí),對(duì)輸入文件進(jìn)行分割處理,相應(yīng)地得到N份塊文件;分別對(duì)上述N份塊文件中的每一份塊文件進(jìn)行特征信息提取處理,相應(yīng)地得到每一份塊文件的特征信息;對(duì)上述N份塊文件中具有相同特征信息的塊文件歸為一類,相應(yīng)地得到M類文件;分別對(duì)上述M類文件中的每一類文件進(jìn)行文件合并,相應(yīng)地得到M份合并文件,并對(duì)上述M份合并文件進(jìn)行存儲(chǔ)??梢?,本發(fā)明中,當(dāng)接收到輸入文件后,先對(duì)輸入文件進(jìn)行分割,并將分割后得到的多個(gè)塊文件的特征信息提取出來,然后將具有相同特征信息的塊文件歸為一類,進(jìn)而將每一類文件進(jìn)行合并存儲(chǔ),由此實(shí)現(xiàn)了對(duì)多個(gè)塊文件的特征信息的挖掘,進(jìn)而實(shí)現(xiàn)了對(duì)數(shù)據(jù)合理高效的存儲(chǔ)。
【附圖說明】
[0033]為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)提供的附圖獲得其他的附圖。
[0034]圖1為本發(fā)明實(shí)施例公開的一種海量數(shù)據(jù)的分布式存儲(chǔ)方法流程圖;
[0035]圖2為本發(fā)明實(shí)施例公開的一種具體的海量數(shù)據(jù)的分布式存儲(chǔ)方法流程圖。
【具體實(shí)施方式】
[0036]下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例。基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
[0037]本發(fā)明實(shí)施例公開了一種海量數(shù)據(jù)的分布式存儲(chǔ)方法,參見圖1所示,上述分布式存儲(chǔ)方法包括:
[0038]步驟Sll:當(dāng)獲取到輸入文件時(shí),對(duì)輸入文件進(jìn)行分割處理,相應(yīng)地得到N份塊文件,N為正整數(shù);
[0039]步驟S12:分別對(duì)上述N份塊文件中的每一份塊文件進(jìn)行特征信息提取處理,相應(yīng)地得到每一份塊文件的特征信息;
[0040]步驟S13:對(duì)上述N份塊文件中具有相同特征信息的塊文件歸為一類,相應(yīng)地得到M類文件,其中,M為不大于N的正整數(shù);
[0041]步驟S14:分別對(duì)上述M類文件中的每一類文件進(jìn)行文件合并,相應(yīng)地得到M份合并文件,并對(duì)上述M份合并文件進(jìn)行存儲(chǔ)。
[0042]其中,優(yōu)選的,上述任一份塊文件的文件大小為16MB至64MB中的任一數(shù)值。
[0043]本發(fā)明實(shí)施例中,當(dāng)獲取到輸入文件時(shí),對(duì)輸入文件進(jìn)行分割處理,相應(yīng)地得到N份塊文件;分別對(duì)上述N份塊文件中的每一份塊文件進(jìn)行特征信息提取處理,相應(yīng)地得到每一份塊文件的特征信息;對(duì)上述N份塊文件中具有相同特征信息的塊文件歸為一類,相應(yīng)地得到M類文件;分別對(duì)上述M類文件中的每一類文件進(jìn)行文件合并,相應(yīng)地得到M份合并文件,并對(duì)上述M份合并文件進(jìn)行存儲(chǔ)。
[0044]可見,本發(fā)明實(shí)施例中,當(dāng)接收到輸入文件后,先對(duì)輸入文件進(jìn)行分割,并將分割后得到的多個(gè)塊文件的特征信息提取出來,然后將具有相同特征信息的塊文件歸為一類,進(jìn)而將每一類文件進(jìn)行合并存儲(chǔ),由此實(shí)現(xiàn)了對(duì)多個(gè)塊文件的特征信息的挖掘,進(jìn)而實(shí)現(xiàn)了對(duì)數(shù)據(jù)合理高效的存儲(chǔ)。
[0045]本發(fā)明實(shí)施例公開了一種具體的海量數(shù)據(jù)的分布式存儲(chǔ)方法,相對(duì)于上一實(shí)施例,本實(shí)施例對(duì)技術(shù)方案作了進(jìn)一步的說明和優(yōu)化。具體的:
[0046]參見圖2所示,上一實(shí)施例步驟Sll中,對(duì)輸入文件進(jìn)行分割處理,相應(yīng)地得到N份塊文件的過程,具體包括:利用MapReduce函數(shù)庫(kù),對(duì)輸入文件進(jìn)行分割,得到N份塊文件。
[0047]參見圖2所示,上一實(shí)施例步驟S12中,分別對(duì)上述N份塊文件中的每一份塊文件進(jìn)行特征信息提取處理,相應(yīng)地得到每一份塊文件的特征信息的過程,包括:
[0048]步驟S121:為
當(dāng)前第1頁(yè)1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1