欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

用于數(shù)據(jù)備份的方法和系統(tǒng)的制作方法

文檔序號(hào):6487429閱讀:176來(lái)源:國(guó)知局
用于數(shù)據(jù)備份的方法和系統(tǒng)的制作方法
【專利摘要】本發(fā)明涉及一種用于數(shù)據(jù)備份的方法和系統(tǒng),所述方法包括:利用與原備份數(shù)據(jù)采用的分塊方法相同的分塊方法對(duì)現(xiàn)數(shù)據(jù)進(jìn)行第一分塊以得到當(dāng)前塊;計(jì)算當(dāng)前塊的哈希值;在原備份數(shù)據(jù)的哈希值表中獲取其哈希值與計(jì)算出的當(dāng)前塊的哈希值相同的匹配塊的標(biāo)識(shí)符并將連續(xù)匹配塊的數(shù)目加一。由于最大化利用了原備份數(shù)據(jù)與現(xiàn)數(shù)據(jù)的相關(guān)性,能夠有效提高重復(fù)數(shù)據(jù)刪除方法執(zhí)行的性能。
【專利說(shuō)明】用于數(shù)據(jù)備份的方法和系統(tǒng)
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及計(jì)算機(jī)領(lǐng)域,更具體地,本發(fā)明涉及一種用于數(shù)據(jù)備份的方法和系統(tǒng)。 【背景技術(shù)】
[0002]數(shù)據(jù)備份是將數(shù)據(jù)以某種方式加以保留,以便在系統(tǒng)遭受破壞或其他特定情況 下,重新加以利用的一個(gè)過(guò)程。數(shù)據(jù)備份是存儲(chǔ)領(lǐng)域的一個(gè)重要組成部分,其在存儲(chǔ)系統(tǒng)中 的地位和作用都是不容忽視的。并且對(duì)一個(gè)IT系統(tǒng)而言,備份工作也是其中必不可少的組 成部分。因?yàn)樗粌H可以防范意外事件的破壞,而且還能使歷史數(shù)據(jù)以最佳方式保存歸檔, 即它為歷史數(shù)據(jù)進(jìn)行歷史數(shù)據(jù)查詢、統(tǒng)計(jì)和分析,以及重要信息歸檔保存提供了可能。
[0003]重復(fù)數(shù)據(jù)刪除(De-duplication)技術(shù)通過(guò)刪除數(shù)據(jù)集中重復(fù)的數(shù)據(jù),只保留其中 一份,從而消除冗余數(shù)據(jù),是一種目前主流且非常熱門的存儲(chǔ)技術(shù)。通常情況下,由于原始 數(shù)據(jù)中存在大量的重復(fù)數(shù)據(jù),通過(guò)使用重復(fù)數(shù)據(jù)刪除技術(shù),可以得到用于存儲(chǔ)的優(yōu)化的數(shù) 據(jù),顯然,用于存儲(chǔ)的優(yōu)化的數(shù)據(jù)需要的存儲(chǔ)空間大大減少。重復(fù)數(shù)據(jù)刪除技術(shù)目前大量應(yīng) 用于數(shù)據(jù)備份與歸檔系統(tǒng),可以幫助應(yīng)用程序降低數(shù)據(jù)存儲(chǔ)量,節(jié)省網(wǎng)絡(luò)帶寬,提高存儲(chǔ)效 率,從而節(jié)省成本。
[0004]重復(fù)數(shù)據(jù)刪除技術(shù)的優(yōu)劣衡量標(biāo)準(zhǔn)主要有兩個(gè),即重復(fù)數(shù)據(jù)刪除率 (de-duplication ratio)和刪除方法執(zhí)行的性能。重復(fù)數(shù)據(jù)刪除率由數(shù)據(jù)自身的特征和應(yīng) 用模式所決定,而刪除方法執(zhí)行的性能取決于具體實(shí)現(xiàn)技術(shù)?,F(xiàn)有的廠商已經(jīng)提供可很多 種重復(fù)數(shù)據(jù)刪除的方法,例如定長(zhǎng)分塊方法,不定長(zhǎng)分塊方法等等,為了提高重復(fù)數(shù)據(jù)刪除 率或刪除方法執(zhí)行的性能,各個(gè)廠家都在不斷研究新的重復(fù)數(shù)據(jù)刪除方法和系統(tǒng)。

【發(fā)明內(nèi)容】

[0005]本發(fā)明說(shuō)明性實(shí)施例提供了一種能夠提高刪除方法執(zhí)行的性能的數(shù)據(jù)備份的方 法和系統(tǒng)。
[0006]根據(jù)本發(fā)明的一個(gè)實(shí)施例,提供了一種用于數(shù)據(jù)備份的方法,其中存在原備份數(shù) 據(jù)和需要備份的現(xiàn)數(shù)據(jù),所述方法包括:利用與原備份數(shù)據(jù)采用的分塊方法相同的分塊方 法對(duì)現(xiàn)數(shù)據(jù)進(jìn)行第一分塊以得到當(dāng)前塊;計(jì)算當(dāng)前塊的哈希值;以及在原備份數(shù)據(jù)的哈希 值表中獲取其哈希值與計(jì)算出的當(dāng)前塊的哈希值相同的匹配塊的標(biāo)識(shí)符并將連續(xù)匹配塊 的數(shù)目加一。
[0007]根據(jù)本發(fā)明的另一個(gè)實(shí)施例,提供了一種用于數(shù)據(jù)備份的系統(tǒng),其中存在原備份 數(shù)據(jù)和需要備份的現(xiàn)數(shù)據(jù),所述系統(tǒng)包括:分塊單元,配置為利用與原備份數(shù)據(jù)采用的分塊 方法相同的分塊方法對(duì)現(xiàn)數(shù)據(jù)進(jìn)行第一分塊以得到當(dāng)前塊;計(jì)算單元,配置為計(jì)算當(dāng)前塊 的哈希值;以及獲取單元,配置為在原備份數(shù)據(jù)的哈希值表中獲取其哈希值與計(jì)算出的當(dāng) 前塊的哈希值相同的匹配塊的標(biāo)識(shí)符并將連續(xù)匹配塊的數(shù)目加一。
[0008]根據(jù)本發(fā)明的一個(gè)實(shí)施例,還提供了用于數(shù)據(jù)備份的計(jì)算機(jī)程序產(chǎn)品。
[0009]利用本發(fā)明的一個(gè)或多個(gè)上述實(shí)施例,由于最大化利用了原備份數(shù)據(jù)與現(xiàn)數(shù)據(jù)的相關(guān)性,能夠有效提高重復(fù)數(shù)據(jù)刪除方法執(zhí)行的性能,進(jìn)而提高數(shù)據(jù)備份的性能。
【專利附圖】

