一種加速集群系統(tǒng)數(shù)據(jù)恢復(fù)的方法
【專利說明】一種加速集群系統(tǒng)數(shù)據(jù)恢復(fù)的方法
[0001]
技術(shù)領(lǐng)域
[0002]本發(fā)明涉及云存儲(chǔ)領(lǐng)域,具體的說就是一種加速集群系統(tǒng)數(shù)據(jù)恢復(fù)的方法。
【背景技術(shù)】
[0003]隨著云計(jì)算和大數(shù)據(jù)的發(fā)展,集群存儲(chǔ)系統(tǒng)成為數(shù)據(jù)存儲(chǔ)的主要方式,目前主流的集群存儲(chǔ)系統(tǒng)包括HDFS、ceph、Lustre等,為了保證數(shù)據(jù)的安全性,多數(shù)集群存儲(chǔ)系統(tǒng)都采用了基于副本的數(shù)據(jù)冗余技術(shù),在系統(tǒng)出現(xiàn)磁盤或者節(jié)點(diǎn)故障時(shí),由于數(shù)據(jù)是副本形式存放,系統(tǒng)內(nèi)部會(huì)根據(jù)數(shù)據(jù)的副本自動(dòng)進(jìn)行故障節(jié)點(diǎn)或磁盤上的數(shù)據(jù)進(jìn)行重構(gòu)恢復(fù),以保證數(shù)據(jù)的冗余性。由于數(shù)據(jù)的重構(gòu)對(duì)于前段的業(yè)務(wù)是透明的,因此重構(gòu)的時(shí)間窗口越短對(duì)于前段業(yè)務(wù)的影響越小。此外數(shù)據(jù)重構(gòu)的過程中為了減小對(duì)前段業(yè)務(wù)的影響通常也會(huì)對(duì)數(shù)據(jù)重構(gòu)的帶寬進(jìn)行限制,在這種情況下如何加速數(shù)據(jù)重構(gòu)的速度?針對(duì)這種情況,本發(fā)明提出了本方法一種加速集群存儲(chǔ)系統(tǒng)數(shù)據(jù)恢復(fù)的方法。
【發(fā)明內(nèi)容】
[0004]本發(fā)明針對(duì)現(xiàn)有技術(shù)存在的不足之處,提出了一種加速集群系統(tǒng)數(shù)據(jù)恢復(fù)的方法。
[0005]本發(fā)明所述一種加速集群系統(tǒng)數(shù)據(jù)恢復(fù)的方法,解決上述技術(shù)問題采用的技術(shù)方案如下:該加速集群系統(tǒng)數(shù)據(jù)恢復(fù)的方法,是一種集群存儲(chǔ)系統(tǒng)的故障處理方法,為集群存儲(chǔ)系統(tǒng)的數(shù)據(jù)恢復(fù)過程提供一種系統(tǒng)內(nèi)部處理機(jī)制,采用數(shù)據(jù)壓縮和解壓縮的方法降低帶寬需求,利用CPU資源換取帶寬資源,來加速數(shù)據(jù)的恢復(fù)速度。
[0006]優(yōu)選的,該加速集群系統(tǒng)數(shù)據(jù)恢復(fù)的方法,在數(shù)據(jù)重構(gòu)時(shí),首先將需要恢復(fù)的數(shù)據(jù)塊利用相關(guān)數(shù)據(jù)壓縮算法進(jìn)行壓縮,之后將壓縮后的數(shù)據(jù)發(fā)送到指定的磁盤或者存儲(chǔ)節(jié)點(diǎn)上,并在該存儲(chǔ)節(jié)點(diǎn)上進(jìn)行數(shù)據(jù)解壓縮處理將數(shù)據(jù)恢復(fù),從而實(shí)現(xiàn)數(shù)據(jù)的冗余性。
[0007]優(yōu)選的,所述數(shù)據(jù)壓縮算法采用zlib、snappy、Izo或1ζ4。
[0008]本發(fā)明的一種加速集群系統(tǒng)數(shù)據(jù)恢復(fù)的方法與現(xiàn)有技術(shù)相比具有的有益效果是:該方法在集群存儲(chǔ)系統(tǒng)的數(shù)據(jù)恢復(fù)過程中使用數(shù)據(jù)壓縮的方法加速數(shù)據(jù)的恢復(fù)速度,極大減小了數(shù)據(jù)重構(gòu)過程對(duì)前端業(yè)務(wù)的影響,顯著提高了數(shù)據(jù)重構(gòu)的速度,加速了集群系統(tǒng)數(shù)據(jù)的恢復(fù);集群系統(tǒng)數(shù)據(jù)的恢復(fù)過程為系統(tǒng)內(nèi)部處理機(jī)制,加速方法的壓縮和解壓縮為系統(tǒng)內(nèi)部處理,不會(huì)對(duì)前段業(yè)務(wù)的實(shí)時(shí)性造成影響,因此該方法具有較好的推廣使用價(jià)值。
【附圖說明】
[0009]附圖1為為正常情況下的數(shù)據(jù)重構(gòu)恢復(fù)流程圖;
附圖2為所述加速集群系統(tǒng)數(shù)據(jù)恢復(fù)的方法的流程圖。
【具體實(shí)施方式】
[0010]為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚明白,以下結(jié)合具體實(shí)施例,并參考附圖,對(duì)本發(fā)明所述一種加速集群系統(tǒng)數(shù)據(jù)恢復(fù)的方法進(jìn)一步詳細(xì)說明。
[0011]在大多數(shù)集群存儲(chǔ)系統(tǒng)中數(shù)據(jù)是以對(duì)象的形式存放,因此在數(shù)據(jù)的重構(gòu)過程中都是以對(duì)象為單位進(jìn)行傳輸。集群存儲(chǔ)系統(tǒng)中通常的對(duì)象大小為4MB,這種情況下,在數(shù)據(jù)重構(gòu)的過程中系統(tǒng)對(duì)于帶寬的需求大于對(duì)于CPU的需求,因此本發(fā)明所述加速集群系統(tǒng)數(shù)據(jù)恢復(fù)的方法采用數(shù)據(jù)壓縮的方法降低帶寬需求,利用CPU資源換取帶寬資源,來加速數(shù)據(jù)的恢復(fù)速度。
[0012]實(shí)施例:
本實(shí)施例所述一種加速集群系統(tǒng)數(shù)據(jù)恢復(fù)的方法,是一種集群存儲(chǔ)系統(tǒng)的故障處理方法,在數(shù)據(jù)重構(gòu)時(shí),首先進(jìn)行將需要恢復(fù)的數(shù)據(jù)塊利用相關(guān)數(shù)據(jù)壓縮算法,例如zlib、snappy、lzo、1ζ4等,之后將壓縮后的數(shù)據(jù)發(fā)送到指定的磁盤或者存儲(chǔ)節(jié)點(diǎn)上,并在該存儲(chǔ)節(jié)點(diǎn)上進(jìn)行數(shù)據(jù)解壓縮處理將數(shù)據(jù)恢復(fù),從而實(shí)現(xiàn)數(shù)據(jù)的冗余性。
[0013]在集群存儲(chǔ)系統(tǒng)的數(shù)據(jù)恢復(fù)過程中,都是大塊數(shù)據(jù)的傳輸;集群存儲(chǔ)系統(tǒng)的數(shù)據(jù)恢復(fù)過程為系統(tǒng)內(nèi)部處理機(jī)制,加速方法的數(shù)據(jù)壓縮和解壓縮為系統(tǒng)內(nèi)部處理,不會(huì)對(duì)前段業(yè)務(wù)的實(shí)時(shí)性造成影響。
[0014]附圖1 (包含圖a和圖b)為正常情況下的數(shù)據(jù)重構(gòu)恢復(fù)流程圖,如附圖1所示,集群存儲(chǔ)系統(tǒng)有四個(gè)存儲(chǔ)節(jié)點(diǎn)構(gòu)成,數(shù)據(jù)以兩副本的冗余方式存放,由圖可以看出每個(gè)數(shù)據(jù)塊都有兩份,分不到四個(gè)節(jié)點(diǎn)上,如圖a所示當(dāng)節(jié)點(diǎn)3出現(xiàn)故障時(shí),集群存儲(chǔ)系統(tǒng)需要將存儲(chǔ)節(jié)點(diǎn)3上的數(shù)據(jù)進(jìn)行重構(gòu)恢復(fù),根據(jù)系統(tǒng)的分布算法重新計(jì)算后數(shù)據(jù)分布可能如圖b所示,這時(shí)就需要存儲(chǔ)節(jié)點(diǎn)I將數(shù)據(jù)塊I發(fā)送到存儲(chǔ)節(jié)點(diǎn)2,存儲(chǔ)節(jié)點(diǎn)2將數(shù)據(jù)塊5發(fā)送到存儲(chǔ)節(jié)點(diǎn)4,存儲(chǔ)節(jié)點(diǎn)4將數(shù)據(jù)塊3發(fā)送到存儲(chǔ)節(jié)點(diǎn)I。在數(shù)據(jù)重構(gòu)完成后,所有的數(shù)據(jù)塊都恢復(fù)了兩副本的配置,從而保證了集群存儲(chǔ)系統(tǒng)的冗余性。
[0015]附圖2為本實(shí)施例所述加速集群系統(tǒng)數(shù)據(jù)恢復(fù)的方法的流程圖,如附圖2所示,在數(shù)據(jù)重構(gòu)時(shí)將數(shù)據(jù)進(jìn)行了壓縮處理,存儲(chǔ)節(jié)點(diǎn)I在將數(shù)據(jù)塊I發(fā)送到存儲(chǔ)節(jié)點(diǎn)2前,首先將數(shù)據(jù)塊I進(jìn)行數(shù)據(jù)壓縮處理,之后將壓縮數(shù)據(jù)發(fā)送到存儲(chǔ)節(jié)點(diǎn)2,存儲(chǔ)節(jié)點(diǎn)2在接收到數(shù)據(jù)塊I的壓縮數(shù)據(jù)后進(jìn)行數(shù)據(jù)解壓縮處理,得到數(shù)據(jù)塊I后存放到本地,從而恢復(fù)了數(shù)據(jù)塊I的兩副本配置,保證了數(shù)據(jù)塊I的冗余性。其他數(shù)據(jù)塊重構(gòu)與數(shù)據(jù)塊I的重構(gòu)恢復(fù)方法一致。
[0016]上述【具體實(shí)施方式】僅是本發(fā)明的具體個(gè)案,本發(fā)明的專利保護(hù)范圍包括但不限于上述【具體實(shí)施方式】,任何符合本發(fā)明的權(quán)利要求書的且任何所屬技術(shù)領(lǐng)域的普通技術(shù)人員對(duì)其所做的適當(dāng)變化或替換,皆應(yīng)落入本發(fā)明的專利保護(hù)范圍。
【主權(quán)項(xiàng)】
1.一種加速集群系統(tǒng)數(shù)據(jù)恢復(fù)的方法,其特征在于,為集群存儲(chǔ)系統(tǒng)的數(shù)據(jù)恢復(fù)過程提供一種系統(tǒng)內(nèi)部處理機(jī)制,采用數(shù)據(jù)壓縮和解壓縮的方法降低帶寬需求,利用CPU資源換取帶寬資源,加速數(shù)據(jù)的恢復(fù)速度。
2.根據(jù)權(quán)利要求1所述一種加速集群系統(tǒng)數(shù)據(jù)恢復(fù)的方法,其特征在于,在數(shù)據(jù)重構(gòu)時(shí),首先將需要恢復(fù)的數(shù)據(jù)塊利用相關(guān)數(shù)據(jù)壓縮算法進(jìn)行壓縮,之后將壓縮后的數(shù)據(jù)發(fā)送到指定的磁盤或者存儲(chǔ)節(jié)點(diǎn)上,并在該存儲(chǔ)節(jié)點(diǎn)上進(jìn)行數(shù)據(jù)解壓縮處理將數(shù)據(jù)恢復(fù)。
3.根據(jù)權(quán)利要求2所述一種加速集群系統(tǒng)數(shù)據(jù)恢復(fù)的方法,其特征在于,所述數(shù)據(jù)壓縮算法采用 zlib、snappy、Izo 或 lz4o
【專利摘要】本發(fā)明公開一種加速集群系統(tǒng)數(shù)據(jù)恢復(fù)的方法,涉及云存儲(chǔ)領(lǐng)域,為集群存儲(chǔ)系統(tǒng)的數(shù)據(jù)恢復(fù)過程提供一種系統(tǒng)內(nèi)部處理機(jī)制,采用數(shù)據(jù)壓縮和解壓縮的方法降低帶寬需求,利用CPU資源換取帶寬資源,加速數(shù)據(jù)的恢復(fù)速度。該方法在集群存儲(chǔ)系統(tǒng)的數(shù)據(jù)恢復(fù)過程中使用數(shù)據(jù)壓縮或解壓縮,極大減小了數(shù)據(jù)重構(gòu)過程對(duì)前端業(yè)務(wù)的影響,顯著提高了數(shù)據(jù)重構(gòu)的速度,加速了集群系統(tǒng)數(shù)據(jù)的恢復(fù)。
【IPC分類】G06F11-14
【公開號(hào)】CN104731676
【申請(qǐng)?zhí)枴緾N201510132062
【發(fā)明人】張?jiān)谫F, 張立強(qiáng)
【申請(qǐng)人】浪潮集團(tuán)有限公司
【公開日】2015年6月24日
【申請(qǐng)日】2015年3月24日