馮美祿 胡樂燕
(1.河南省教育技術(shù)裝備管理中心,河南 鄭州 450004;2.河南省財政廳干部教育中心,河南,鄭州 450004)
一種改進(jìn)的文件級持續(xù)數(shù)據(jù)保護(hù)機制
馮美祿1胡樂燕2
(1.河南省教育技術(shù)裝備管理中心,河南 鄭州 450004;2.河南省財政廳干部教育中心,河南,鄭州 450004)
信息技術(shù)的廣泛應(yīng)用使得數(shù)據(jù)在信息系統(tǒng)中發(fā)揮的作用日益顯現(xiàn),數(shù)據(jù)的丟失或損壞對整個系統(tǒng)造成的損失難以估量。本文充分分析了當(dāng)前持續(xù)數(shù)據(jù)保護(hù)技術(shù)的現(xiàn)狀,立足現(xiàn)有的TRAP-4持續(xù)數(shù)據(jù)保護(hù)思想,提出了一種改進(jìn)的文件級持續(xù)數(shù)據(jù)保護(hù)機制。在虛擬層改進(jìn)了日志生成方式,減輕了系統(tǒng)工作負(fù)載,縮短了數(shù)據(jù)備份與恢復(fù)時間,增強了系統(tǒng)對于核心數(shù)據(jù)的持續(xù)全備份能力。
持續(xù)數(shù)據(jù)保護(hù);F-CDP;日志;TRAP
隨著計算機技術(shù)的飛速發(fā)展和網(wǎng)絡(luò)的廣泛普及,社會信息數(shù)據(jù)進(jìn)入了快速膨脹的時代,人類的學(xué)習(xí)、工作和生活對數(shù)據(jù)的依賴程度越來越高,數(shù)據(jù)丟失或損壞將會嚴(yán)重影響企事業(yè)單位的生存和發(fā)展。持續(xù)數(shù)據(jù)保護(hù)(CDP)通過實時記錄數(shù)據(jù)的改變,使得災(zāi)難發(fā)生后能夠?qū)?shù)據(jù)恢復(fù)到任意時間點。對于一些特殊的部門如銀行、證券、電信等,由于其特殊的數(shù)據(jù)存在形式(以個人賬戶為基本單位),單個賬戶數(shù)據(jù)的備份可能涉及多個數(shù)據(jù)塊,單個數(shù)據(jù)塊中也可能含有多個賬戶數(shù)據(jù)。眾所周知,賬戶數(shù)據(jù)中的信息有相當(dāng)一部分是固定的,進(jìn)行持續(xù)數(shù)據(jù)備份時,無論是以文件為單位還是以塊為單位,都會存在大量的重復(fù)數(shù)據(jù),極大的浪費了存儲空間,本文立足于TRAP-4機制的數(shù)據(jù)保護(hù)思想,以賬戶數(shù)據(jù)為基本的數(shù)據(jù)保護(hù)單位,在邏輯層進(jìn)行增量數(shù)據(jù)的備份,提出了改進(jìn)的文件級持續(xù)數(shù)據(jù)保護(hù)技術(shù)(F-CDP)。
1.1 TRAP-4機制
美國羅德島大學(xué)楊慶教授提出的TRAP-4技術(shù)的工作原理[1]如下:設(shè)某數(shù)據(jù)塊B(x)的原始數(shù)據(jù)為D(0),應(yīng)用程序在時刻T(m)對數(shù)據(jù)D(m-1)有一次寫操作,得到的新數(shù)據(jù)為D(m),則該時刻前后數(shù)據(jù)的異或校驗值為P(m)= D(m-1)⊕D(m),并記錄時間戳為T(m)。TRAP-4按時間戳順序保存這些寫操作時間點的校驗值,形成一個日志鏈{B(x),P(m)、P(m-1)、……、P(0),D(0)}。當(dāng)數(shù)據(jù)塊B(x)需要將數(shù)據(jù)恢復(fù)到T(m)以前的某個時間節(jié)點T(k)時,只需在日志鏈中讀取相應(yīng)的校驗值,依次執(zhí)行下面的公式[3]計算就可完成數(shù)據(jù)恢復(fù):
通過T(k)時刻的數(shù)據(jù)恢復(fù)到T(m)時刻計算公式類似,如下:
TRAP-4的優(yōu)點是通過數(shù)據(jù)的異或值來記錄寫操作,根據(jù)日志鏈可以將數(shù)據(jù)恢復(fù)到任意寫操作時間點,實現(xiàn)方式比較簡便;改進(jìn)的TRAP-4機制[2]定期在日志鏈中插入對應(yīng)時間點的快照數(shù)據(jù),{B(x),P(m)、P(m-1)、……P(n+1)、D(n)、P(n-1)、……、P(1)、P(0),D(0)},有效解決了日志鏈的長時間失效風(fēng)險,提高了機制的安全性,但是還存在以下幾個方面的問題:
1.1.1 寫操作經(jīng)常是針對某個文件或者某項數(shù)據(jù),而文件或數(shù)據(jù)往往存放在許多物理上各自分離的磁盤或數(shù)據(jù)塊上,大量數(shù)據(jù)塊的調(diào)度增加了系統(tǒng)的工作負(fù)擔(dān),多處數(shù)據(jù)塊改動在數(shù)據(jù)恢復(fù)時效率低下。
1.1.2 數(shù)據(jù)備份與恢復(fù)時的異或運算占用了大量的系統(tǒng)資源,降低了系統(tǒng)的服務(wù)效能。
1.1.3 改進(jìn)的TRAP-4機制雖然解決了日志鏈的失效問題,但是,定期進(jìn)行數(shù)據(jù)全備份數(shù)據(jù)需要大量的存儲空間,并且缺少針對重要文件或者核心數(shù)據(jù)進(jìn)行保護(hù)的策略。
1.2文件級CDP思想
基于文件的CDP機制是針對特定的重要文件或數(shù)據(jù)提出的,如銀行賬戶信息、公安部人口資料、軍事作戰(zhàn)地圖、導(dǎo)航數(shù)據(jù)等,這類文件的共同特點:數(shù)據(jù)價值高、數(shù)據(jù)更改范圍有限、每次改變都要求進(jìn)行數(shù)據(jù)全備份、實時性要求高。文件數(shù)據(jù)由一個或多個數(shù)據(jù)塊組成,由于應(yīng)用需求,文件中的部分?jǐn)?shù)據(jù)會經(jīng)常變動。僅僅對其改變的數(shù)據(jù)塊進(jìn)行備份,恢復(fù)數(shù)據(jù)時首先通過塊恢復(fù),然后進(jìn)一步構(gòu)成文件,恢復(fù)速度勢必會影響文件數(shù)據(jù)的實時性;而每次寫操作均對文件進(jìn)行全備份,文件中大量未改變的數(shù)據(jù)勢必會占用相對較大的存儲空間,造成存儲資源的極大浪費。
圖 1 信用卡賬戶信息組成
圖1展示了信用卡賬戶的組成要素,賬戶中除了賬戶金額經(jīng)常變動以外,大部分信息數(shù)據(jù)是未改變或很少變化的,對文件數(shù)據(jù)進(jìn)行全備份過程中,未改變的數(shù)據(jù)被反復(fù)備份,浪費了較大的存儲空間,而重要的賬戶數(shù)據(jù)占用的存儲資源相對有限,需要對這種特殊的需求提出新的應(yīng)對方法。因此,本文提出了改進(jìn)的文件級持續(xù)數(shù)據(jù)保護(hù)技術(shù)(F-CDP)。
F-CDP技術(shù)是在ULVM層設(shè)計與實現(xiàn)的,是塊級CDP技術(shù)的一種演化,組成文件的所有數(shù)據(jù)塊在ULVM層是連續(xù)的,由于文件數(shù)據(jù)在備份過程中大部分?jǐn)?shù)值保持不變,Pn值中大量的“0”是長期存在且位置不變的,如圖2所示,賬戶中的個人信息長期未發(fā)生變化,只有賬戶金額部分發(fā)生改變。
圖 2 個人賬戶數(shù)據(jù)的異或值
2.1 系統(tǒng)架構(gòu)
根據(jù)第二節(jié)中提到的問題,我們的解決方案是通過虛擬技術(shù)在邏輯層實施數(shù)據(jù)保護(hù),利用虛擬技術(shù)將物理上分散存儲的文件數(shù)據(jù)邏輯鏈接成一個整體,從而更有利于數(shù)據(jù)保護(hù)的實現(xiàn),如圖3所示。在文件系統(tǒng)驅(qū)動與邏輯卷管理層(LVM)之間,增加了上層邏輯卷管理驅(qū)動(ULVM),ULVM由指針記錄模塊、數(shù)據(jù)轉(zhuǎn)換模塊和編碼模塊三部分組成,指針記錄模塊設(shè)置了數(shù)據(jù)增加指針Pa(Point addition)、數(shù)據(jù)刪除指針Pd(Point delete)和數(shù)據(jù)更改指針Pc(Point change),分別記錄數(shù)據(jù)增加、刪除、更改時的起始位置;數(shù)據(jù)轉(zhuǎn)換模塊負(fù)責(zé)按照預(yù)定機制對相關(guān)的數(shù)據(jù)進(jìn)行“0”“1”轉(zhuǎn)換,編碼模塊用于對增量數(shù)據(jù)進(jìn)行編碼壓縮。ULVM對上提供數(shù)據(jù)訪問接口和統(tǒng)一的邏輯視圖,對下維護(hù)下級各節(jié)點的邏輯映射關(guān)系。尋址模塊進(jìn)行數(shù)據(jù)物理地址的定向與訪問,實現(xiàn)邏輯塊與物理塊的一一映射。
圖3 系統(tǒng)架構(gòu)
2.2 機制實現(xiàn)
2.2.1 指針記錄模塊
數(shù)據(jù)增加:當(dāng)有新的文件建立或文件中增加新的數(shù)據(jù)時使用Pa,Pa包含起始位Pab(beginning)和結(jié)束位Pae(end)兩部分,分別標(biāo)明數(shù)據(jù)增加的起始位與結(jié)束位,Pab與Pae是一一對應(yīng)的。對于數(shù)據(jù)增加的情況,新增的數(shù)據(jù)保持原有狀態(tài)不變,原有數(shù)據(jù)異或后得到的值全部為“0”,本文設(shè)定Pab為“110”,Pae為“011”,ULVM首先通過數(shù)據(jù)轉(zhuǎn)換模塊將原來的數(shù)據(jù)全部轉(zhuǎn)換為“0”,在數(shù)據(jù)的后面插入指針“110”,用于區(qū)分原有數(shù)據(jù)與新增數(shù)據(jù),然后將新數(shù)據(jù)寫到起始指針后面,最后插入結(jié)束位“011”,數(shù)據(jù)壓縮解壓時只需讀取指針便可對指定的數(shù)據(jù)形態(tài)進(jìn)行逐一恢復(fù)。如圖4所示。
圖4 數(shù)據(jù)增加
數(shù)據(jù)更改:文件中部分?jǐn)?shù)據(jù)發(fā)生改變時使用Pc,如賬戶中的金額變動、地圖坐標(biāo)的更改、導(dǎo)航定位信息的修正等等,在改變的數(shù)據(jù)中插入相應(yīng)的指針起始位Pcb和結(jié)束位Pce,分別標(biāo)明數(shù)據(jù)改變的起始位與結(jié)束位,Pcb與Pce是一一對應(yīng)的,當(dāng)數(shù)據(jù)中有多個部分更改時,在Pcb與Pce后面加n分別標(biāo)明即可。對于數(shù)據(jù)更改的情況,數(shù)據(jù)異或后改變的部分全部為“1”,未改變的部分全部為“0”,由于同一數(shù)據(jù)的一次寫操作可能會涉及多個部分,本文設(shè)定Pcb為“10‘000’01”Pce為“01‘000’10”,中間三個比特位代表“000-111”八個數(shù)字,逐一累加,若一次寫所涉及的修改不超過八處,則通過指針進(jìn)行一一標(biāo)記;若一次寫操作涉及的改變超過九處以上,則對數(shù)據(jù)進(jìn)行一次全備份。F-CDP通過數(shù)據(jù)轉(zhuǎn)換模塊將對應(yīng)的數(shù)據(jù)進(jìn)行轉(zhuǎn)換,在改變的數(shù)據(jù)部分前后各插入相應(yīng)的起始位與結(jié)束位指針,并記錄時間戳,得到的結(jié)果如圖5所示。
圖5 數(shù)據(jù)更改
數(shù)據(jù)刪除:文件中部分?jǐn)?shù)據(jù)刪除時使用該指針Pd,用來標(biāo)明數(shù)據(jù)中刪除的部分,該指針的作用是為了防止由病毒、誤操作、人為破壞等造成的數(shù)據(jù)丟失,將刪除的數(shù)據(jù)保存下來以便需要時恢復(fù),該指針也包括Pdb與Pde兩部分,分別標(biāo)明數(shù)據(jù)刪除部分的起始位與結(jié)束位。數(shù)據(jù)刪除的情況較為簡單,為了有效記錄已刪除的數(shù)據(jù),防止誤操作發(fā)生,本文設(shè)定數(shù)據(jù)刪除指針Pdb與Pde均為“111”,F(xiàn)-CDP通過數(shù)據(jù)轉(zhuǎn)換模塊將未改變的數(shù)據(jù)轉(zhuǎn)換為“0”,在刪除的數(shù)據(jù)部分前后各插入相應(yīng)的起始位與結(jié)束位指針,并記錄時間戳,得到的結(jié)果如圖6所示。
圖6 數(shù)據(jù)刪除
2.2.2 數(shù)據(jù)轉(zhuǎn)換模塊
針對標(biāo)記指針的文件或者數(shù)據(jù)塊,若指針為數(shù)據(jù)增加或刪除,則將指針之外的全部數(shù)據(jù)轉(zhuǎn)換為“0”,指針間的數(shù)據(jù)保持不變;若指針為數(shù)據(jù)更改,則將指針之間的數(shù)據(jù)全部轉(zhuǎn)換為“1”,將指針之外的數(shù)據(jù)轉(zhuǎn)換為“0”。
當(dāng)應(yīng)用對某數(shù)據(jù)進(jìn)行一次數(shù)據(jù)更改寫操作時,數(shù)據(jù)轉(zhuǎn)換算法如下所示:
Algorithm DataTransition 1 Lp=getlenth(P); //獲取指針長度2 Ld=getlenth(data); //獲取數(shù)據(jù)長度3 Lw=getlenth(write); //寫操作涉及的數(shù)據(jù)長度4 k=*Pb; //指針的起始位置5 for(i=1;i<Pb-1;i++)6 mi=0; //遍歷指針前的所有數(shù)據(jù),將其全部置為“0”7 for(i=Pb+LP; i<Pb+Lp+Lw-1; i++)8 mi=1; //遍歷指針之間改變的數(shù)據(jù),將其全部置為“1”9 for(i=Pb+Lp*2+Lw; i<Ld-1; i++)10 mi=0; //遍歷指針之后的所有數(shù)據(jù),將其全部置為“0”11 return mi
數(shù)據(jù)轉(zhuǎn)換模塊的核心思想是將指針之外的數(shù)據(jù)全部轉(zhuǎn)換為“0”,指針之間的數(shù)據(jù)根據(jù)指針的不同,區(qū)別對待,對于數(shù)據(jù)更改的情況,指針之間的數(shù)據(jù)全部轉(zhuǎn)換為“1”,對于其他兩種情況,指針之間的數(shù)據(jù)保持不變。當(dāng)同一數(shù)據(jù)的更改涉及多個部分時,可依次類推。
2.2.3 編碼模塊
由于P(n)中包含了大量連續(xù)的“0”和“1”,在進(jìn)行數(shù)據(jù)保存時,只需記錄指針之間有多少位“1”,指針之外有多少位“0”就能完整保存數(shù)據(jù)的詳細(xì)信息,而對于類似的數(shù)據(jù)形態(tài),本文提出了一種新的數(shù)據(jù)編碼方式“表程編碼”。
設(shè)計思想:假設(shè)在Pcb與Pce之間有Xbit的“1”,定義壓縮比特流1所用的數(shù)據(jù)位為L,壓縮后得到的值為C,根據(jù)二進(jìn)制算法計算出L=|log2X|+1,其中||為取整運算。利用L位的0、1組合便可壓縮保存Xbit的數(shù)據(jù)信息。例如X=1048573,即Pcb與Pce之間有1048573個連續(xù)排列的“1”,利用公式得出L=|log21048573|+1=19+1=20,即用 20位的“0”“1”數(shù)字“11111111111111111101”表示了1048573個連續(xù)的“1”,即C= 11111111111111111101。同樣的原理應(yīng)用在未改變的部分,其值全部為“0”,編碼結(jié)果與改變的部分相同。由于每次編碼過程中X的長度不同,在獲取壓縮值C的過程中,系統(tǒng)每次都要進(jìn)行二進(jìn)制樹的遍歷,遍歷過程耗費了大量的系統(tǒng)資源,針對這種情況,本文提出了“表程編碼”算法。
表程編碼:針對大小為4KB的數(shù)據(jù)塊,其數(shù)據(jù)改變量是有限的,也就是指X的范圍相對可控:1≤X≤4×8×1024,如果系統(tǒng)事先計算出X的所有取值對應(yīng)的編碼值,記錄在數(shù)據(jù)表中,通過讀取數(shù)據(jù)轉(zhuǎn)換模塊得到的X長度,然后查找表中對應(yīng)的編碼值,就能節(jié)省系統(tǒng)對每個X進(jìn)行計算所占用的資源,編碼表如表1所示。
表 1 編碼值遍歷表
編碼值遍歷表計算出每個X值對應(yīng)的壓縮值C,每20組數(shù)據(jù)為一張子表,壓縮解壓模塊從數(shù)據(jù)轉(zhuǎn)換模塊獲取到X的值后,首先通過公式Table=|X÷20|+1計算出C值在哪張子表中,然后取X÷20的余數(shù)找到C的具體數(shù)值。
若文件數(shù)據(jù)大于4KB對于數(shù)據(jù)長期未改變的部分,通過公式L=|log2X|+1將記錄數(shù)據(jù)信息所需全部“0”的比特位計算出來,通過“0”“1”組合得到表示數(shù)據(jù)“0”位數(shù)的信息,該組合是固定值,一次計算可以應(yīng)用在文件數(shù)據(jù)日后所有的記錄中,在賬戶金額部分插入指針后,鏈接在該固定值之后,生成新的日志信息,為該文件維護(hù)一個日志鏈,并定期進(jìn)行文件的全備份。
2.3 ULVM工作流程
客戶端的I/O命令先傳送到ULVM,ULVM判別該命令是讀或者是寫。若是讀,ULVM直接返回相應(yīng)的數(shù)據(jù),直接授權(quán)客戶端通過網(wǎng)絡(luò)訪問存儲池的相關(guān)數(shù)據(jù);若是寫,則由ULVM統(tǒng)一處理,首先將相應(yīng)的數(shù)據(jù)調(diào)入內(nèi)存,由指針模塊記錄數(shù)據(jù)改變部分的位置,然后通過數(shù)據(jù)轉(zhuǎn)換模塊,將未改變的部分設(shè)為“0”,改變的部分設(shè)為“1”,經(jīng)過壓縮解壓模塊對數(shù)據(jù)進(jìn)行壓縮生成Pn值,然后把Pn值寫到相應(yīng)的日志鏈中,具體過程如圖7所示。
圖7 ULVM命令解析流程
2.4 F-CDP的性能分析
無論持續(xù)數(shù)據(jù)保護(hù)機制在哪個層次實現(xiàn)或者是應(yīng)用技術(shù)有多大提高,對于新增加和已刪除的數(shù)據(jù),任何數(shù)據(jù)保護(hù)機制都要完成最基礎(chǔ)的工作:備份增量數(shù)據(jù)或待刪除數(shù)據(jù),這部分?jǐn)?shù)據(jù)的備份工作占用的系統(tǒng)資源是無法減少的,性能提升的空間相對有限。本文針對數(shù)據(jù)的改變部分,將F-CDP與TRAP-4的性能進(jìn)行比較,設(shè)定原型系統(tǒng)的數(shù)據(jù)塊大小為4Kb,系統(tǒng)中有10TB的工作數(shù)據(jù),每天數(shù)據(jù)的改變量約20%,每周做一次全備份。
若1M的文件每天同樣有20%的改變,對于理想情況而言,也就是近52個數(shù)據(jù)塊發(fā)生了改變,采用TRAP-4機制,系統(tǒng)最少保留52個數(shù)據(jù)塊的P(m)值,利用游程編碼進(jìn)行數(shù)據(jù)壓縮,系統(tǒng)要占用52×log212bit的空間,而F-CDP機制最多占用52×log220bit的空間,最少僅占用log220bit的空間,顯然,F(xiàn)-CDP并沒有明顯增加系統(tǒng)的工作負(fù)載,但是該機制能夠?qū)χ匾募蚝诵臄?shù)據(jù)做持續(xù)的全備份,極大地保證了核心數(shù)據(jù)的安全性與可用性,提高了系統(tǒng)數(shù)據(jù)的可靠性。而對于特殊情況,256個數(shù)據(jù)塊各改變了20%,且改變僅為一次寫操作,F(xiàn)-CDP不但節(jié)省了備份空間,而且極大提高了數(shù)據(jù)的備份效率,尤其適合銀行、證券等以小文件、實時性為特點的數(shù)據(jù)系統(tǒng)。
為了檢驗F-CDP的數(shù)據(jù)備份與恢復(fù)效率,對F-CDP進(jìn)行實驗,并與TRAP-4機制得出的結(jié)果進(jìn)行比較。
實驗環(huán)境:主機CPU為2.50GHz,RAM為1G,Ethernet adapt?ers為RTL8139,Operating System為Linux Fedora 15,內(nèi)核為2.6.40版,數(shù)據(jù)庫為Demon 5.0。采用TPC-C Benchmark模擬在線事務(wù)處理,運行半個小時。借鑒參考文獻(xiàn)[1]中的實驗方法及實現(xiàn)參考程序,做了相應(yīng)的模擬實驗。
3.1 數(shù)據(jù)壓縮效率實驗
分別取大小為1、10、100、1000、10000(M)的文件數(shù)據(jù)(對以上數(shù)據(jù)進(jìn)行一次寫操作,數(shù)據(jù)改變量小于1%),分別采用COW、TRAP-4、F-CDP的三種數(shù)據(jù)備份方式將更新的數(shù)據(jù)復(fù)制到備份中心,得到的網(wǎng)絡(luò)數(shù)據(jù)流量如圖8所示。
圖 8 數(shù)據(jù)壓縮效率對比
對于大小不同的文件數(shù)據(jù),分別采用COW、TRAP-4和F-CDP技術(shù)對其進(jìn)行數(shù)據(jù)備份,COW技術(shù)直接將數(shù)據(jù)復(fù)制到備份中心,數(shù)據(jù)大小不變,占用的網(wǎng)絡(luò)帶寬與數(shù)據(jù)量相關(guān);TRAP-4技術(shù)通過異或器將數(shù)據(jù)進(jìn)行了異或并且壓縮,數(shù)據(jù)壓縮后數(shù)據(jù)量明顯變小,約為原數(shù)據(jù)的10%~30%;F-CDP技術(shù)采用表程編碼進(jìn)行數(shù)據(jù)壓縮,數(shù)據(jù)壓縮后大小一般在KB范圍,網(wǎng)絡(luò)傳輸過程中,數(shù)據(jù)量明顯較小。
3.2 備份還原實驗
分別取大小為0.1、0.2、0.4、0.8、1.6、3.2、6.4、12.8(M)的文件數(shù)據(jù)(區(qū)域地圖數(shù)據(jù)),對以上數(shù)據(jù)進(jìn)行一次寫操作,數(shù)據(jù)改變量小于1%,實驗分別采用COW、TRAP-4、F-CDP的三種數(shù)據(jù)備份方式,對文件數(shù)據(jù)進(jìn)行寫操作增量數(shù)據(jù)備份實驗,實驗得到的備份時間數(shù)據(jù)如圖9所示:
圖 9 數(shù)據(jù)備份對比
在100KB平均速率的網(wǎng)絡(luò)中,數(shù)據(jù)較小時(小于1MB),COW由于直接將數(shù)據(jù)復(fù)制到異地備份中心,沒有經(jīng)歷TRAP-4的數(shù)據(jù)異或和壓縮及F-CDP的查表壓縮過程,備份時間相對較短,TRAP-4與F-CDP的備份時間相差不大。而數(shù)據(jù)較大時(1MB以上),隨著數(shù)據(jù)的增大,網(wǎng)絡(luò)中傳輸數(shù)據(jù)所用的時間明顯占據(jù)了備份時長的主體,COW技術(shù)的備份時間呈線性增長,TRAP-4機制相比COW來講,提高了一定的傳輸效率和備份效率,而F-CDP技術(shù)中,查表壓縮的時間沒有明顯增加,但是數(shù)據(jù)壓縮的效率明顯提高,網(wǎng)絡(luò)傳輸?shù)臄?shù)據(jù)量增長不大,明顯提高了數(shù)據(jù)的備份效率。
實驗結(jié)果表明,基于虛擬存儲的異地CDP技術(shù)具有生成增量數(shù)據(jù)快、壓縮效率高、占用網(wǎng)絡(luò)帶寬小、存儲空間利用率高的優(yōu)點,雖然數(shù)據(jù)還原時要占用較長的時間進(jìn)行數(shù)據(jù)解壓,且數(shù)據(jù)壓縮后無法對外提供訪問工作,但是該機制的設(shè)計理念就是能夠最大限度地保存數(shù)據(jù)版本、容忍重大災(zāi)難,面對重大災(zāi)難造成的損失,數(shù)據(jù)恢復(fù)期間所造成的損失幾乎可以忽略不計。總而言之,F(xiàn)-CDP技術(shù)較好地解決了數(shù)據(jù)異地容災(zāi)的問題。
F-CDP機制是針對特定工作場景應(yīng)運而生的,既對重要文件數(shù)據(jù)進(jìn)行了實時數(shù)據(jù)全備份,又沒有顯著增加信息系統(tǒng)的計算和存儲資源,能夠?qū)?shù)據(jù)恢復(fù)到任意時刻,較好地解決了金融、證券、軍事數(shù)據(jù)等核心信息的備份存檔問題,提升了信息系統(tǒng)的容災(zāi)能力,該機制特別適合于文件數(shù)據(jù)較大、改動部分較少且改變位置相對固定的應(yīng)用場景。
持續(xù)數(shù)據(jù)保護(hù)與系統(tǒng)負(fù)載是一對矛盾的平衡體,如何最大限度地保護(hù)數(shù)據(jù)、最低程度的增加系統(tǒng)負(fù)載是持續(xù)數(shù)據(jù)保護(hù)技術(shù)的發(fā)展方向,本文在TRAP-4的基礎(chǔ)上,針對銀行、證券等特定的文件數(shù)據(jù)格式,提出了改進(jìn)的文件級的持續(xù)數(shù)據(jù)保護(hù)技術(shù)研究,一定程度上增強了系統(tǒng)的工作效能,提高了數(shù)據(jù)保護(hù)能力。
[1]Yang Q,Xiao W,Ren J.TRAP-Array:A disk array architecture providing timely recovery to any point-in-time[C]// Proc of the Int Sytnp on Computer Architecture.New York:ACM,2006.
[2]李旭,謝長生,楊靖等.一種改進(jìn)的塊級連續(xù)數(shù)據(jù)保護(hù)機制[J].計算機研究與發(fā)展,2009(5).
[3]Kimberly Keeton,Cipriano Santos,Dirk Beyer,etc. Designing for Disasters[C].Proceedings of the 3th USENIX Conference on File and Storage Technologies,San Francisco,CA,USA.USENIX Association.2004.03.
[4]王晶.強隔離操作系統(tǒng)的設(shè)備虛擬化[D].合肥:中國科學(xué)技術(shù)大學(xué),2009.
[5]Yonghong Sheng,Dongsheng Wang,JinYang He et al. TH-CDP:An Efficient Block Level Continuous Data Protection System[C].In:2009 IEEE International Conference on Networking,Architecture,and Storage.2009:395-404.
[6]Deng Yibing,Chen Shanguang,Hu Wei,Gao Feng,Liu Chuanyi.A Novel Block-level Continuous Data Protection System [C].IEEEComputer Society.2010:242-247.
TP309
A
1671-0037(2014)10-70-4
馮美祿(1976.8-),本科,工程師,研究方向:電子產(chǎn)品。