【附圖說(shuō)明】
[0010]通過(guò)結(jié)合附圖對(duì)本公開(kāi)示例性實(shí)施方式進(jìn)行更詳細(xì)的描述,本公開(kāi)的上述以及其 它目的、特征和優(yōu)勢(shì)將變得更加明顯,其中,在本公開(kāi)示例性實(shí)施方式中,相同的參考標(biāo)號(hào) 通常代表相同部件。
[0011]圖1顯示了適于用來(lái)實(shí)現(xiàn)本發(fā)明實(shí)施方式的示例性計(jì)算系統(tǒng)100的框圖;
[0012]圖2a_2c顯示了根據(jù)本發(fā)明一個(gè)或多個(gè)實(shí)施例的用于數(shù)據(jù)備份的方法200的流程 圖;
[0013]圖3顯示了根據(jù)本發(fā)明一個(gè)或多個(gè)實(shí)施例的用于數(shù)據(jù)備份的系統(tǒng)300的框圖。 【具體實(shí)施方式】
[0014]下面將參照附圖更詳細(xì)地描述本公開(kāi)的優(yōu)選實(shí)施方式。雖然附圖中顯示了本公開(kāi) 的優(yōu)選實(shí)施方式,然而應(yīng)該理解,可以以各種形式實(shí)現(xiàn)本公開(kāi)而不應(yīng)被這里闡述的實(shí)施方 式所限制。相反,提供這些實(shí)施方式是為了使本公開(kāi)更加透徹和完整,并且能夠?qū)⒈竟_(kāi)的 范圍完整的傳達(dá)給本領(lǐng)域的技術(shù)人員。
[0015]圖1顯示了適于用來(lái)實(shí)現(xiàn)本發(fā)明實(shí)施方式的示例性計(jì)算系統(tǒng)100的框圖。如圖1 所示,計(jì)算機(jī)系統(tǒng)100可以包括:CPU (中央處理單元)10URAM (隨機(jī)存取存儲(chǔ)器)102,ROM (只讀存儲(chǔ)器)103、系統(tǒng)總線104、硬盤控制器105、鍵盤控制器106、串行接口控制器107、并 行接口控制器108、顯示控制器109、硬盤110、鍵盤111、串行外部設(shè)備112、并行外部設(shè)備 113和顯示器114。在這些設(shè)備中,與系統(tǒng)總線104耦合的有CPU101、RAM102、R0M103、硬盤 控制器105、鍵盤控制器106、串行控制器107、并行控制器108和顯示控制器109。硬盤110 與硬盤控制器105耦合,鍵盤111與鍵盤控制器106耦合,串行外部設(shè)備112與串行接口控 制器107耦合,并行外部設(shè)備113與并行接口控制器108耦合,以及顯示器114與顯示控制 器109耦合。應(yīng)當(dāng)理解,圖1所述的結(jié)構(gòu)框圖僅僅是為了示例的目的,而不是對(duì)本發(fā)明范圍 的限制。在某些情況下,可以根據(jù)具體情況增加或減少某些設(shè)備。
[0016]所屬【技術(shù)領(lǐng)域】的技術(shù)人員知道,本公開(kāi)可以實(shí)現(xiàn)為系統(tǒng)、方法或計(jì)算機(jī)程序產(chǎn)品。 因此,本公開(kāi)可以具體實(shí)現(xiàn)為以下形式,即:可以是完全的硬件、也可以是完全的軟件(包括 固件、駐留軟件、微代碼等),還可以是硬件和軟件結(jié)合的形式,本文一般稱為“電路”、“模 塊”或“系統(tǒng)”。此外,在一些實(shí)施例中,本公開(kāi)還可以實(shí)現(xiàn)為在一個(gè)或多個(gè)計(jì)算機(jī)可讀介質(zhì) 中的計(jì)算機(jī)程序產(chǎn)品的形式,該計(jì)算機(jī)可讀介質(zhì)中包含計(jì)算機(jī)可讀的程序代碼。
[0017]可以采用一個(gè)或多個(gè)計(jì)算機(jī)可讀的介質(zhì)的任意組合。計(jì)算機(jī)可讀介質(zhì)可以是計(jì) 算機(jī)可讀信號(hào)介質(zhì)或者計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)。計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)例如可以是一但不限 于——電、磁、光、電磁、紅外線、或半導(dǎo)體的系統(tǒng)、裝置或器件,或者任意以上的組合。計(jì)算 機(jī)可讀存儲(chǔ)介質(zhì)的更具體的例子(非窮舉的列表)包括:具有一個(gè)或多個(gè)導(dǎo)線的電連接、便 攜式計(jì)算機(jī)磁盤、硬盤、隨機(jī)存取存儲(chǔ)器(RAM)、只讀存儲(chǔ)器(ROM)、可擦式可編程只讀存儲(chǔ) 器(EPR0M或閃存)、光纖、便攜式緊湊磁盤只讀存儲(chǔ)器(CD-ROM)、光存儲(chǔ)器件、磁存儲(chǔ)器件、 或者上述的任意合適的組合。在本文件中,計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)可以是任何包含或存儲(chǔ)程 序的有形介質(zhì),該程序可以被指令執(zhí)行系統(tǒng)、裝置或者器件使用或者與其結(jié)合使用。[0018]計(jì)算機(jī)可讀的信號(hào)介質(zhì)可以包括在基帶中或者作為載波一部分傳播的數(shù)據(jù)信號(hào),其中承載了計(jì)算機(jī)可讀的程序代碼。這種傳播的數(shù)據(jù)信號(hào)可以采用多種形式,包括——但不限于——電磁信號(hào)、光信號(hào)或上述的任意合適的組合。計(jì)算機(jī)可讀的信號(hào)介質(zhì)還可以是計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)以外的任何計(jì)算機(jī)可讀介質(zhì),該計(jì)算機(jī)可讀介質(zhì)可以發(fā)送、傳播或者傳輸用于由指令執(zhí)行系統(tǒng)、裝置或者器件使用或者與其結(jié)合使用的程序。
[0019]計(jì)算機(jī)可讀介質(zhì)上包含的程序代碼可以用任何適當(dāng)?shù)慕橘|(zhì)傳輸,包括一但不限于一無(wú)線、電線、光纜、RF等等,或者上述的任意合適的組合。
[0020]可以以一種或多種程序設(shè)計(jì)語(yǔ)言或其組合來(lái)編寫用于執(zhí)行本發(fā)明操作的計(jì)算機(jī)程序代碼,所述程序設(shè)計(jì)語(yǔ)言包括面向?qū)ο蟮某绦蛟O(shè)計(jì)語(yǔ)言一諸如Java、Smalltalk、C++,還包括常規(guī)的過(guò)程式程序設(shè)計(jì)語(yǔ)言一諸如”C”語(yǔ)言或類似的程序設(shè)計(jì)語(yǔ)言。程序代碼可以完全地在用戶計(jì)算機(jī)上執(zhí)行、部分地在用戶計(jì)算機(jī)上執(zhí)行、作為一個(gè)獨(dú)立的軟件包執(zhí)行、部分在用戶計(jì)算機(jī)上部分在遠(yuǎn)程計(jì)算機(jī)上執(zhí)行、或者完全在遠(yuǎn)程計(jì)算機(jī)或服務(wù)器上執(zhí)行。在涉及遠(yuǎn)程計(jì)算機(jī)的情形中,遠(yuǎn)程計(jì)算機(jī)可以通過(guò)任意種類的網(wǎng)絡(luò)一包括局域網(wǎng)(LAN)或廣域網(wǎng)(WAN)—連接到用戶計(jì)算機(jī),或者,可以連接到外部計(jì)算機(jī)(例如利用因特網(wǎng)服務(wù)提供商來(lái)通過(guò)因特網(wǎng)連接)。
[0021]下面將參照本發(fā)明實(shí)施例的方法、裝置(系統(tǒng))和計(jì)算機(jī)程序產(chǎn)品的流程圖和/或框圖描述本發(fā)明。應(yīng)當(dāng)理解,流程圖和/或框圖的每個(gè)方框以及流程圖和/或框圖中各方框的組合,都可以由計(jì)算機(jī)程序指令實(shí)現(xiàn)。這些計(jì)算機(jī)程序指令可以提供給通用計(jì)算機(jī)、專用計(jì)算機(jī)或其它可編程數(shù)據(jù)處理裝置的處理器,從而生產(chǎn)出一種機(jī)器,這些計(jì)算機(jī)程序指令通過(guò)計(jì)算機(jī)或其它可編程數(shù)據(jù)處理裝置執(zhí)行,產(chǎn)生了實(shí)現(xiàn)流程圖和/或框圖中的方框中規(guī)定的功能/操作的裝置。
[0022]也可以把這些計(jì)算機(jī)程序指令存儲(chǔ)在能使得計(jì)算機(jī)或其它可編程數(shù)據(jù)處理裝置以特定方式工作的計(jì)算機(jī)可讀介質(zhì)中,這樣,存儲(chǔ)在計(jì)算機(jī)可讀介質(zhì)中的指令就產(chǎn)生出一個(gè)包括實(shí)現(xiàn)流程圖和/或框圖中的方框中規(guī)定的功能/操作的指令裝置(instructionmeans)的制造品(manufacture)。
[0023]也可以把計(jì)算機(jī)程序指令加載到計(jì)算機(jī)、其它可編程數(shù)據(jù)處理裝置、或其它設(shè)備上,使得在計(jì)算機(jī)、其它可編程數(shù)據(jù)處理裝置或其它設(shè)備上執(zhí)行一系列操作步驟,以產(chǎn)生計(jì)算機(jī)實(shí)現(xiàn)的過(guò)程,從而使得在計(jì)算機(jī)或其它可編程裝置上執(zhí)行的指令能夠提供實(shí)現(xiàn)流程圖和/或框圖中的方框中規(guī)定的功能/操作的過(guò)程。
[0024]在常見(jiàn)的重復(fù)數(shù)據(jù)刪除的應(yīng)用場(chǎng)景中,通常只有數(shù)據(jù)文件的一部分發(fā)生變化,也就是說(shuō),備份數(shù)據(jù)的連續(xù)版本之間具有很大的相似性?;谶@樣的應(yīng)用場(chǎng)景,根據(jù)本發(fā)明的構(gòu)思,在利用傳統(tǒng)的重復(fù)數(shù)據(jù)刪除方法對(duì)數(shù)據(jù)進(jìn)行分塊時(shí)增加對(duì)數(shù)據(jù)分塊的預(yù)測(cè),即在原備份數(shù)據(jù)中尋找匹配的數(shù)據(jù)塊。通過(guò)尋找匹配的數(shù)據(jù)塊并在連續(xù)匹配數(shù)據(jù)塊超過(guò)一定閾值的情況下直接利用原備份數(shù)據(jù)對(duì)現(xiàn)數(shù)據(jù)進(jìn)行分塊,從而能夠節(jié)省分塊操作的時(shí)間,從而有效提高重復(fù)數(shù)據(jù)刪除方法執(zhí)行的性能。
[0025]根據(jù)本發(fā)明的一個(gè)實(shí)施例的用于數(shù)據(jù)備份的方法中,存在原備份數(shù)據(jù)Dtl和需要備份的現(xiàn)數(shù)據(jù)Dp如前所述,在常見(jiàn)的重復(fù)數(shù)據(jù)刪除的應(yīng)用場(chǎng)景中,Dtl和D1之間具有很大的相關(guān)性。當(dāng)然,這里只是以Dtl和D1之間具有很大相關(guān)性的情況為例進(jìn)行說(shuō)明,應(yīng)該理解,本發(fā)明的應(yīng)用范圍并不僅限于上面描述的情況。下面將結(jié)合圖2進(jìn)一步說(shuō)明根據(jù)本發(fā)明的一個(gè)實(shí)施例的用于數(shù)據(jù)備份的方法200。
[0026]參見(jiàn)圖2a,其中顯示了根據(jù)本發(fā)明一個(gè)實(shí)施例的用于數(shù)據(jù)備份的方法200的流程圖。方法200從步驟202開(kāi)始。
[0027]接下來(lái),方法200進(jìn)入步驟204,其中利用與原備份數(shù)據(jù)采用的分塊方法相同的分塊方法對(duì)現(xiàn)數(shù)據(jù)進(jìn)行第一分塊以得到當(dāng)前塊。假設(shè)原備份數(shù)據(jù)Dtl采用的是基于內(nèi)容定義的分塊方法(CDC),那么對(duì)需要備份的現(xiàn)數(shù)據(jù)D1采用同樣的分塊方法進(jìn)行第一分塊,并將經(jīng)過(guò)第一分塊之后得到的數(shù)據(jù)塊作為當(dāng)前塊Q。
[0028]接下來(lái),方法200進(jìn)入步驟206,其中計(jì)算當(dāng)前塊的哈希值??梢岳矛F(xiàn)有技術(shù)中的任意方法來(lái)計(jì)算當(dāng)前塊C1的哈希值氏。這里不再贅述。
[0029]接下來(lái),方法200進(jìn)入步驟208,其中在原備份數(shù)據(jù)的哈希值表中獲取其哈希值與計(jì)算出的當(dāng)前塊的哈希值相同的匹配塊的標(biāo)識(shí)符并將連續(xù)匹配塊的數(shù)目加一。哈希值表中記錄了備份數(shù)據(jù)的各個(gè)數(shù)據(jù)塊的標(biāo)識(shí)符及其哈希值。根據(jù)本發(fā)明的一個(gè)實(shí)施例,利用當(dāng)前塊C1的哈希值H1在原備份數(shù)據(jù)Dtl的哈希值表T1中尋找具有相同的哈希值H1的數(shù)據(jù)塊作為匹配塊M1,進(jìn)而獲取匹配塊M1的標(biāo)識(shí)符。這里,預(yù)先設(shè)置一個(gè)變量Cm (其初始值為零)來(lái)記錄連續(xù)匹配塊的數(shù)目,以便在后續(xù)過(guò)程中使用。當(dāng)利用當(dāng)前塊C1的哈希值H1在原備份數(shù)據(jù)Dtl的哈希表T1中找到了具有相同的哈希值H1的數(shù)據(jù)塊之后,將連續(xù)匹配塊的數(shù)目,即變量Cm的值加一。
[0030]通過(guò)利用與原備份數(shù)據(jù)采用的分塊方法對(duì)需要備份的現(xiàn)數(shù)據(jù)進(jìn)行分塊并從原備份數(shù)據(jù)中尋找匹配塊,使得能夠利用分塊的方式對(duì)原備份數(shù)據(jù)和現(xiàn)數(shù)據(jù)進(jìn)行比較,相比于現(xiàn)有技術(shù)的方法,能夠提高重復(fù)數(shù)據(jù)刪除方法執(zhí)行的性能,進(jìn)而提高數(shù)據(jù)備份的性能。
[0031]下面結(jié)合圖2a_2c對(duì)根據(jù)本發(fā)明的一個(gè)或多個(gè)其他實(shí)施例的用于數(shù)據(jù)備份的方法200進(jìn)行介紹。圖2a-2c中利用虛線框表示這些其他的實(shí)施例所涉及的步驟。
[0032]繼續(xù)參見(jiàn)圖2a,根據(jù)本發(fā)明的一個(gè)實(shí)施例,在原備份數(shù)據(jù)的哈希值表中獲取其哈希值與計(jì)算出的當(dāng)前塊的哈希值相同的匹配塊的標(biāo)識(shí)符并將連續(xù)匹配塊的數(shù)目加一之后,方法200進(jìn)入步驟210,其中判斷連續(xù)匹配塊的數(shù)目是否超過(guò)閾值。這里,閾值是一個(gè)預(yù)先設(shè)定的值,如果連續(xù)匹配塊的數(shù)目CM超過(guò)該預(yù)先設(shè)定的值則認(rèn)為:需要備份的現(xiàn)數(shù)據(jù)D1的當(dāng)前塊之后的數(shù)據(jù)塊與原備份數(shù)據(jù)Dtl中的匹配塊之后的數(shù)據(jù)塊相同。
[0033]接下來(lái),響應(yīng)于連續(xù)匹配塊的數(shù)目未超過(guò)閾值,方法200進(jìn)入步驟214 (圖2b),其中利用與原備份數(shù)據(jù)采用的分塊方法相同的分塊方法繼續(xù)對(duì)現(xiàn)數(shù)據(jù)進(jìn)行第二分塊以得到新當(dāng)前塊,計(jì)算新當(dāng)前塊的哈希值。假設(shè)原備份數(shù)據(jù)Dtl采用的是基于內(nèi)容定義的分塊方法(CDC),那么繼續(xù)對(duì)需要備份的現(xiàn)數(shù)據(jù)D1經(jīng)過(guò)第一分塊后剩下的部分采用同樣的分塊方法進(jìn)行第二分塊,并將經(jīng)過(guò)第二分塊之后得到的數(shù)據(jù)塊作為新當(dāng)前塊C2。然后,計(jì)算新當(dāng)前塊C2的哈希值H2。
[0034]根據(jù)本發(fā)明的一個(gè)實(shí)施例,方法200進(jìn)一步包括響應(yīng)于計(jì)算出新當(dāng)前塊C2的哈希值H2進(jìn)入步驟216(圖2b),其中在原備份數(shù)據(jù)的哈希值表中獲取匹配塊的下一塊的哈希值并比較新當(dāng)前塊的哈希值與匹配塊的下一塊的哈希值。這里,通過(guò)在原備份數(shù)據(jù)Dtl的哈希值表T1中獲取匹配塊M1的下一塊M2的哈希值并將其與新當(dāng)前塊C2的哈希值比較來(lái)確定新當(dāng)前塊C2是否與匹配塊M1的下一塊M2相同。
[0035]接下來(lái),響應(yīng)于新當(dāng)前塊的哈希值與匹配塊的下一塊的哈希值相同,方法200進(jìn)入步驟218(圖2b),其中將連續(xù)匹配塊的數(shù)目加一;將匹配塊的下一塊作為新匹配塊;并且返回判斷連續(xù)匹配塊的數(shù)目是否超過(guò)閾值(步驟212)。這里,如果新當(dāng)前塊(:2的哈希值與匹配塊M1的下一塊M2的哈希值相同,則說(shuō)明新當(dāng)前塊C2與匹配塊M1的下一塊M2也匹配,因此,將連續(xù)匹配塊的數(shù)目,即變量Cm的值加一,并將匹配塊M1的下一塊M2作為新匹配塊M/,然后返回判斷連續(xù)匹配塊的數(shù)目Cm是否超過(guò)閾值的步驟。
[0036]根據(jù)本發(fā)明的一個(gè)實(shí)施例,響應(yīng)于新當(dāng)前塊的哈希值與匹配塊的下一塊的哈希值不同,方法200進(jìn)入步驟220 (圖2b),其中將連續(xù)匹配塊的數(shù)目清零;返回在原備份數(shù)據(jù)的哈希值表中獲取其哈希值與計(jì)算出的當(dāng)前塊的哈希值相同的匹配塊的標(biāo)識(shí)符的步驟(步驟208)。如果新當(dāng)前塊C2的哈希值與匹配塊M1的下一塊M2的哈希值不同,則說(shuō)明新當(dāng)前塊C2與匹配塊M1的下一塊M2不匹配,也就是說(shuō),需要重新從原備份數(shù)據(jù)Dtl中尋找其哈希值與計(jì)算出的當(dāng)前塊(:2的哈希值相同的匹配塊M/的標(biāo)識(shí)符,并且將連續(xù)匹配塊的數(shù)目清零重新開(kāi)始計(jì)算。
[0037]根據(jù)本發(fā)明的一個(gè)實(shí)施例,在原備份數(shù)據(jù)的哈希值表中獲取其哈希值與計(jì)算出的當(dāng)前塊的哈希值相同的匹配塊的標(biāo)識(shí)符并將連續(xù)匹配塊的數(shù)目加一之后,方法200進(jìn)入步驟210,其中判斷連續(xù)匹配塊的數(shù)目是否超過(guò)閾值。
[0038]接下來(lái),響應(yīng)于連續(xù)匹配塊的數(shù)目超過(guò)閾值,方法200進(jìn)入步驟222 (圖2c),其中獲取匹配塊的下一塊的標(biāo)識(shí)符對(duì)應(yīng)的數(shù)據(jù)塊的長(zhǎng)度。
[0039]接下來(lái),根據(jù)本發(fā)明的一個(gè)實(shí)施例,方法200進(jìn)入步驟224 (圖2c),其中利用獲取的匹配塊的下一塊的標(biāo)識(shí)符對(duì)應(yīng)的數(shù)據(jù)塊的長(zhǎng)度繼續(xù)對(duì)現(xiàn)數(shù)據(jù)進(jìn)行第三分塊以得到新當(dāng)前塊;計(jì)算新當(dāng)前塊的哈希值;并在原備份數(shù)據(jù)的哈希值表中獲取匹配塊的下一塊的哈希值。根據(jù)閾值的含義,如果連續(xù)匹配塊的數(shù)目超過(guò)了閾值,那么認(rèn)為需要備份的現(xiàn)數(shù)據(jù)D1的當(dāng)前塊(對(duì)應(yīng)于連續(xù)匹配塊超過(guò)閾值時(shí)現(xiàn)數(shù)據(jù)D1的當(dāng)前塊Ct)之后的數(shù)據(jù)塊與原備份數(shù)據(jù)Dtl中的匹配塊(對(duì)應(yīng)于連續(xù)匹配塊超過(guò)閾值時(shí)原備份數(shù)據(jù)Dtl的匹配塊Mt)之后的數(shù)據(jù)塊相同。因此,可以利用原備份數(shù)據(jù)Dtl中的數(shù)據(jù)塊的長(zhǎng)度對(duì)現(xiàn)數(shù)據(jù)進(jìn)行分塊。也就是說(shuō),通過(guò)在原備份數(shù)據(jù)Dtl的哈希值表T1中獲取匹配塊Mt的下一塊Mt+1的標(biāo)識(shí)符,并進(jìn)一步獲取匹配塊Mt的下一塊Mt+1的標(biāo)識(shí)符對(duì)應(yīng)的數(shù)據(jù)塊的長(zhǎng)度,進(jìn)而利用獲取的匹配塊Mt的下一塊Mt+1的標(biāo)識(shí)符對(duì)應(yīng)的數(shù)據(jù)塊的長(zhǎng)度對(duì)現(xiàn)數(shù)據(jù)經(jīng)過(guò)第一分塊和第二分塊后剩下的部分進(jìn)行第三分塊以得到新當(dāng)前塊c3。同時(shí),為了確保第三分塊得到的新當(dāng)前塊C3與原備份數(shù)據(jù)Dtl中的匹配塊Mt之后的數(shù)據(jù)塊相同,需要計(jì)算新當(dāng)前塊C3的哈希值H3,并將其哈希值H3與匹配塊吣的下一塊Mt+1的哈希值相比較進(jìn)行驗(yàn)證。
[0040]接下來(lái),根據(jù)本發(fā)明的一個(gè)實(shí)施例,方法200進(jìn)入步驟226 (圖2c),其中比較新當(dāng)前塊的哈希值與匹配塊的下一塊的哈希值。響應(yīng)于新當(dāng)前塊的哈希值與匹配塊的下一塊的哈希值相同,方法200進(jìn)入步驟228 (圖2c),其中:將匹配塊的下一塊作為新匹配塊;返回在原備份數(shù)據(jù)的哈希值表中獲取匹配塊的下一塊的標(biāo)識(shí)符。響應(yīng)于新當(dāng)前塊的哈希值與匹配塊的下一塊的哈希值不同,方法進(jìn)入步驟230 (圖2c),其中將連續(xù)匹配塊的數(shù)目清零;返回在原備份數(shù)據(jù)的哈希值表中獲取與計(jì)算出的當(dāng)前塊的哈希值相同的匹配塊的標(biāo)識(shí)符。[0041 ] 如前所述,為了確保第三分塊得到的新當(dāng)前塊C3與原備份數(shù)據(jù)Dtl中的匹配塊Mt之后的數(shù)據(jù)塊相同,需要計(jì)算新當(dāng)前塊C3的哈希值H3,并將其哈希值H3與匹配塊Mt的下一塊Mt+1的哈希值相比較進(jìn)行驗(yàn)證。如果新當(dāng)前塊C3的哈希值H3與匹配塊Mt的下一塊Mt+1的哈希值相同,則說(shuō)明新當(dāng)前塊C3與匹配塊Mt的下一塊Mt+1也匹配,因此將匹配塊Mt的下一塊Μτ+1作為新匹配塊M/,返回在原備份數(shù)據(jù)Dtl的哈希值表T1中獲取匹配塊的下一塊的標(biāo)識(shí)符的步驟(步驟222)。如果新當(dāng)前塊C3的哈希值H3與匹配塊Mt的下一塊Μτ+1的哈希值不同,則說(shuō)明新當(dāng)前塊C3與匹配塊Mt的下一塊Μτ+1不匹配,也就是說(shuō),需要重新從原備份數(shù)據(jù)Dtl中尋找其哈希值與計(jì)算出的新當(dāng)前塊C3的哈希值相同的匹配塊M/的標(biāo)識(shí)符,并且將連續(xù)匹配塊的數(shù)目清零重新開(kāi)始計(jì)算。
[0042]以上通過(guò)結(jié)合圖2a_2c對(duì)根據(jù)本發(fā)明的一個(gè)或多個(gè)實(shí)施例進(jìn)行了詳細(xì)的描述,應(yīng)當(dāng)理解,上面的描述僅僅是出于示例性說(shuō)明的目的,并不能理解為對(duì)本發(fā)明要求保護(hù)的范圍的限制。
[0043]下面結(jié)合圖3對(duì)根據(jù)本發(fā)明的一個(gè)或多個(gè)實(shí)施例的用于數(shù)據(jù)備份的系統(tǒng)300進(jìn)行介紹。圖3中的虛線框表示根據(jù)本發(fā)明的一個(gè)或多個(gè)其他實(shí)施例涉及的系統(tǒng)的可選結(jié)構(gòu)。
[0044]如圖3所示,根據(jù)本發(fā)明的一個(gè)實(shí)施例的用于數(shù)據(jù)備份的系統(tǒng)300包括:分塊單元302,配置為利用與原備份數(shù)據(jù)采用的分塊方法相同的分塊方法對(duì)現(xiàn)數(shù)據(jù)進(jìn)行第一分塊以得到當(dāng)前塊;計(jì)算單元304,配置為計(jì)算當(dāng)前塊的哈希值;獲取單元306,配置為在原備份數(shù)據(jù)的哈希值表中獲取其哈希值與計(jì)算出的當(dāng)前塊的哈希值相同的匹配塊的標(biāo)識(shí)符并將連續(xù)匹配塊的數(shù)目加一。
[0045]根據(jù)本發(fā)明的一個(gè)實(shí)施例,用于數(shù)據(jù)備份的系統(tǒng)300還包括:判斷單元308,配置為判斷連續(xù)匹配塊的數(shù)目是否超過(guò)閾值并且,響應(yīng)于未超過(guò)閾值:分塊單元302進(jìn)一步配置為利用與原備份數(shù)據(jù)采用的分塊方法相同的分塊方法繼續(xù)對(duì)現(xiàn)數(shù)據(jù)進(jìn)行第二分塊以得到新當(dāng)前塊;計(jì)算單元304進(jìn)一步配置為計(jì)算新當(dāng)前塊的哈希值。
[0046]根據(jù)本發(fā)明的一個(gè)實(shí)施例,用于數(shù)據(jù)備份的系統(tǒng)300還包括:獲取單元306進(jìn)一步配置為在原備份數(shù)據(jù)的哈希值表中獲取匹配塊的下一塊的哈希值;比較單元310,配置為比較新當(dāng)前塊的哈希值與匹配塊的下一塊的哈希值,并且:響應(yīng)于新當(dāng)前塊的哈希值與匹配塊的下一塊的哈希值相同,所述系統(tǒng)300進(jìn)一步配置為:將連續(xù)匹配塊的數(shù)目加一;將匹配塊的下一塊作為新匹配塊;返回判斷連續(xù)匹配塊的數(shù)目是否超過(guò)閾值。響應(yīng)于新當(dāng)前塊的哈希值與匹配塊的下一塊的哈希值不同,所述系統(tǒng)300進(jìn)一步配置為:將連續(xù)匹配塊的數(shù)目清零;返回在原備份數(shù)據(jù)的哈希值表中獲取其哈希值與計(jì)算出的當(dāng)前塊的哈希值相同的匹配塊的標(biāo)識(shí)符。
[0047]根據(jù)本發(fā)明的一個(gè)實(shí)施例,用于數(shù)據(jù)備份的系統(tǒng)300還包括:判斷單元308,配置為判斷連續(xù)匹配塊的數(shù)目是否超過(guò)閾值并且,響應(yīng)于超過(guò)閾值:獲取單元306進(jìn)一步配置為獲取匹配塊的下一塊的標(biāo)識(shí)符對(duì)應(yīng)的數(shù)據(jù)塊的長(zhǎng)度。
[0048]根據(jù)本發(fā)明的一個(gè)實(shí)施例,用于數(shù)據(jù)備份的系統(tǒng)300還包括:分塊單元302進(jìn)一步配置為利用獲取的匹配塊的下一塊的標(biāo)識(shí)符對(duì)應(yīng)的數(shù)據(jù)塊的長(zhǎng)度繼續(xù)對(duì)現(xiàn)數(shù)據(jù)進(jìn)行第三分塊以得到新當(dāng)前塊;計(jì)算單元304進(jìn)一步配置為計(jì)算新當(dāng)前塊的哈希值;獲取單元306進(jìn)一步配置為在原備份數(shù)據(jù)的哈希值表中獲取匹配塊的下一塊的哈希值;比較單元310進(jìn)一步配置為比較新當(dāng)前塊的哈希值與匹配塊的下一塊的哈希值,并且:響應(yīng)于新當(dāng)前塊的哈希值與匹配塊的下一塊的哈希值相同,所述系統(tǒng)300進(jìn)一步配置為:將匹配塊的下一塊作為新匹配塊;返回在原備份數(shù)據(jù)的哈希值表中獲取匹配塊的下一塊的標(biāo)識(shí)符;響應(yīng)于新當(dāng)前塊的哈希值與匹配塊的下一塊的哈希值不同,所述系統(tǒng)300進(jìn)一步配置為:將連續(xù)匹配塊的數(shù)目清零;返回在原備份數(shù)據(jù)的哈希值表中獲取其哈希值與計(jì)算出的當(dāng)前塊的哈希值相同的匹配塊的標(biāo)識(shí)符。
[0049]附圖中的流程圖和框圖顯示了根據(jù)本發(fā)明的多個(gè)實(shí)施例的系統(tǒng)、方法和計(jì)算機(jī)程序產(chǎn)品的可能實(shí)現(xiàn)的體系架構(gòu)、功能和操作。在這點(diǎn)上,流程圖或框圖中的每個(gè)方框可以代表一個(gè)模塊、程序段或代碼的一部分,所述模塊、程序段或代碼的一部分包含一個(gè)或多個(gè)用于實(shí)現(xiàn)規(guī)定的邏輯功能的可執(zhí)行指令。也應(yīng)當(dāng)注意,在有些作為替換的實(shí)現(xiàn)中,方框中所標(biāo)注的功能也可以以不同于附圖中所標(biāo)注的順序發(fā)生。例如,兩個(gè)連續(xù)的方框?qū)嶋H上可以基本并行地執(zhí)行,它們有時(shí)也可以按相反的順序執(zhí)行,這依所涉及的功能而定。也要注意的是,框圖和/或流程圖中的每個(gè)方框、以及框圖和/或流程圖中的方框的組合,可以用執(zhí)行規(guī)定的功能或操作的專用的基于硬件的系統(tǒng)來(lái)實(shí)現(xiàn),或者可以用專用硬件與計(jì)算機(jī)指令的組合來(lái)實(shí)現(xiàn)。
[0050]以上已經(jīng)描述了本發(fā)明的各實(shí)施例,上述說(shuō)明是示例性的,并非窮盡性的,并且也不限于所披露的各實(shí)施例。在不偏離所說(shuō)明的各實(shí)施例的范圍和精神的情況下,對(duì)于本【技術(shù)領(lǐng)域】的普通技術(shù)人員來(lái)說(shuō)許多修改和變更都是顯而易見(jiàn)的。本文中所用術(shù)語(yǔ)的選擇,旨在最好地解釋各實(shí)施例的原理、實(shí)際應(yīng)用或?qū)κ袌?chǎng)中技術(shù)的技術(shù)改進(jìn),或者使本【技術(shù)領(lǐng)域】的其它普通技術(shù)人員能理解本文披露的各實(shí)施例。
【權(quán)利要求】
1.一種用于數(shù)據(jù)備份的方法,其中存在原備份數(shù)據(jù)和需要備份的現(xiàn)數(shù)據(jù),所述方法包括:利用與原備份數(shù)據(jù)采用的分塊方法相同的分塊方法對(duì)現(xiàn)數(shù)據(jù)進(jìn)行第一分塊以得到當(dāng)前塊;計(jì)算當(dāng)前塊的哈希值;以及在原備份數(shù)據(jù)的哈希值表中獲取其哈希值與計(jì)算出的當(dāng)前塊的哈希值相同的匹配塊的標(biāo)識(shí)符并將連續(xù)匹配塊的數(shù)目加一。
2.根據(jù)權(quán)利要求1的方法,進(jìn)一步包括:判斷連續(xù)匹配塊的數(shù)目是否超過(guò)閾值并且,響應(yīng)于未超過(guò)閾值:利用與原備份數(shù)據(jù)采用的分塊方法相同的分塊方法繼續(xù)對(duì)現(xiàn)數(shù)據(jù)進(jìn)行第二分塊以得到新當(dāng)前塊;計(jì)算新當(dāng)前塊的哈希值。
3.根據(jù)權(quán)利要求2的方法,進(jìn)一步包括:在原備份數(shù)據(jù)的哈希值表中獲取匹配塊的下一塊的哈希值;比較新當(dāng)前塊的哈希值與匹配塊的下一塊的哈希值,并且:響應(yīng)于新當(dāng)前塊的哈希值與匹配塊的下一塊的哈希值相同:將連續(xù)匹配塊的數(shù)目加一;將匹配塊的下一塊作為新匹 配塊;返回判斷連續(xù)匹配塊的數(shù)目是否超過(guò)閾值;響應(yīng)于新當(dāng)前塊的哈希值與匹配塊的下一塊的哈希值不同:將連續(xù)匹配塊的數(shù)目清零;返回在原備份數(shù)據(jù)的哈希值表中獲取其哈希值與計(jì)算出的當(dāng)前塊的哈希值相同的匹配塊的標(biāo)識(shí)符。
4.根據(jù)權(quán)利要求1的方法,進(jìn)一步包括:判斷連續(xù)匹配塊的數(shù)目是否超過(guò)閾值并且,響應(yīng)于超過(guò)閾值:獲取匹配塊的下一塊的標(biāo)識(shí)符對(duì)應(yīng)的數(shù)據(jù)塊的長(zhǎng)度。
5.根據(jù)權(quán)利要求4的方法,進(jìn)一步包括:利用獲取的匹配塊的下一塊的標(biāo)識(shí)符對(duì)應(yīng)的數(shù)據(jù)塊的長(zhǎng)度繼續(xù)對(duì)現(xiàn)數(shù)據(jù)進(jìn)行第三分塊以得到新當(dāng)前塊;計(jì)算新當(dāng)前塊的哈希值;在原備份數(shù)據(jù)的哈希值表中獲取匹配塊的下一塊的哈希值;比較新當(dāng)前塊的哈希值與匹配塊的下一塊的哈希值,并且:響應(yīng)于新當(dāng)前塊的哈希值與匹配塊的下一塊的哈希值相同:將匹配塊的下一塊作為新匹配塊;返回在原備份數(shù)據(jù)的哈希值表中獲取匹配塊的下一塊的標(biāo)識(shí)符;響應(yīng)于新當(dāng)前塊的哈希值與匹配塊的下一塊的哈希值不同:將連續(xù)匹配塊的數(shù)目清零;返回在原備份數(shù)據(jù)的哈希值表中獲取其哈希值與計(jì)算出的當(dāng)前塊的哈希值相同的匹配塊的標(biāo)識(shí)符。
6.一種用于數(shù)據(jù)備份的系統(tǒng),其中存在原備份數(shù)據(jù)和需要備份的現(xiàn)數(shù)據(jù),所述系統(tǒng)包括:分塊單元,配置為利用與原備份數(shù)據(jù)采用的分塊方法相同的分塊方法對(duì)現(xiàn)數(shù)據(jù)進(jìn)行第一分塊以得到當(dāng)前塊;計(jì)算單元,配置為計(jì)算當(dāng)前塊的哈希值;以及獲取單元,配置為在原備份數(shù)據(jù)的哈希值表中獲取其哈希值與計(jì)算出的當(dāng)前塊的哈希值相同的匹配塊的標(biāo)識(shí)符并將連續(xù)匹配塊的數(shù)目加一。
7.根據(jù)權(quán)利要求6的系統(tǒng),進(jìn)一步包括:判斷單元,配置為判斷連續(xù)匹配塊的數(shù)目是否超過(guò)閾值并且,響應(yīng)于未超過(guò)閾值: 分塊單元進(jìn)一步配置為利用與原備份數(shù)據(jù)采用的分塊方法相同的分塊方法繼續(xù)對(duì)現(xiàn)數(shù)據(jù)進(jìn)行第二分塊以得到新當(dāng)前塊;計(jì)算單元進(jìn)一步配置為計(jì)算新當(dāng)前塊的哈希值。
8.根據(jù)權(quán)利要求7的系統(tǒng),其中:獲取單元進(jìn)一步配置 為在原備份數(shù)據(jù)的哈希值表中獲取匹配塊的下一塊的哈希值;比較單元,配置為比較新當(dāng)前塊的哈希值與匹配塊的下一塊的哈希值,并且:響應(yīng)于新當(dāng)前塊的哈希值與匹配塊的下一塊的哈希值相同,所述系統(tǒng)進(jìn)一步配置為:將連續(xù)匹配塊的數(shù)目加一;將匹配塊的下一塊作為新匹配塊;返回判斷連續(xù)匹配塊的數(shù)目是否超過(guò)閾值;響應(yīng)于新當(dāng)前塊的哈希值與匹配塊的下一塊的哈希值不同,所述系統(tǒng)進(jìn)一步配置為: 將連續(xù)匹配塊的數(shù)目清零;返回在原備份數(shù)據(jù)的哈希值表中獲取其哈希值與計(jì)算出的當(dāng)前塊的哈希值相同的匹配塊的標(biāo)識(shí)符。
9.根據(jù)權(quán)利要求6的系統(tǒng),進(jìn)一步包括:判斷單元,配置為判斷連續(xù)匹配塊的數(shù)目是否超過(guò)閾值并且,響應(yīng)于超過(guò)閾值:獲取單元進(jìn)一步配置為獲取匹配塊的下一塊的標(biāo)識(shí)符對(duì)應(yīng)的數(shù)據(jù)塊的長(zhǎng)度。
10.根據(jù)權(quán)利要求9的系統(tǒng),進(jìn)一步包括:分塊單元進(jìn)一步配置為利用獲取的匹配塊的下一塊的標(biāo)識(shí)符對(duì)應(yīng)的數(shù)據(jù)塊的長(zhǎng)度繼續(xù)對(duì)現(xiàn)數(shù)據(jù)進(jìn)行第三分塊以得到新當(dāng)前塊;計(jì)算單元進(jìn)一步配置為計(jì)算新當(dāng)前塊的哈希值;獲取單元進(jìn)一步配置為在原備份數(shù)據(jù)的哈希值表中獲取匹配塊的下一塊的哈希值; 比較單元進(jìn)一步配置為比較新當(dāng)前塊的哈希值與匹配塊的下一塊的哈希值,并且:響應(yīng)于新當(dāng)前塊的哈希值與匹配塊的下一塊的哈希值相同,所述系統(tǒng)進(jìn)一步配置為: 將匹配塊的下一塊作為新匹配塊;返回在原備份數(shù)據(jù)的哈希值表中獲取匹配塊的下一塊的標(biāo)識(shí)符;響應(yīng)于新當(dāng)前塊的哈希值與匹配塊的下一塊的哈希值不同,所述系統(tǒng)進(jìn)一步配置為: 將連續(xù)匹配塊的數(shù)目清零;返回在原備份數(shù)據(jù)的哈希值表中獲取其哈希值與計(jì)算出的當(dāng)前塊的哈希值相同的匹配塊的標(biāo)識(shí)符。·
【文檔編號(hào)】G06F11/14GK103577278SQ201210266482
【公開(kāi)日】2014年2月12日 申請(qǐng)日期:2012年7月30日 優(yōu)先權(quán)日:2012年7月30日
【發(fā)明者】李玉猛, 李雅潔, 麥克西斯, 熊殷翔 申請(qǐng)人:國(guó)際商業(yè)機(jī)器公司
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
丰顺县| 额尔古纳市| 阿拉尔市| 江达县| 蓝田县| 湖口县| 房山区| 宜都市| 红河县| 合水县| 阿瓦提县| 泰来县| 阳新县| 临武县| 兴国县| 石台县| 和平区| 夏津县| 张北县| 岐山县| 特克斯县| 天峻县| 民县| 鄂托克前旗| 进贤县| 湾仔区| 漠河县| 崇仁县| 施秉县| 隆德县| 娄烦县| 潜山县| 罗山县| 乡城县| 新乡市| 晋城| 青神县| 西丰县| 大悟县| 天门市| 鹰潭市|