資源描述:
《基于HDFS的云存儲(chǔ)系統(tǒng)的研究與實(shí)現(xiàn)》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。
1、基于HDFS的云存儲(chǔ)系統(tǒng)的研究與實(shí)現(xiàn)宋杰[1],邢四為[1],王磊[1],陳林鋒[1](1.安徽大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,安徽合肥230601)摘要:針對海量數(shù)據(jù)的存儲(chǔ)問題,傳統(tǒng)方法一般是通過購置更多數(shù)量的服務(wù)器來提升計(jì)算和存儲(chǔ)能力,存在硬件成本高,存儲(chǔ)效率低等缺點(diǎn)。本文旨在通過構(gòu)建基于Hadoop分布式文件系統(tǒng)的云存儲(chǔ)系統(tǒng),解決海量數(shù)據(jù)存儲(chǔ)難題。文章首先闡述了云存儲(chǔ)的相關(guān)理論,接著對HDFS的管理機(jī)制和MapReduce編程模型進(jìn)行了分析,最后結(jié)合實(shí)際需求,設(shè)計(jì)并實(shí)現(xiàn)了一個(gè)基于Hadoop的云存儲(chǔ)
2、系統(tǒng)。經(jīng)過測試,該系統(tǒng)有效的解決了海量數(shù)據(jù)存儲(chǔ)管理問題,具有開發(fā)成本低、處理速度快、運(yùn)行穩(wěn)定、易于擴(kuò)展等特點(diǎn)。關(guān)鍵字:Hadoop;HDFS;MapReduce;云存儲(chǔ);分布式系統(tǒng)中圖分類號:TP306文獻(xiàn)標(biāo)志碼:A引言隨著計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)的快速發(fā)展,信息量呈爆炸性增長,數(shù)據(jù)存儲(chǔ)逐漸成為制約企業(yè)發(fā)展的關(guān)鍵問題。企業(yè)現(xiàn)有系統(tǒng)的擴(kuò)展能力差,難以滿足企業(yè)快速變化的業(yè)務(wù)需求[1]。傳統(tǒng)的NAS方案擴(kuò)展能力有限,并且面向企業(yè)級的NAS設(shè)備價(jià)格往往非常昂貴,購買以及安裝獨(dú)立的NAS設(shè)備,將面臨著巨大的經(jīng)濟(jì)壓力和額
3、外的維護(hù)成本。作為一種新興的商業(yè)計(jì)算模型,云計(jì)算具有動(dòng)態(tài)部署的功能,可以利用廉價(jià)的服務(wù)器構(gòu)建企業(yè)級存儲(chǔ)平臺,具有更加彈性、更加安全以及更低的成本[2]。本文通過對開源云計(jì)算平臺Hadoop的研究,提出了基于Hadoop構(gòu)建云存儲(chǔ)平臺,通過采用Linux集群技術(shù)、分布式文件系統(tǒng)和云計(jì)算框架,實(shí)現(xiàn)了海量數(shù)據(jù)存儲(chǔ)業(yè)務(wù)項(xiàng)目基金:2010安徽省自然科學(xué)基金研究項(xiàng)目(KJ2010B123)作者簡介:宋杰(1966-),男,副教授,研究方向?yàn)榍度胧较到y(tǒng)、計(jì)算機(jī)原理與接口、生物信息學(xué);邢四為(1988-),男,碩士
4、生,主要研究方向?yàn)榍度胧较到y(tǒng)應(yīng)用。1.云存儲(chǔ)及其架構(gòu)模式1.1云存儲(chǔ)相關(guān)理論云存儲(chǔ)概念是在云計(jì)算概念上延伸和發(fā)展出來的一個(gè)新的概念。云存儲(chǔ)的本質(zhì)是服務(wù)[3][4],云存儲(chǔ)通過計(jì)算機(jī)集群技術(shù)、網(wǎng)格技術(shù)和分布式文件系統(tǒng)等技術(shù),將網(wǎng)絡(luò)中大量各種不同類型的存儲(chǔ)設(shè)備組織起來協(xié)同工作,提供統(tǒng)一的數(shù)據(jù)存儲(chǔ)服務(wù)和業(yè)務(wù)訪問功能的一種存儲(chǔ)模式[5]。云存儲(chǔ)模式比較傳統(tǒng)存儲(chǔ)模式具有如下特點(diǎn):第一,在功能上,相比傳統(tǒng)存儲(chǔ)模式面向如高性能計(jì)算、事務(wù)處理應(yīng)用,云存儲(chǔ)模式具有面向多種類型的網(wǎng)絡(luò)在線存儲(chǔ)服務(wù)的特點(diǎn);第二,在性能上,
5、云存儲(chǔ)模式具有高數(shù)據(jù)安全性、高可靠性、高效率,以及適合處理大規(guī)模用戶、網(wǎng)絡(luò)環(huán)境復(fù)雜多變等業(yè)務(wù)的特點(diǎn);第三,在數(shù)據(jù)管理功能上,云存儲(chǔ)模式需要滿足傳統(tǒng)文件訪問方式,同時(shí)能夠支持海量數(shù)據(jù)管理并提供公共服務(wù)支撐功能,以方便云存儲(chǔ)系統(tǒng)后臺數(shù)據(jù)的維護(hù)[6]。基于上述特點(diǎn),云存儲(chǔ)模式整體架構(gòu)自底向上依次是:數(shù)據(jù)存儲(chǔ)層、數(shù)據(jù)管理層、數(shù)據(jù)服務(wù)層以及云端應(yīng)用層。數(shù)據(jù)存儲(chǔ)層包括底層的存儲(chǔ)介質(zhì)部署、計(jì)算機(jī)集群搭建以及設(shè)備虛擬化過程;數(shù)據(jù)管理層實(shí)現(xiàn)用戶權(quán)限控制、數(shù)據(jù)安全等業(yè)務(wù);數(shù)據(jù)服務(wù)層實(shí)現(xiàn)數(shù)據(jù)存儲(chǔ)、共享和備份業(yè)務(wù)邏輯;云端
6、應(yīng)用層實(shí)現(xiàn)用戶的定制業(yè)務(wù)[7]。1.1Hadoop框架的工作機(jī)制Hadoop為應(yīng)用程序透明的提供了一組穩(wěn)定可靠的接口。Hadoop框架的主要組成部分是Hadoop分布式文件系統(tǒng)(HDFS)和MapReduce的實(shí)現(xiàn)[8]。HDFS采用Master/Slave架構(gòu),一個(gè)HDFS集群由一個(gè)NameNode節(jié)點(diǎn)和一組DataNode節(jié)點(diǎn)組成。NameNode是一個(gè)中心服務(wù)器,負(fù)責(zé)管理文件系統(tǒng)的名字空間(NameSpace)以及客戶端對文件的訪問。在集群系統(tǒng)中,一般在一個(gè)節(jié)點(diǎn)上運(yùn)行一個(gè)DataNode,負(fù)責(zé)
7、管理它所在節(jié)點(diǎn)上的數(shù)據(jù)存儲(chǔ),并負(fù)責(zé)處理文件系統(tǒng)客戶端的讀寫請求,在NameNode的統(tǒng)一調(diào)度下進(jìn)行數(shù)據(jù)塊的創(chuàng)建、刪除和復(fù)制。Hadoop還實(shí)現(xiàn)了Google的MapReduce分布式計(jì)算模型,MapReduce把應(yīng)用程序的總?cè)蝿?wù)分割成許多子任務(wù),每個(gè)子任務(wù)可以在任何集群節(jié)點(diǎn)(DataNode節(jié)點(diǎn),通常也作為計(jì)算節(jié)點(diǎn))上并行處理。HDFS創(chuàng)建了多份數(shù)據(jù)塊(datablocks)的副本(Replicas),以保證各個(gè)子任務(wù)節(jié)點(diǎn)計(jì)算的可靠性(Reliability)。由于采用了分布式文件系統(tǒng)和MapRed
8、uce模型,因此Hadoop框架具有高容錯(cuò)性及對數(shù)據(jù)讀寫的高吞吐率,能自動(dòng)處理失敗節(jié)點(diǎn)。1.2HDFS的管理機(jī)制HDFS(HadoopDistributedFileSystem)是一個(gè)運(yùn)行在普通硬件之上的分布式文件系統(tǒng)。集群包括NameNode、SecondaryNameNode和DataNode三個(gè)部分[9]。一般來說,集群中有一臺作為NameNode,負(fù)責(zé)整個(gè)系統(tǒng)元數(shù)據(jù)的存儲(chǔ)記錄和對整個(gè)系統(tǒng)的控制;一臺機(jī)器作為SecondaryNameNode,負(fù)責(zé)備份NameN