[發(fā)明專利]一種基于NFS文件服務(wù)器的文本文件多機(jī)并行上傳到HDFS方法在審
| 申請(qǐng)?zhí)枺?/td> | 201410584207.8 | 申請(qǐng)日: | 2014-10-28 |
| 公開(kāi)(公告)號(hào): | CN104408047A | 公開(kāi)(公告)日: | 2015-03-11 |
| 發(fā)明(設(shè)計(jì))人: | 房體盈;辛國(guó)茂 | 申請(qǐng)(專利權(quán))人: | 浪潮電子信息產(chǎn)業(yè)股份有限公司 |
| 主分類號(hào): | G06F17/30 | 分類號(hào): | G06F17/30 |
| 代理公司: | 濟(jì)南信達(dá)專利事務(wù)所有限公司 37100 | 代理人: | 姜明 |
| 地址: | 250100 山東*** | 國(guó)省代碼: | 山東;37 |
| 權(quán)利要求書: | 查看更多 | 說(shuō)明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 基于 nfs 文件服務(wù)器 文本文件 并行 傳到 hdfs 方法 | ||
技術(shù)領(lǐng)域
本發(fā)明涉及大數(shù)據(jù)存儲(chǔ)技術(shù)領(lǐng)域,?具體地說(shuō)是一種基于NFS文件服務(wù)器的文本文件多機(jī)并行上傳到HDFS方法。
背景技術(shù)
伴隨著計(jì)算機(jī)網(wǎng)絡(luò)的發(fā)展,海量數(shù)據(jù)的時(shí)代已經(jīng)到來(lái)?;ヂ?lián)網(wǎng)數(shù)據(jù)中心預(yù)測(cè)全球的數(shù)據(jù)使用量到2020年將會(huì)增長(zhǎng)44倍,達(dá)到35.2ZB。
對(duì)于如此大數(shù)據(jù)集的存儲(chǔ)、分析、管理和挖掘,傳統(tǒng)技術(shù)(包括傳統(tǒng)關(guān)系數(shù)據(jù)庫(kù))是無(wú)法勝任的,如何最快最好的分析和理解這些數(shù)據(jù)是擺在大家面前的當(dāng)務(wù)之急。而在現(xiàn)在已擁有的技術(shù)和工具中,最成熟也最成功的一套大數(shù)據(jù)解決方案為Hadoop文件存儲(chǔ)計(jì)算框架及構(gòu)架于其上的相關(guān)組件。對(duì)于每天生成的大量文本文件,如果快速的上傳到HDFS用于后續(xù)的處理,是當(dāng)前面臨的一個(gè)問(wèn)題。為解決文本文件快速上傳的問(wèn)題,本文提出了一種基于基于NFS文件服務(wù)器的文本文件多機(jī)并行上傳到HDFS方法。
HDFS默認(rèn)采用三副本機(jī)制,對(duì)于HDFS的客戶端來(lái)說(shuō),當(dāng)某一個(gè)用戶正在用一個(gè)客戶端來(lái)向HDFS中寫數(shù)據(jù),如果該客戶端上有DataNode節(jié)點(diǎn),NameNode最優(yōu)先考慮把正在寫入的數(shù)據(jù)的一個(gè)副本保存在這個(gè)客戶端的DataNode節(jié)點(diǎn)上,另外兩個(gè)副本保存到集群其他DataNode節(jié)點(diǎn)上,這樣在整個(gè)集群中,如果僅有一個(gè)客戶端寫入操作的話,集群中只有3個(gè)DataNode節(jié)點(diǎn)工作,其他DataNode節(jié)點(diǎn)是空閑的,不能發(fā)揮整個(gè)集群的性能。
發(fā)明內(nèi)容
本發(fā)明的目的是提供一種基于NFS文件服務(wù)器的文本文件多機(jī)并行上傳到HDFS方法。
本發(fā)明的目的是按以下方式實(shí)現(xiàn)的,選取HDFS集群中N個(gè)主機(jī),然后選擇任一節(jié)點(diǎn)作為主節(jié)點(diǎn),其他N-1個(gè)節(jié)點(diǎn)作為從節(jié)點(diǎn),在主節(jié)點(diǎn)上,獲取要上傳的NFS文件服務(wù)器要上傳目錄下文件,對(duì)于每一個(gè)文件,采用并行上傳方法,即集群中所有機(jī)器都參與上傳,集群中每一臺(tái)主機(jī)負(fù)責(zé)上傳每一個(gè)文件1/N大小的連續(xù)的數(shù)據(jù)塊,達(dá)到并行上傳的目的,從而提高上傳速度,具體步驟流程為:
1)主節(jié)點(diǎn)上MainPut程序計(jì)算N個(gè)節(jié)點(diǎn)每個(gè)節(jié)點(diǎn)待上傳數(shù)據(jù)塊起止字節(jié)流,并啟動(dòng)N個(gè)節(jié)點(diǎn)上BlockPut程序并行上傳;如果第一次運(yùn)行,會(huì)在每一個(gè)節(jié)點(diǎn)上安裝一個(gè)可執(zhí)行程序BlockPut,用于上傳本節(jié)點(diǎn)所負(fù)責(zé)上傳的數(shù)據(jù)塊,然后向每一個(gè)從節(jié)點(diǎn)發(fā)起命令啟動(dòng)BlockPut程序;
2)每個(gè)節(jié)點(diǎn)上BlockPut程序負(fù)責(zé)將待上傳數(shù)據(jù)塊上傳到HDFS,BlockPut打開(kāi)一個(gè)待上傳文件輸入流InputStream,InputStream定位到起始字節(jié)流,后在HDFS上創(chuàng)建一個(gè)獨(dú)立文件,將起止字節(jié)流寫入到HDFS獨(dú)立文件中。
將待上傳目錄掛載到N個(gè)節(jié)點(diǎn)的默認(rèn)統(tǒng)一目錄。
N不大于NFS文件服務(wù)器并行讀時(shí)可達(dá)最大帶寬時(shí)的客戶端數(shù),
本發(fā)明的目的有益效果是:本分明選取了集群中N個(gè)節(jié)點(diǎn)作為客戶端,將一個(gè)文件分成N個(gè)數(shù)據(jù)塊同時(shí)上傳,每個(gè)客戶端負(fù)責(zé)一塊,每個(gè)分塊在HDFS上保存為一個(gè)獨(dú)立的文件,能最大限度的利用整個(gè)集群的性能。將一個(gè)文本文件分塊并行上傳,最大限度的發(fā)揮集群的性能,提高上傳效率。
附圖說(shuō)明
圖1?是基于多機(jī)并行上傳處理框架圖。
具體實(shí)施方式
參照說(shuō)明書附圖對(duì)本發(fā)明的方法作以下詳細(xì)地說(shuō)明。
選取HDFS集群中N個(gè)主機(jī),然后選擇任一節(jié)點(diǎn)作為主節(jié)點(diǎn),其他N-1個(gè)節(jié)點(diǎn)作為從節(jié)點(diǎn),在主節(jié)點(diǎn)上,獲取要上傳的NFS文件服務(wù)器要上傳目錄下文件,對(duì)于每一個(gè)文件,采用并行上傳方法,即集群中所有機(jī)器都參與上傳,集群中每一臺(tái)主機(jī)負(fù)責(zé)上傳每一個(gè)文件1/N大小的連續(xù)的數(shù)據(jù)塊,達(dá)到并行上傳的目的,從而提高上傳速度,?本發(fā)明的一種基于NFS文件服務(wù)器的文本文件多機(jī)并行上傳到HDFS方法,?整個(gè)流程為:
1)主節(jié)點(diǎn)上MainPut程序計(jì)算N個(gè)節(jié)點(diǎn)每個(gè)節(jié)點(diǎn)待上傳數(shù)據(jù)塊起止字節(jié)流,,并啟動(dòng)N個(gè)節(jié)點(diǎn)上BlockPut程序并行上傳;如果第一次運(yùn)行,會(huì)在每一個(gè)節(jié)點(diǎn)上安裝一個(gè)可執(zhí)行程序BlockPut,用于上傳本節(jié)點(diǎn)所負(fù)責(zé)上傳的數(shù)據(jù)塊,然后向每一個(gè)從節(jié)點(diǎn)發(fā)起命令啟動(dòng)BlockPut程序;
2)每個(gè)節(jié)點(diǎn)上BlockPut程序負(fù)責(zé)將待上傳數(shù)據(jù)塊上傳到HDFS,BlockPut打開(kāi)一個(gè)待上傳文件輸入流InputStream,InputStream定位到起始字節(jié)流,后在HDFS上創(chuàng)建一個(gè)獨(dú)立文件,將起止字節(jié)流寫入到HDFS獨(dú)立文件中。
除說(shuō)明書所述的技術(shù)特征外,均為本專業(yè)技術(shù)人員的已知技術(shù)。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于浪潮電子信息產(chǎn)業(yè)股份有限公司,未經(jīng)浪潮電子信息產(chǎn)業(yè)股份有限公司許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410584207.8/2.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專利網(wǎng)。
- 同類專利
- 專利分類
G06F 電數(shù)字?jǐn)?shù)據(jù)處理
G06F17-00 特別適用于特定功能的數(shù)字計(jì)算設(shè)備或數(shù)據(jù)處理設(shè)備或數(shù)據(jù)處理方法
G06F17-10 .復(fù)雜數(shù)學(xué)運(yùn)算的
G06F17-20 .處理自然語(yǔ)言數(shù)據(jù)的
G06F17-30 .信息檢索;及其數(shù)據(jù)庫(kù)結(jié)構(gòu)
G06F17-40 .數(shù)據(jù)的獲取和記錄
G06F17-50 .計(jì)算機(jī)輔助設(shè)計(jì)
- 一種實(shí)現(xiàn)基于NFS的HADOOP HA集群中NFS節(jié)點(diǎn)雙機(jī)冗余的方法
- 基于網(wǎng)絡(luò)文件系統(tǒng)的交互方法和裝置
- 一種NFS共享最大化的測(cè)試方法和系統(tǒng)
- 地址切換處理方法及裝置
- 提供網(wǎng)絡(luò)功能服務(wù)的元數(shù)據(jù)信息的方法、系統(tǒng)以及相關(guān)設(shè)備
- 一種NFS分布式文件服務(wù)系統(tǒng)及構(gòu)建方法
- 基于分布式存儲(chǔ)的NFS集群及其提供NFS服務(wù)的方法
- 一種在HDFS插件中集成NFS的方法
- 一種NFS分區(qū)掛載方法、裝置、設(shè)備和介質(zhì)
- 網(wǎng)絡(luò)文件系統(tǒng)的回收方法及裝置
- 電子音樂(lè)裝置以及與音樂(lè)相關(guān)的數(shù)據(jù)的顯示方法
- 文本解析方法及裝置
- 文本文件指紋獲取方法及其裝置、數(shù)據(jù)管理方法
- 文本識(shí)別模型建立方法和裝置
- 文本文件刪除方法及裝置、終端裝置與可讀存儲(chǔ)介質(zhì)
- 文本加密方法、裝置及存儲(chǔ)介質(zhì)
- 一種文本重要性的計(jì)算方法、裝置、設(shè)備和存儲(chǔ)介質(zhì)
- 一種存取文本文件的方法、裝置和計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)
- 一種用于對(duì)文本文件進(jìn)行智能聚類的方法及系統(tǒng)
- 檢索相關(guān)超文本文件的超文本文件檢索裝置





