專利名稱:數(shù)據(jù)恢復(fù)方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計算機領(lǐng)域,尤其涉及一種數(shù)據(jù)恢復(fù)方法。
背景技術(shù):
由于計算機具有高速的數(shù)據(jù)處理能力以及大容量的存儲能力,因此計算機廣泛應(yīng)用于生產(chǎn)生活的各個領(lǐng)域,如通信、交通、銀行等,并且,很多計算機系統(tǒng)需要處于連續(xù)運行的狀態(tài),以便保證整個系統(tǒng)的正常工作。例如電信部門的交換機服務(wù)器一旦停機,將會造成很多用戶終端無法正常通訊、銀行卡組織的信息處理系統(tǒng)一旦停機,也會造成大量的持卡人、商戶無法進行銀行卡業(yè)務(wù),由此給用戶帶來不便,因此需要現(xiàn)有的計算機系統(tǒng)具有較好的系統(tǒng)安全功能,特別是當主處理器出現(xiàn)故障時,具有較高的系統(tǒng)切換能力。
另外,為了防止該些計算機系統(tǒng)上重要數(shù)據(jù)的丟失,需要對重要數(shù)據(jù)進行備份,以便在出現(xiàn)故障時能夠及時恢復(fù)該些重要數(shù)據(jù)。比如,對于一個以電子商務(wù)為經(jīng)營手段的企業(yè)來講,網(wǎng)絡(luò)數(shù)據(jù)是企業(yè)賴以生存的基礎(chǔ),可以說就是整個企業(yè)的生命。這些數(shù)據(jù)一旦損壞或丟失,都將對企業(yè)造成不可估量的損失。對于像電信、金融、證券等行業(yè),那更是如此。由此,人們開始關(guān)注如何來確保數(shù)據(jù)的完好,而數(shù)據(jù)備份則是唯一的解決方案?,F(xiàn)有的數(shù)據(jù)備份方法主要采用以下三種技術(shù)冷備份技術(shù)、日志技術(shù)和RAID(RedundantArray of Inexpensive Disks,廉價磁盤冗余陣列)技術(shù)。
冷備份技術(shù)的主要原理是將原始數(shù)據(jù)完全復(fù)制一份并保存起來,恢復(fù)時將事先備份的數(shù)據(jù)再復(fù)制回去。這種方法比較簡單,適合數(shù)據(jù)量比較小的場合,當數(shù)據(jù)量比較大的時候,需要大量的存儲空間進行保存,并且備份數(shù)據(jù)過程和恢復(fù)數(shù)據(jù)過程會占用大量的主處理器的處理時間,影響整個系統(tǒng)的業(yè)務(wù)處理能力,甚至造成整個系統(tǒng)的業(yè)務(wù)中斷。
日志技術(shù)是以大型關(guān)系型數(shù)據(jù)庫為代表,例如ORACLE所采用的一種增量備份技術(shù)。該日志技術(shù)的基本原理是取原始數(shù)據(jù)在某一時刻的冷備份數(shù)據(jù)為起點(又稱為檢查點,CHCEKPOINT),將每次變化的數(shù)據(jù)記錄在日志文件中。當原系統(tǒng)發(fā)生損壞時,取回冷備份數(shù)據(jù),并重做日志(REDO),當日志做完后,數(shù)據(jù)即恢復(fù)到系統(tǒng)發(fā)生故障的時刻。利用日志技術(shù)進行數(shù)據(jù)備份/恢復(fù)占用的存儲空間遠遠小于利用冷備份技術(shù)進行數(shù)據(jù)備份/恢復(fù)所占用的存儲空間。但是,利用日志技術(shù)進行數(shù)據(jù)恢復(fù),每一日志的關(guān)系就像鏈子一樣,一環(huán)套一套,其中一個日志發(fā)生故障,將會導(dǎo)致數(shù)據(jù)不容易恢復(fù)。另外,系統(tǒng)發(fā)生損壞需要進行數(shù)據(jù)恢復(fù)時,通常也需要暫停業(yè)務(wù)或影響業(yè)務(wù)的處理能力,不能完全滿足不影響業(yè)務(wù)處理能力的基礎(chǔ)上進行數(shù)據(jù)恢復(fù)的要求。
RAID技術(shù)是一種使用硬件方法的實現(xiàn)的數(shù)據(jù)冗余技術(shù)。以RAID1鏡像技術(shù)為例,其同時使用兩塊硬盤存儲完全相同的數(shù)據(jù),當一塊硬盤發(fā)生故障時,另一塊硬盤可以接管當前磁盤,從而到達數(shù)據(jù)安全的目的。但是,利用RAID技術(shù)進行數(shù)據(jù)恢復(fù)時,當整個計算機系統(tǒng)的主處理器損壞,例如主處理器的主板、或CPU發(fā)生故障時,整個計算機系統(tǒng)也將無法進行業(yè)務(wù)處理,不能實現(xiàn)不停機處理業(yè)務(wù)的目的。
發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種數(shù)據(jù)恢復(fù)方法,以解決現(xiàn)有技術(shù)中不能滿足不中斷系統(tǒng)業(yè)務(wù)的情況下進行數(shù)據(jù)恢復(fù)的技術(shù)問題。
為解決上述問題,本發(fā)明公開了一種數(shù)據(jù)恢復(fù)方法,包括備份過程和恢復(fù)過程,其中(一)備份過程
(1)主計算機將需要備份的文件分割成若干數(shù)據(jù)塊,并將所述文件的數(shù)據(jù)塊同時保存在至少一臺備份計算機上;(2)當所述文件的數(shù)據(jù)塊的數(shù)據(jù)發(fā)生變化后,主計算機將所述發(fā)生數(shù)據(jù)變化的數(shù)據(jù)塊發(fā)送至所述備份計算機上進行備份;(二)恢復(fù)過程(3)當檢測到主計算機的數(shù)據(jù)損壞時,確定損壞的數(shù)據(jù)塊,并從所述備份計算機中獲得所述備份的數(shù)據(jù)塊進行數(shù)據(jù)恢復(fù)。
步驟(1)主計算機是將所述文件分割成固定大小的數(shù)據(jù)塊。每一數(shù)據(jù)塊包括有效長度字段、數(shù)據(jù)塊相關(guān)信息字段、字段CRC校驗碼、數(shù)據(jù)部分CRC校驗碼和數(shù)據(jù)部分。
步驟(3)具體為(31)主計算機校驗每一數(shù)據(jù)塊的字段CRC校驗碼、數(shù)據(jù)部分CRC校驗碼,若字段CRC校驗碼錯誤,則進行步驟(32),若數(shù)據(jù)部分CRC校驗碼錯誤,則進行步驟(33);(32)依據(jù)備份計算機中獲得的對應(yīng)數(shù)據(jù)塊的有效長度字段和數(shù)據(jù)塊相關(guān)信息字段重置主計算機中所述數(shù)據(jù)塊的有效長度字段、數(shù)據(jù)塊相關(guān)信息字段;(33)依據(jù)備份計算機中獲得的對應(yīng)數(shù)據(jù)塊的數(shù)據(jù)部分重置主計算機中所述數(shù)據(jù)塊的數(shù)據(jù)部分。
步驟(3)中當檢測到主計算機的數(shù)據(jù)損壞時進一步為主計算機在讀取數(shù)據(jù)過程中發(fā)現(xiàn)錯誤。
本發(fā)明還包括(4)當主計算機發(fā)生故障無法運行時,選擇其中一備份計算機設(shè)置為新的主計算機完成系統(tǒng)切換。備份計算機是通過不斷測試主計算機是否正常工作來檢測主計算機是否發(fā)生故障無法運行。
本發(fā)明提供了另一種數(shù)據(jù)恢復(fù)方法,還包括
(一)備份過程(1)主計算機將需要備份的文件分割成若干數(shù)據(jù)塊,并將所述文件的數(shù)據(jù)塊同時保存在至少一臺備份計算機上;(2)當所述文件的數(shù)據(jù)塊的數(shù)據(jù)發(fā)生變化后,主計算機將所述發(fā)生數(shù)據(jù)變化的數(shù)據(jù)塊發(fā)送至所述備份計算機上進行備份;(二)恢復(fù)過程(3)當主計算機發(fā)生故障無法運行時,選擇其中一備份計算機設(shè)置為新的主計算機。
與現(xiàn)有技術(shù)相比,本發(fā)明具有以下優(yōu)點本發(fā)明數(shù)據(jù)恢復(fù)方法只在讀取數(shù)據(jù)發(fā)生錯誤時才執(zhí)行恢復(fù)操作,這個過程對高層的應(yīng)用軟件是透明的,不需要中斷業(yè)務(wù)的處理,而且對主計算機的處理能力影響很小。
如果數(shù)據(jù)損壞的范圍比較小,本發(fā)明的恢復(fù)開銷會小到可以忽略的程度。由于大多數(shù)的故障特點都是損壞部分數(shù)據(jù),除非發(fā)生火災(zāi)、地震等到特大災(zāi)害,因此本發(fā)明的恢復(fù)數(shù)據(jù)的效果非常好。并且,本發(fā)明的備份和恢復(fù)都可設(shè)定為自動完成,無需人工干預(yù)。
圖1是實現(xiàn)數(shù)據(jù)恢復(fù)的本發(fā)明的計算機系統(tǒng)的原理結(jié)構(gòu)示意圖;圖2是本發(fā)明的一種數(shù)據(jù)恢復(fù)方法的流程圖;圖3是數(shù)據(jù)塊的一種結(jié)構(gòu)示意圖;圖4是本發(fā)明的另一種數(shù)據(jù)恢復(fù)方法的流程圖。
具體實施例方式
以下結(jié)合附圖,具體說明本發(fā)明。
為了實現(xiàn)在不停止業(yè)務(wù)的前提下實現(xiàn)數(shù)據(jù)恢復(fù),本發(fā)明計算機系統(tǒng)中設(shè)置主計算機和至少一臺備份計算機。主計算機可以是主處理器,也可以專用于數(shù)據(jù)備份的計算機。請參照圖1,其為實現(xiàn)數(shù)據(jù)恢復(fù)的本發(fā)明的計算機系統(tǒng)的原理結(jié)構(gòu)示意圖。它包括主計算機11和若干備份計算機12。主計算機可以通過專線連接備份計算機12,也可以通過網(wǎng)絡(luò)(如因特網(wǎng))連接備份計算機12。主計算機11和備份計算機12可以位于同一地方,也可以位于異地。但是網(wǎng)速和網(wǎng)絡(luò)質(zhì)量會直接影響后續(xù)數(shù)據(jù)恢復(fù)的質(zhì)量,為此主計算機11和備份計算機12最佳的連接方式是通過專線連接。
請參閱圖2,其為本發(fā)明的一種數(shù)據(jù)恢復(fù)方法的流程圖。它包括發(fā)生故障之前的備份過程和發(fā)生故障后的恢復(fù)過程。
(一)備份過程S110主計算機將需要備份的文件分割成若干數(shù)據(jù)塊,并將所述文件的數(shù)據(jù)塊同時保存在至少一臺備份計算機上;S120當所述文件的數(shù)據(jù)塊的數(shù)據(jù)發(fā)生變化后,主計算機將所述發(fā)生數(shù)據(jù)變化的數(shù)據(jù)塊發(fā)送至所述備份計算機上進行備份;(二)恢復(fù)過程S130當檢測到主計算機的數(shù)據(jù)損壞時,確定損壞的數(shù)據(jù)塊,并從所述備份計算機中獲得所述備份的數(shù)據(jù)塊進行數(shù)據(jù)恢復(fù)。以下具體介紹每一步驟。
一、步驟110主計算機將需要備份的文件分割成若干數(shù)據(jù)塊。為了便于管理,可以將文件分割成固定大小的數(shù)據(jù)塊。當然,本發(fā)明并非局限于將文件以固定大小的方式分割成若干數(shù)據(jù)塊,也可以是其它的分割方式。
同時,考慮到后續(xù)發(fā)生變化的數(shù)據(jù)塊需要進行備份,為了提高數(shù)據(jù)備份的效率,劃分的數(shù)據(jù)塊越小越好。但是,當一個文件的數(shù)據(jù)塊數(shù)量很多時,大大提高了文件管理所花費的時間及占用大量主計算機的處理資源。為此,主計算機較佳劃分的數(shù)據(jù)塊大小為2k~4k。
請參閱圖3,其為數(shù)據(jù)塊的一種結(jié)構(gòu)示意圖。每一數(shù)據(jù)塊包括有效長度(Validate Size)字段、數(shù)據(jù)塊相關(guān)信息(other Info)字段、字段CRC校驗碼(fieldCRC)、數(shù)據(jù)部分CRC校驗碼(Data CRC)和數(shù)據(jù)部分(Data)。其中,有效長度字段記錄該數(shù)據(jù)塊實現(xiàn)有效長度。數(shù)據(jù)塊相關(guān)信息字段記錄和該數(shù)據(jù)塊有關(guān)的其它信息,如數(shù)據(jù)塊產(chǎn)生時間、該數(shù)據(jù)塊所屬文件信息、該數(shù)據(jù)塊在文件中的位置信息等。字段CRC校驗碼是包括有效長度字段、數(shù)據(jù)塊相關(guān)信息在內(nèi)的字段數(shù)據(jù)的CRC校驗碼。數(shù)據(jù)部分用于存儲該數(shù)據(jù)塊的數(shù)據(jù)部分。數(shù)據(jù)部分CRC校驗碼是該數(shù)據(jù)部分的CRC校驗碼。
數(shù)據(jù)塊的結(jié)構(gòu)不僅局限于此,該數(shù)據(jù)塊可以定義為其它結(jié)構(gòu)。如數(shù)據(jù)塊包括數(shù)據(jù)部分及相關(guān)信息部分。其中數(shù)據(jù)部分用于存儲數(shù)據(jù),相關(guān)信息部分用于告知該數(shù)據(jù)塊所屬文件信息、該數(shù)據(jù)塊在文件的位置信息、數(shù)據(jù)塊ID號等。
主計算機可以將需要備份的數(shù)據(jù)塊同時備份在多臺備份計算機上。
二、步驟S120當所述文件的數(shù)據(jù)塊的數(shù)據(jù)發(fā)生變化后,主計算機將所述發(fā)生數(shù)據(jù)變化的數(shù)據(jù)塊發(fā)送至所述備份計算機上進行備份。
系統(tǒng)可以通過定期檢測每一文件的數(shù)據(jù)來獲知文件的數(shù)據(jù)塊是否發(fā)生變化,系統(tǒng)也可以事件觸發(fā)式檢測文件中的數(shù)據(jù),一旦發(fā)現(xiàn)文件的數(shù)據(jù)發(fā)生變化,則觸發(fā)備份步驟。比如,當主計算機檢測到對文件實施了某些操作(如修改文件、更新文件等)后,主計算機立即進行該文件的數(shù)據(jù)的檢測,判斷是否有數(shù)據(jù)塊發(fā)生變化。
當有數(shù)據(jù)塊發(fā)生變化時,可以以文件為單位將該文件中所有數(shù)據(jù)發(fā)生變化的數(shù)據(jù)塊信息由主計算機發(fā)送至所有備份計算機。備份計算機根據(jù)接收到的數(shù)據(jù)塊信息更新預(yù)先保存的數(shù)據(jù)塊數(shù)據(jù)。
為了提高系統(tǒng)的穩(wěn)定性,也可以設(shè)置多臺備份計算機。當有數(shù)據(jù)塊發(fā)生變化時,主計算機將該些數(shù)據(jù)塊數(shù)據(jù)發(fā)送至每一備份計算機進行備份。
三、步驟S130當檢測到主計算機的數(shù)據(jù)損壞時,確定損壞的數(shù)據(jù)塊,并從所述備份計算機中獲得所述備份的數(shù)據(jù)塊進行數(shù)據(jù)恢復(fù)。
由于各種原因,如大面積斷電等造成主計算機的數(shù)據(jù)損壞。對于不能中斷運行的計算機系統(tǒng)來說,快速恢復(fù)數(shù)據(jù)是當務(wù)之急。
步驟S130可以由以下子步驟具體實現(xiàn)(31)主計算機校驗每一數(shù)據(jù)塊的字段CRC校驗碼、數(shù)據(jù)部分CRC校驗碼,若字段CRC校驗碼錯誤,則進行步驟(32),若數(shù)據(jù)部分CRC校驗碼錯誤,則進行步驟(33);(32)依據(jù)備份計算機中獲得的對應(yīng)數(shù)據(jù)塊的有效長度字段和數(shù)據(jù)塊相關(guān)信息字段重置所述數(shù)據(jù)塊的有效長度字段、數(shù)據(jù)塊相關(guān)信息字段;(33)依據(jù)備份計算機中獲得的對應(yīng)數(shù)據(jù)塊的數(shù)據(jù)部分重置所述數(shù)據(jù)塊的數(shù)據(jù)部分。
即,在DATA CRC正確而Field CRC錯誤的情況下,只需要從其中一備份計算機中獲得Field數(shù)據(jù)(有效長度字段數(shù)據(jù)和數(shù)據(jù)塊相關(guān)信息字段數(shù)據(jù))即可。在DATA CRC錯誤而Field CRC正確的情況下,只需要從其中一備份計算機中獲得DATA數(shù)據(jù)即可。當上述兩者的校驗碼都錯誤的情況下,需要從其中一備份計算中獲得包括Field數(shù)據(jù)和DATA數(shù)據(jù)之內(nèi)的數(shù)據(jù)塊所有數(shù)據(jù)。
CRC校驗碼能夠快速并準確判斷出數(shù)據(jù)塊的數(shù)據(jù)是否發(fā)生損壞,以便盡快從備份計算機中恢復(fù)該數(shù)據(jù)塊的數(shù)據(jù)。
步驟S130除了通過CRC校驗碼來判斷出數(shù)據(jù)塊的數(shù)據(jù)是否發(fā)生損壞外,還可以通過其它方式,本發(fā)明并非局限于此。
為了減少主計算機和備份計算機上數(shù)據(jù)的交互,可以以文件為單位進行數(shù)據(jù)恢復(fù)。比如,主計算機上以文件為單位檢測該文件中所有數(shù)據(jù)塊的數(shù)據(jù)是否存在損壞,若存在損壞,則記錄對應(yīng)的數(shù)據(jù)塊ID信息。主計算機將該文件中有數(shù)據(jù)損壞的所有數(shù)據(jù)塊ID信息發(fā)送至其中一備份計算機,從中獲得該些數(shù)據(jù)塊的數(shù)據(jù)來更新主計算機中該文件的相應(yīng)數(shù)據(jù)塊的數(shù)據(jù)。
為了提高主計算機和備份計算機上數(shù)據(jù)交互的可靠性和快速性,主計算機和備份計算機上的數(shù)據(jù)最好通過專線進行傳送。
除了主計算機上的數(shù)據(jù)發(fā)生損壞需要恢復(fù)外,計算機系統(tǒng)還存在另一種情況下重要數(shù)據(jù)的恢復(fù)當主計算機發(fā)生故障,無法運行時,如主計算機的CPU發(fā)生故障,此時若不完成系統(tǒng)切換,保障數(shù)據(jù)的連續(xù)性及保證業(yè)務(wù)的不中斷性,后果不堪設(shè)想。本發(fā)明是選擇其中一備份計算機設(shè)置為新的主計算機完成系統(tǒng)切換。備份計算機是通過不斷測試主計算機是否正常工作來檢測主計算機是否發(fā)生故障無法運行。
比如,備份計算機定期向主計算機發(fā)送檢測數(shù)據(jù)包,當主計算機正常工作的情況下,會返回一響應(yīng)數(shù)據(jù)包。當備份計算機在預(yù)設(shè)時間內(nèi)接收到該響應(yīng)數(shù)據(jù)包,則認為主計算機目前處于正常工作狀態(tài)下,備份計算機在若干個檢測周期內(nèi)未收到響應(yīng)數(shù)據(jù)包,則認定主計算機發(fā)生故障。備份計算機將自身的IP地址設(shè)定為原有主計算機的IP地址,從而實現(xiàn)系統(tǒng)切換,進而完成數(shù)據(jù)恢復(fù)。
本發(fā)明數(shù)據(jù)恢復(fù)方法只在讀取數(shù)據(jù)發(fā)生錯誤時才執(zhí)行恢復(fù)操作,這個過程對高層的應(yīng)用軟件是透明的,如果數(shù)據(jù)損壞的范圍比較小,本發(fā)明的恢復(fù)開銷會小到可以忽略的程度。由于大多數(shù)的故障特點都是損壞部分數(shù)據(jù),除非發(fā)生火災(zāi)、地震等到特大災(zāi)害,因此本發(fā)明的恢復(fù)數(shù)據(jù)的效果非常好。并且,本發(fā)明的備份和恢復(fù)都可設(shè)定為自動完成,無需人工干預(yù)。
請參閱圖4,其為本發(fā)明的另一種數(shù)據(jù)恢復(fù)方法,它包括(一)備份過程S210主計算機將需要備份的文件分割成若干數(shù)據(jù)塊,并將所述文件的數(shù)據(jù)塊同時保存在至少一臺備份計算機上;S220當所述文件的數(shù)據(jù)塊的數(shù)據(jù)發(fā)生變化后,主計算機將所述發(fā)生數(shù)據(jù)變化的數(shù)據(jù)塊發(fā)送至所述備份計算機上進行備份;(二)恢復(fù)過程S230當主計算機發(fā)生故障無法運行時,選擇其中一備份計算機設(shè)置為新的主計算機。
上述步驟S210和S220和公開的S110、S120大體相同,在此就不再贅述了。
本發(fā)明的數(shù)據(jù)恢復(fù)是指計算機系統(tǒng)在另一種情況下重要數(shù)據(jù)的恢復(fù)當主計算機發(fā)生故障,無法運行時,如主計算機的CPU發(fā)生故障,此時若不完成系統(tǒng)切換,保障數(shù)據(jù)的連續(xù)性及保證業(yè)務(wù)的不中斷性,后果不堪設(shè)想。本發(fā)明是選擇其中一備份計算機設(shè)置為新的主計算機完成系統(tǒng)切換。備份計算機是通過不斷測試主計算機是否正常工作來檢測主計算機是否發(fā)生故障無法運行。
比如,備份計算機定期向主計算機發(fā)送檢測數(shù)據(jù)包,當主計算機正常工作的情況下,會返回一響應(yīng)數(shù)據(jù)包。當備份計算機在預(yù)設(shè)時間內(nèi)接收到該響應(yīng)數(shù)據(jù)包,則認為主計算機目前處于正常工作狀態(tài)下,備份計算機在若干個檢測周期內(nèi)未收到響應(yīng)數(shù)據(jù)包,則認定主計算機發(fā)生故障。備份計算機將自身的IP地址設(shè)定為原有主計算機的IP地址,從而實現(xiàn)系統(tǒng)切換,進而完成數(shù)據(jù)恢復(fù)。
當備份計算機有多臺時,可以預(yù)先設(shè)定備份計算機的優(yōu)先級。優(yōu)先級最高的正常備份計算機使用“心跳技術(shù)”檢測主計算機是否正常工作。
以上公開的僅為本發(fā)明的幾個具體實施例,但本發(fā)明并非局限于此,任何本領(lǐng)域的技術(shù)人員能思之的變化,都應(yīng)落在本發(fā)明的保護范圍內(nèi)。
權(quán)利要求
1.一種數(shù)據(jù)恢復(fù)方法,其特征在于,包括備份過程和恢復(fù)過程,其中(一)備份過程(1)主計算機將需要備份的文件分割成若干數(shù)據(jù)塊,并將所述文件的數(shù)據(jù)塊同時保存在至少一臺備份計算機上;(2)當所述文件的數(shù)據(jù)塊的數(shù)據(jù)發(fā)生變化后,主計算機將所述發(fā)生數(shù)據(jù)變化的數(shù)據(jù)塊發(fā)送至所述備份計算機上進行備份;(二)恢復(fù)過程(3)當檢測到主計算機的數(shù)據(jù)損壞時,確定損壞的數(shù)據(jù)塊,并從所述備份計算機中獲得所述備份的數(shù)據(jù)塊進行數(shù)據(jù)恢復(fù)。
2.如權(quán)利要求1所述的數(shù)據(jù)恢復(fù)方法,其特征在于,步驟(1)主計算機是將所述文件分割成固定大小的數(shù)據(jù)塊。
3.如權(quán)利要求2所述的數(shù)據(jù)恢復(fù)方法,其特征在于,每一數(shù)據(jù)塊包括有效長度字段、數(shù)據(jù)塊相關(guān)信息字段、字段CRC校驗碼、數(shù)據(jù)部分CRC校驗碼和數(shù)據(jù)部分。
4.如權(quán)利要求3所述的數(shù)據(jù)恢復(fù)方法,其特征在于,步驟(3)具體為(31)主計算機校驗每一數(shù)據(jù)塊的字段CRC校驗碼、數(shù)據(jù)部分CRC校驗碼,若字段CRC校驗碼錯誤,則進行步驟(32),若數(shù)據(jù)部分CRC校驗碼錯誤,則進行步驟(33);(32)依據(jù)備份計算機中獲得的對應(yīng)數(shù)據(jù)塊的有效長度字段和數(shù)據(jù)塊相關(guān)信息字段重置主計算機中所述數(shù)據(jù)塊的有效長度字段、數(shù)據(jù)塊相關(guān)信息字段;(33)依據(jù)備份計算機中獲得的對應(yīng)數(shù)據(jù)塊的數(shù)據(jù)部分重置主計算機中所述數(shù)據(jù)塊的數(shù)據(jù)部分。
5.如權(quán)利要求1所述的數(shù)據(jù)恢復(fù)方法,其特征在于,步驟(3)中當檢測到主計算機的數(shù)據(jù)損壞時進一步為主計算機在讀取數(shù)據(jù)過程中發(fā)現(xiàn)錯誤。
6.如權(quán)利要求1或2所述的數(shù)據(jù)恢復(fù)方法,其特征在于,還包括(4)當主計算機發(fā)生故障無法運行時,選擇其中一備份計算機設(shè)置為新的主計算機完成系統(tǒng)切換。
7.如權(quán)利要求6所述的數(shù)據(jù)恢復(fù)方法,其特征在于,備份計算機是通過不斷測試主計算機是否正常工作來檢測主計算機是否發(fā)生故障無法運行。
8.一種數(shù)據(jù)恢復(fù)方法,其特征在于,還包括(一)備份過程(1)主計算機將需要備份的文件分割成若干數(shù)據(jù)塊,并將所述文件的數(shù)據(jù)塊同時保存在至少一臺備份計算機上;(2)當所述文件的數(shù)據(jù)塊的數(shù)據(jù)發(fā)生變化后,主計算機將所述發(fā)生數(shù)據(jù)變化的數(shù)據(jù)塊發(fā)送至所述備份計算機上進行備份;(二)恢復(fù)過程(3)當主計算機發(fā)生故障無法運行時,選擇其中一備份計算機設(shè)置為新的主計算機。
9.如權(quán)利要求8所述的數(shù)據(jù)恢復(fù)方法,其特征在于,備份計算機是通過不斷測試主計算機是否正常工作來檢測主計算機是否發(fā)生故障無法運行。
全文摘要
一種數(shù)據(jù)恢復(fù)方法,包括備份過程和恢復(fù)過程,其中(1)主計算機將需要備份的文件分割成若干數(shù)據(jù)塊,并將所述文件的數(shù)據(jù)塊同時保存在至少一臺備份計算機上;(2)當所述文件的數(shù)據(jù)塊的數(shù)據(jù)發(fā)生變化后,主計算機將所述發(fā)生數(shù)據(jù)變化的數(shù)據(jù)塊發(fā)送至所述備份計算機上進行備份;(3)當檢測到主計算機的數(shù)據(jù)損壞時,確定損壞的數(shù)據(jù)塊,并從所述備份計算機中獲得所述備份的數(shù)據(jù)塊進行數(shù)據(jù)恢復(fù)。當主計算機發(fā)生故障無法運行時,選擇其中一備份計算機設(shè)置為新的主計算機完成系統(tǒng)切換。本發(fā)明在不停止業(yè)務(wù)的前提下實現(xiàn)數(shù)據(jù)備份和恢復(fù),并且如果數(shù)據(jù)損壞的范圍比較小,本發(fā)明的恢復(fù)開銷會小到可以忽略的程度。
文檔編號G06F11/14GK1801107SQ200610001299
公開日2006年7月12日 申請日期2006年1月12日 優(yōu)先權(quán)日2006年1月12日
發(fā)明者姜萌 申請人:上海洲信信息技術(shù)有限公司