引言
隨著Web2.0的發(fā)展.信息量呈爆炸性增長.?dāng)?shù)據(jù)存儲逐漸成為制約企業(yè)發(fā)展的關(guān)鍵問題。越來越多的企業(yè)開始將數(shù)據(jù)存儲分離出來作為獨(dú)立的項(xiàng)目進(jìn)行管理。高可靠性、高通用性、高擴(kuò)展性、大容量.云存儲以傳統(tǒng)數(shù)據(jù)中心無法比擬的優(yōu)勢特性.正在成為企業(yè)實(shí)現(xiàn)提高效率、降低成本的重要選擇。HDFS是當(dāng)前應(yīng)用最廣泛的云存儲技術(shù)之一.本文詳細(xì)分析HDFS云存儲技術(shù)的可靠性
1、云計(jì)算技術(shù)系統(tǒng)結(jié)構(gòu)
云計(jì)算是一種商業(yè)計(jì)算模型。它將計(jì)算任務(wù)分布在大量計(jì)算機(jī)構(gòu)成的資源池上,使各種應(yīng)用系統(tǒng)能夠根據(jù)需要獲取計(jì)算力、存儲空問和信息服務(wù)。
圖1 云計(jì)算技術(shù)體系結(jié)構(gòu)
云計(jì)算技術(shù)體系結(jié)構(gòu)分為4層:物理資源層、資源池層、管理中間件層和SOA構(gòu)建層,如圖1所示。物理資源層包括計(jì)算機(jī)、存儲器、網(wǎng)絡(luò)設(shè)施、數(shù)據(jù)庫和軟件等:資源池層是將大量相同類型的資源構(gòu)成同構(gòu)或接近同構(gòu)的資源池,如計(jì)算資源池、數(shù)據(jù)資源池等。管理中間件負(fù)責(zé)對云計(jì)算的資源進(jìn)行管理.并對眾多應(yīng)用任務(wù)進(jìn)行調(diào)度,使資源能夠高效、安全地為應(yīng)用提供服務(wù):S0A構(gòu)建層將云計(jì)算能力封裝成標(biāo)準(zhǔn)的Web Services服務(wù),并納入到SOA體系進(jìn)行管理和使用.包括服務(wù)注冊、查找、訪問和構(gòu)建服務(wù)工作流等。管理中間件和資源池層是云計(jì)算技術(shù)的最關(guān)鍵部分,SOA構(gòu)建層的功能更多依靠外部設(shè)施提供。
云計(jì)算的管理中間件負(fù)責(zé)資源管理、任務(wù)管理、用戶管理和安全管理等工作 資源管理負(fù)責(zé)均衡地使用云資源節(jié)點(diǎn).檢測節(jié)點(diǎn)的故障并試圖恢復(fù)或屏蔽之,并對資源的使用情況進(jìn)行監(jiān)視統(tǒng)計(jì).對云計(jì)算的可靠性有至關(guān)重要的作用 下面結(jié)合HDFS介紹云存儲技術(shù)的可靠性。
2、HDFS體系結(jié)構(gòu)
Hadoop是Apache基金會的一個開源項(xiàng)目.參考Google的GFS(Google File System)和Map/Reduce計(jì)算模型研發(fā)出HDFS(Hadoop Distributed File System)和自己的Map/Reduce框架。Hadoop主要由Yahoo開發(fā) ,F(xiàn)acebook、Amazon和Last.fm公司也都在使用Hadoop。
圖2 HDFS體系結(jié)構(gòu)
如圖2所示.Hadoop檔案系統(tǒng)(Hadoop DistributedFile Systern.HDFS)被設(shè)計(jì)成適合運(yùn)行在通用硬件上的分布式文件系統(tǒng).其具有高容錯性.能提供高吞吐量的數(shù)據(jù)訪問.非常適合于大規(guī)模數(shù)據(jù)集上的應(yīng)用。
3、HDFS可靠性
為了保障HDFS的高可靠性。HDFS有如下5個特性。
(1)冷備機(jī)制
HDFS中Secondary NameNode對NameNode中元數(shù)據(jù)提供了冷備方案 Secondary NameNode將Na—meNode的fsimage與edit log從Namenode復(fù)制到臨時目錄,將fsitnage同edit log合并,并產(chǎn)生新的Fsimage并把產(chǎn)生的新的Isirnage上傳給NameNode ,最后清除NameNode中的edit log
(2)租約機(jī)制
NameNode在打開或創(chuàng)建一個文件,準(zhǔn)備追加寫之前,會與此客戶端簽訂一份租約。客戶端會定時輪詢續(xù)簽租約。NameNode始終在輪詢檢查所有租約,查看是否有到期未續(xù)的租約。如果一切正常,該客戶端完成寫操作,會關(guān)閉文件,停止租約,一旦有所意外,比如文件被刪除了,客戶端宕機(jī)了,當(dāng)超過租約期限時,NameNode就會剝奪此租約,將這個文件的享用權(quán),分配給他人。如此,來避免由于客戶端停機(jī)帶來的資源被長期霸占的問題。
(3)數(shù)據(jù)的正確性與一致性
在HDFS中,為了保證數(shù)據(jù)的正確性和同一份數(shù)據(jù)的一致性,做了大量的工作。首先,每一個數(shù)據(jù)塊,都有一個版本標(biāo)識,一旦數(shù)據(jù)塊上的數(shù)據(jù)有所變化,此版本號將向前增加。在NameNode上,保存有此時每個數(shù)據(jù)塊的版本,一旦出現(xiàn)數(shù)據(jù)服務(wù)器上相關(guān)數(shù)據(jù)塊版本與其不一致,將會觸發(fā)相關(guān)的恢復(fù)流程。這樣的機(jī)制保證了各個數(shù)據(jù)服務(wù)器器上的數(shù)據(jù)塊,在基本大方向上都是一致的。但是,由于網(wǎng)絡(luò)的復(fù)雜性,簡單的版本信息無法保證具體內(nèi)容的一致性。因此,為了保證數(shù)據(jù)內(nèi)容上的一致,必須要依照內(nèi)容,給出簽名。
當(dāng)客戶端向數(shù)據(jù)服務(wù)器追加寫人數(shù)據(jù)包時,每一個數(shù)據(jù)包的數(shù)據(jù),都會切分成512字節(jié)大小的段,作為簽名驗(yàn)證的基本單位,在HDFS中,把這個數(shù)據(jù)段稱為Chunk,即傳輸塊。在每一個數(shù)據(jù)包中,都包含若干個傳輸塊以及每一個傳輸塊的簽名,一旦發(fā)現(xiàn)當(dāng)前的傳輸塊簽名與在客戶端中的簽名不一致,整個數(shù)據(jù)包的寫人被視為無效。
(4)系統(tǒng)升級回滾
當(dāng)升級某個集群的Hadoop的時候,正如任何軟件的升級一樣,可能會引人新的bug或者不兼容的修改導(dǎo)致現(xiàn)有的應(yīng)用出現(xiàn)過去沒有發(fā)現(xiàn)的問題。在所有重要的HDFS安裝應(yīng)用中,是不允許出現(xiàn)因丟失任何數(shù)據(jù)需要從零開始重啟HDFS的情況。HDFS允許管理員恢復(fù)到Hadoop的早期版本,并且將集群的狀態(tài)回滾到升級前。
圖3 系統(tǒng)升級回滾
如圖3所示,升級時,NameNode會將新的版本號,通過DataNode的登錄應(yīng)答返回。DataNode收到以后,會將當(dāng)前的數(shù)據(jù)塊文件目錄改名,從curren,改名為previous.tmp ,建立一個snapshot,然后重建current目錄。重建包括重建VERSION文件,重建對應(yīng)的子目錄,然后建立數(shù)據(jù)塊文件和數(shù)據(jù)塊元數(shù)據(jù)文件到previous.tmp的硬連接。建立硬連接意味著在系統(tǒng)中只保留一份數(shù)據(jù)塊文件和數(shù)據(jù)塊元數(shù)據(jù)文件,current和previous.tmp中的相應(yīng)文件,在存儲中,只保留一份。當(dāng)所有的這些工作完成以后,會在current里寫人新的VER-SION文件,并將previous.tmp目錄改名為previous,完成升級。
回滾相對簡單,因?yàn)樗械呐f版本信息都保存在previou、目錄里;貪L首先將current目錄改名為re-moved.tmp,然后將previous目錄改名為current,最后刪除removed.tmp目錄。
提交的過程,就是將上面的previous目錄改名為finalized.tmp,然后啟動一個線程,將該目錄刪除。
(5)安全模式
在啟動的時候,名字節(jié)點(diǎn)進(jìn)入一個特殊的狀態(tài)叫做安全模式。安全模式是不發(fā)生文件塊的復(fù)制的。NN接受來自DN的心跳和塊報(bào)告。一個塊報(bào)告包括的是DN向NN報(bào)告數(shù)據(jù)塊的列表。
4、總結(jié)
本文首先簡介了云計(jì)算技術(shù)系統(tǒng)結(jié)構(gòu),針對當(dāng)前主流的云存儲技術(shù)HDFS,詳細(xì)研究了HDFS的冷備機(jī)制、租約機(jī)制、數(shù)據(jù)的正確性與一致性、系統(tǒng)升級回滾、安全模式5個云存儲可靠性特性。在云存儲大規(guī)模應(yīng)用的今天,HDFS必將得到越來越多推廣和使用。
核心關(guān)注:拓步ERP系統(tǒng)平臺是覆蓋了眾多的業(yè)務(wù)領(lǐng)域、行業(yè)應(yīng)用,蘊(yùn)涵了豐富的ERP管理思想,集成了ERP軟件業(yè)務(wù)管理理念,功能涉及供應(yīng)鏈、成本、制造、CRM、HR等眾多業(yè)務(wù)領(lǐng)域的管理,全面涵蓋了企業(yè)關(guān)注ERP管理系統(tǒng)的核心領(lǐng)域,是眾多中小企業(yè)信息化建設(shè)首選的ERP管理軟件信賴品牌。
轉(zhuǎn)載請注明出處:拓步ERP資訊網(wǎng)http://www.ezxoed.cn/
本文標(biāo)題:HDFS云存儲技術(shù)可靠性簡介
本文網(wǎng)址:http://www.ezxoed.cn/html/consultation/1083973048.html