作為一種數(shù)據(jù)安全策略,備份是避免數(shù)據(jù)丟失的最基本方法,目前較常見的網(wǎng)絡(luò)數(shù)據(jù)備份系統(tǒng)按架構(gòu)不同可分為基于網(wǎng)絡(luò)附加存儲(chǔ)結(jié)構(gòu)、基于局域網(wǎng)結(jié)構(gòu)、基于sAN結(jié)構(gòu)的LAN—Free結(jié)構(gòu)和server—Free結(jié)構(gòu)4類。
云存儲(chǔ)技術(shù)的出現(xiàn)為數(shù)據(jù)備份提供了一種新方法,云存儲(chǔ)的特點(diǎn)如下:1)提供完整的數(shù)據(jù)存儲(chǔ)服務(wù),用戶可得到智能的備份軟件及管理完善的存儲(chǔ)容量;2)云存儲(chǔ)僅對(duì)數(shù)據(jù)進(jìn)行備份,用戶不必?fù)?dān)心失去對(duì)原始數(shù)據(jù)的控制;3)云存儲(chǔ)服務(wù)具有價(jià)格上的優(yōu)勢(shì),備份相同規(guī)模的數(shù)據(jù),云存儲(chǔ)所需的費(fèi)用比購(gòu)置存儲(chǔ)設(shè)備建立數(shù)據(jù)中心成本低很多。
HadoopH是Apache下的一個(gè)開源
云計(jì)算基礎(chǔ)軟件項(xiàng)目,目前已得到廣泛應(yīng)用.Hadoop的基礎(chǔ)組件HDFs(hadoop distributed file system),是模仿Google的GFS設(shè)計(jì)思路開發(fā)的專門針對(duì)廉價(jià)硬件設(shè)計(jì)的分布式文件系統(tǒng),在軟件層內(nèi)置數(shù)據(jù)容錯(cuò)能力,可應(yīng)用于云存儲(chǔ)系統(tǒng)的創(chuàng)建開發(fā),與現(xiàn)有的分布式系統(tǒng)最大區(qū)別為高容錯(cuò)性和低成本。
本文將HDFs技術(shù)運(yùn)用于數(shù)據(jù)備份領(lǐng)域,設(shè)計(jì)并實(shí)現(xiàn)了基于HDFs的數(shù)據(jù)備份系統(tǒng)HB-CDBS(HDFS based cloud data backup system),該系統(tǒng)充分利用云存儲(chǔ)技術(shù)的優(yōu)勢(shì),應(yīng)用已有的廉價(jià)計(jì)算機(jī)設(shè)備建立數(shù)據(jù)備份集群,滿足用戶數(shù)據(jù)備份/恢復(fù)業(yè)務(wù)的需要。
1 體系結(jié)構(gòu)
HB-CDBS系統(tǒng)設(shè)計(jì)的前提是不增加任何硬件投資及不改變現(xiàn)有網(wǎng)絡(luò),而HDFS具有良好的存儲(chǔ)可擴(kuò)展性和計(jì)算可擴(kuò)展性,恰好滿足上述要求.本文設(shè)計(jì)的基于HDFS的云數(shù)據(jù)備份系統(tǒng)HB—CDBS分為客戶端、備份眼務(wù)器和HDFS集群三部分,系統(tǒng)體系結(jié)構(gòu)如圖1所示。
圖1 HB-CDBS體系結(jié)構(gòu)
客戶端是眾多需要數(shù)據(jù)備份/恢復(fù)服務(wù)的計(jì)算機(jī)節(jié)點(diǎn),按照地域、系統(tǒng)類別等分為若干個(gè)群,需要進(jìn)行數(shù)據(jù)備份或恢復(fù)時(shí),向負(fù)責(zé)本群的備份服務(wù)器提出請(qǐng)求,進(jìn)行文件備份和恢復(fù)操作。
備份服務(wù)器是客戶端和HDFS集群間數(shù)據(jù)備份恢復(fù)的橋梁,每個(gè)服務(wù)器負(fù)責(zé)一個(gè)客戶端群。他們接受客戶端的數(shù)據(jù)備份恢復(fù)請(qǐng)求,緩存客戶端的備份數(shù)據(jù),根據(jù)備份數(shù)據(jù)的不同情況,分別對(duì)其進(jìn)行合并、壓縮后上傳到HDFS集群備份,同時(shí)保存客戶端備份文件的映像表,當(dāng)客戶端提出恢復(fù)請(qǐng)求時(shí),從HDFS集群中讀取備份文件,按文件映像表發(fā)送給客戶端。
HDFS集群由安裝了HDFS軟件的計(jì)算機(jī)組成,在HDFS軟件的架構(gòu)下,通過配置向多個(gè)備份服務(wù)器提供上傳、下載服務(wù),實(shí)現(xiàn)系統(tǒng)的核心功能。
HB-CDBS系統(tǒng)應(yīng)用備份服務(wù)器作為客戶端與備份集群的橋梁具有如下優(yōu)勢(shì):
1)備份服務(wù)器可屏蔽客戶端對(duì)備份集群的直接訪問,從而提高備份集群的安全性,同時(shí)在備份服務(wù)器和客戶端間通過防火墻、安全信道等技術(shù)實(shí)現(xiàn)數(shù)據(jù)安全,進(jìn)而保證整個(gè)系統(tǒng)的安全;
2)備份服務(wù)器可暫存數(shù)據(jù),并根據(jù)備份集群的負(fù)載和網(wǎng)絡(luò)狀況決定在合適的時(shí)間上傳數(shù)據(jù),從而保證備份集群的負(fù)載平衡;
3)雖然在特殊情況下,備份服務(wù)器由于大量客戶端的備份/恢復(fù)請(qǐng)求可能成為系統(tǒng)的瓶頸,但通過應(yīng)用高性能的服務(wù)器作為備份服務(wù)器及客戶端的合理調(diào)度可最大限度地避免該情況發(fā)生;
4)向HD瑪集群上傳、下載文件需要在計(jì)算機(jī)上安裝Hadoop特定組件,這對(duì)數(shù)量眾多、水平參差不齊的客戶實(shí)現(xiàn)較難,通過在備份服務(wù)器上收集用戶需備份的數(shù)據(jù),并在其上安裝Hadoop組件易于實(shí)現(xiàn)備份、恢復(fù)功能,可充分發(fā)揮HDFS的功能。
2 系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
2.1客戶端模塊的設(shè)計(jì)
客戶端模塊用于實(shí)現(xiàn)系統(tǒng)數(shù)據(jù)備份恢復(fù),包括文件打包、壓縮策略、數(shù)據(jù)的備份和恢復(fù)。客戶端模塊備份數(shù)據(jù)前,應(yīng)用tar,winrar等工具將所有數(shù)據(jù)文件打包成一個(gè)備份文件,按照“客戶Id-備份日期-bak”的規(guī)則命名;同時(shí)進(jìn)行壓縮以節(jié)省存儲(chǔ)空間、減少備份恢復(fù)時(shí)間?蛻舳斯(jié)點(diǎn)中保存為本機(jī)提供服務(wù)的備份服務(wù)器信息,當(dāng)需要備份或恢復(fù)時(shí)向備份服務(wù)器發(fā)出相應(yīng)請(qǐng)求?蛻舳宋募膫浞莼謴(fù)過程如圖2和圖3所示。
圖2客戶端備份過程 圖3客戶端恢復(fù)過程
2.2備份服務(wù)器
2.2.1 文件備份備份服務(wù)器接收到客戶端的備份請(qǐng)求后,先對(duì)客戶端進(jìn)行識(shí)別認(rèn)證,再接收客戶端上傳的備份文件。上傳完備份文件,備份服務(wù)器將備份文件加上時(shí)間戳編號(hào)后暫存,并將備份文件的信息記入備份數(shù)據(jù)信息表,其字段內(nèi)容列于表1,然后將文件名作為參數(shù)調(diào)用云數(shù)據(jù)上傳算法CDUA(cloud data upload algorithm)上傳數(shù)據(jù)。
表1備份數(shù)據(jù)信息表字段
HDFS是專為大文件設(shè)計(jì)的存儲(chǔ)系統(tǒng),為保證備份效率,CADU算法采用閾值觸發(fā)上傳策略:首先設(shè)定上傳閾值thsize,只有當(dāng)客戶端上傳的備份文件大于thsize時(shí),才進(jìn)行上傳;否則在本地暫存數(shù)據(jù)文件,等待其他客戶端上傳數(shù)據(jù),當(dāng)所有未上傳數(shù)據(jù)大小大于閾值時(shí)再上傳至HDFS集群。
確定,其中:hdfssize,為HDFS集群存儲(chǔ)空間大小;CCn為客戶端集群個(gè)數(shù);rpn。為HDFS集群中數(shù)據(jù)備份副本的個(gè)數(shù);Cn為默認(rèn)集群中客戶節(jié)點(diǎn)個(gè)數(shù);Cblock為可分配給客戶端的存儲(chǔ)塊數(shù);λ為調(diào)節(jié)系數(shù)。
CADU算法先檢測(cè)用戶上傳文件大小是否大于等于thsize,如果大于等于thsize則上傳該文件到HDFS集群,上傳成功后將文件備份數(shù)據(jù)信息表中對(duì)應(yīng)的上傳標(biāo)志位置為真,填寫上傳文件名(此時(shí)文件名與客戶端上傳文件名稱相同),刪除備份服務(wù)器上的文件。如果文件大小小于thsize,則讀取備份文件信息表,得到所有未上傳備份文件的信息,計(jì)算全部未上傳文件的大小,如果大于等于thsize,則將所有未上傳文件打包成一個(gè)文件,按照“文件名1-文件2-文件名n”的方式對(duì)該文件命名,上傳成功后,將文件備份文件信息表中對(duì)應(yīng)的上傳標(biāo)志位置為真,填寫上傳文件名刪除文件;如果全部為上傳文件大小依然小于thsize,則退出。
2.2.2 文件恢復(fù) 備份服務(wù)器接收到客戶端的恢復(fù)請(qǐng)求后,先對(duì)客戶端進(jìn)行識(shí)別認(rèn)證,認(rèn)證通過后,再檢查備份文件信息表,如果備份文件暫存在本地,則從備份服務(wù)器上發(fā)送文件給客戶端;如果備份文件存于HDFS集群中,則從HDFS備份集群中下載文件后,再發(fā)送給客戶端.如果備份文件是由多個(gè)文件打包而成,則還需對(duì)文件解包,再發(fā)送客戶數(shù)據(jù).
2.2.3 備份服務(wù)器的上傳/下載策略 HDFS集群處于24 h工作狀態(tài),因此備份服務(wù)器可隨時(shí)進(jìn)行數(shù)據(jù)的備份/恢復(fù)操作,為保證系統(tǒng)備份的性能,系統(tǒng)設(shè)計(jì)時(shí)采用恢復(fù)優(yōu)先、沖突檢測(cè)上傳的策略進(jìn)行備份恢復(fù),即備份服務(wù)器需要下載數(shù)據(jù)時(shí),立即進(jìn)行;而當(dāng)需要上傳數(shù)據(jù)時(shí),如果沒有其他備份服務(wù)器上傳數(shù)據(jù),立即上傳,否則稱為產(chǎn)生沖突,等待一段時(shí)間再進(jìn)行檢測(cè)以決定是否上傳,等待時(shí)間的長(zhǎng)短由退避算法確定。
2.3 HDFS備份集群
HDFS備份集群采用Master/slave結(jié)構(gòu),由一個(gè)Namenode和一定數(shù)量的Datanodes組成。Namenode作為中心服務(wù)器負(fù)責(zé)管理文件系統(tǒng)的名字空間(namespace)及客戶對(duì)文件的訪問。Namenode由云中具有較高性能的服務(wù)器配置而成,以實(shí)現(xiàn)高效的元數(shù)據(jù)管理,避免性能瓶頸。DataNode用于存儲(chǔ)數(shù)據(jù),由大量廉價(jià)計(jì)算機(jī)配置而成,并可根據(jù)備份數(shù)據(jù)的規(guī)模進(jìn)行動(dòng)態(tài)擴(kuò)展.備份時(shí)文件被分成一個(gè)或多個(gè)數(shù)據(jù)塊,這些塊存儲(chǔ)在一組Datanode上。Datanode負(fù)責(zé)對(duì)文件系統(tǒng)客戶端的讀寫請(qǐng)求進(jìn)行處理,并在Namenode統(tǒng)一調(diào)度下進(jìn)行數(shù)據(jù)塊的創(chuàng)建、刪除和復(fù)制等操作。
3 性能評(píng)價(jià)
3.1 系統(tǒng)性能
為檢測(cè)本文所設(shè)計(jì)系統(tǒng)的性能,進(jìn)行如下實(shí)驗(yàn).實(shí)驗(yàn)中的云備份系統(tǒng)由7臺(tái)計(jì)算機(jī)構(gòu)成,其中一臺(tái)Dell Optiplex380(配置為Intel雙核3.0 GHz CPU,2G內(nèi)存)為NameNode,其他6臺(tái)Deu Optiplex360(配置為Intel雙核2.5 GHz CPU,1G內(nèi)存,300 G硬盤)為DataNode.實(shí)驗(yàn)從l 000個(gè)小文件(每個(gè)文件大小為5~7 M)中首次隨機(jī)選取50個(gè),分別進(jìn)行單獨(dú)上傳下載和打包上傳下載實(shí)驗(yàn);再?gòu)倪@些小文件中隨機(jī)選取100個(gè)重復(fù)上述實(shí)驗(yàn)。每項(xiàng)實(shí)驗(yàn)各進(jìn)行3次,取平均值作為結(jié)果,所得數(shù)據(jù)列于表2。
表2 小文件分別上傳下載與打包上傳下載的比較
由表2可見,無論是上傳和下載,對(duì)小文件打包的策略都極大節(jié)約了相應(yīng)操作的時(shí)間,充分應(yīng)用了HDFS系統(tǒng)的特性.在安全方面,備份服務(wù)器通過認(rèn)證、授權(quán)、安全信道傳輸?shù)却胧┍WC了客戶端與備份服務(wù)器間的安全;通過Hadoop的安全機(jī)制實(shí)現(xiàn)了備份服務(wù)器和HDFS集群的安全。在可擴(kuò)展方面,本系統(tǒng)借助Hadoop軟件存儲(chǔ)的可擴(kuò)展和計(jì)算的可擴(kuò)展能力,可根據(jù)需要隨時(shí)擴(kuò)展HDFS集群的規(guī)模,增加系統(tǒng)的備份能力。在經(jīng)濟(jì)方面,HDFS是專門針對(duì)廉價(jià)硬件設(shè)計(jì)的分布式文件系統(tǒng),具有良好的兼容性,可充分利用已有的大量閑置廉價(jià)計(jì)算機(jī)資源,節(jié)省設(shè)備采購(gòu)的開銷。在可靠性方面,備份文件在HDFS集群中以多副本的形式進(jìn)行保存,還可根據(jù)文件的重要程度,增加副本的份數(shù),提高可靠性。
3.2與已有數(shù)據(jù)備份系統(tǒng)的比較
本文所設(shè)計(jì)的云數(shù)據(jù)備份系統(tǒng)與網(wǎng)絡(luò)附加存儲(chǔ)系統(tǒng)(DAS—Base)相比,克服了DAS—Base可管理的存儲(chǔ)設(shè)備少、不利于備份系統(tǒng)共享、不適于大型數(shù)據(jù)備份的缺點(diǎn);與LAN—Based備份系統(tǒng)相比,由于采用多備份服務(wù)器對(duì)不同區(qū)域的客戶進(jìn)行服務(wù),既具備和LAN—Based備份結(jié)構(gòu)類似的投資經(jīng)濟(jì)、集中備份管理的優(yōu)點(diǎn),又克服了網(wǎng)絡(luò)傳輸壓力大,當(dāng)備份數(shù)據(jù)量大或備份頻率高時(shí),局域網(wǎng)的性能下降快的缺點(diǎn)。與基于SAN的兩種備份方案相比,本文所設(shè)計(jì)的系統(tǒng)應(yīng)用已有的廉價(jià)設(shè)備進(jìn)行構(gòu)建,在保證數(shù)據(jù)高速高效備份的同時(shí),無需采購(gòu)昂貴的專用通訊與存儲(chǔ)設(shè)備,極大降低了數(shù)據(jù)備份的成本;同時(shí)由于采用軟件的方式構(gòu)建備份集群,也降低了技術(shù)實(shí)施的復(fù)雜度,并且無需考慮不同廠商產(chǎn)品的兼容性。
綜上所述,本文將云存儲(chǔ)技術(shù)引入數(shù)據(jù)備份領(lǐng)域,設(shè)計(jì)并實(shí)現(xiàn)了基于HDFS的云數(shù)據(jù)備份系統(tǒng)。該系統(tǒng)在不增加設(shè)備投資的前提下,充分應(yīng)用用戶已有的硬件基礎(chǔ)設(shè)施和閑置資源,依托HDFS組件的強(qiáng)大性能構(gòu)建數(shù)據(jù)備份集群.通過用戶分群管理、小文件合并上傳、恢復(fù)優(yōu)先等策略進(jìn)一步提高了系統(tǒng)性能。本文設(shè)計(jì)的基于HDFS的云備份系統(tǒng)在安全性、可擴(kuò)展性、經(jīng)濟(jì)性及可靠性方面均具有一定的優(yōu)勢(shì)。
核心關(guān)注:拓步ERP系統(tǒng)平臺(tái)是覆蓋了眾多的業(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)載請(qǐng)注明出處:拓步ERP資訊網(wǎng)http://www.oesoe.com/
本文標(biāo)題:基于HDFS的云數(shù)據(jù)備份系統(tǒng)
本文網(wǎng)址:http://www.oesoe.com/html/support/11121510274.html