亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種數(shù)據(jù)處理方法及裝置與流程

文檔序號:11803428閱讀:300來源:國知局
一種數(shù)據(jù)處理方法及裝置與流程
本發(fā)明涉及信息處理技術(shù)領(lǐng)域,特別是涉及一種數(shù)據(jù)處理方法及裝置。

背景技術(shù):
重復數(shù)據(jù)刪除(De-duplication)是一種數(shù)據(jù)縮減技術(shù),旨在減少存儲系統(tǒng)中使用的存儲容量或減少數(shù)據(jù)在網(wǎng)絡(luò)中的傳輸量。因此它廣泛應用于備份或廣域網(wǎng)數(shù)據(jù)傳輸?shù)膱鼍?。重復?shù)據(jù)刪除技術(shù)一般會對輸入數(shù)據(jù)先進行分塊,然后計算分塊所得每個數(shù)據(jù)塊的指紋(如哈希值),接著用該指紋在單一實例庫內(nèi)查找其對應的數(shù)據(jù)塊是否為重復塊,若為重復塊,則用一個長度短很多的索引數(shù)據(jù)(可以是該數(shù)據(jù)塊的指紋)替代該重復塊進行存儲,從而達到縮減數(shù)據(jù)的目的?,F(xiàn)有數(shù)據(jù)縮減技術(shù)中,一般是用一個索引數(shù)據(jù)對應一個重復數(shù)據(jù)塊,請參見圖1,圖1為現(xiàn)有技術(shù)的索引數(shù)據(jù)與重復數(shù)據(jù)塊對應關(guān)系示意圖。如附圖1所示,R1-Rn為索引數(shù)據(jù),D1-Dn為重復數(shù)據(jù)塊,現(xiàn)有技術(shù)中,一個索引數(shù)據(jù)與一個重復數(shù)據(jù)塊對應。這種方法存在一種缺陷,即高的重復數(shù)據(jù)刪除率和高的數(shù)據(jù)縮減率相互矛盾,具體而言,高的重復數(shù)據(jù)刪除率要求找到盡可能多的重復數(shù)據(jù)塊,因此其需要分塊所得數(shù)據(jù)塊越小越好,而高的數(shù)據(jù)縮減率要求一個索引數(shù)據(jù)可以替代盡可能多的重復數(shù)據(jù)塊,因此其需要分塊所得數(shù)據(jù)塊越大越好,故在現(xiàn)有技術(shù)中,該兩種需求存在矛盾。

技術(shù)實現(xiàn)要素:
本發(fā)明主要解決的技術(shù)問題是提供一種數(shù)據(jù)處理方法及裝置,可在不增加數(shù)據(jù)塊大小的前提下使得一個索引數(shù)據(jù)可以替代盡可能多的重復數(shù)據(jù)塊,因此可同時滿足高的重復數(shù)據(jù)刪除率和高的數(shù)據(jù)縮減率的要求。第一方面提供一種數(shù)據(jù)處理方法,包括:將源數(shù)據(jù)分成多個數(shù)據(jù)塊;判斷多個數(shù)據(jù)塊中是否包括兩個或兩個以上依次相鄰的重復數(shù)據(jù)塊,重復數(shù)據(jù)塊是指與實例庫中所存儲的實例相同的數(shù)據(jù)塊;如果是,并且實例庫中與依次相鄰的重復數(shù)據(jù)塊對應的各實例存儲的位置也是依次相鄰的,則利用一個索引數(shù)據(jù)替換依次相鄰的重復數(shù)據(jù)塊以生成目標數(shù)據(jù)。結(jié)合第一方面的實現(xiàn)方式,在第一種可能的實現(xiàn)方式中,索引數(shù)據(jù)包括區(qū)域索引段、偏移量索引段以及長度索引段,區(qū)域索引段表示各實例在實例庫中存儲的區(qū)域,偏移量索引段表示各實例中的第一個實例在區(qū)域中的位置偏移,長度索引段表示各實例的總的數(shù)據(jù)長度。第二方面提供一種數(shù)據(jù)處理方法,包括:讀取目標數(shù)據(jù),目標數(shù)據(jù)包括索引數(shù)據(jù),索引數(shù)據(jù)包括區(qū)域索引段、偏移量索引段以及長度索引段,區(qū)域索引段表示各實例在實例庫中存儲的區(qū)域,偏移量索引段表示各實例中的第一個實例在區(qū)域中的位置偏移,長度索引段表示各實例的總的數(shù)據(jù)長度,各實例是指與源數(shù)據(jù)中依次相鄰的重復數(shù)據(jù)塊對應的各實例;根據(jù)索引數(shù)據(jù)中的區(qū)域索引段、偏移量索引段以及長度索引段獲取各實例;利用各實例替換索引數(shù)據(jù)以生成源數(shù)據(jù)。第三方面提供一種數(shù)據(jù)處理裝置,包括:實例庫,用于存儲多個實例;分塊模塊,用于將源數(shù)據(jù)分成多個數(shù)據(jù)塊;處理模塊,用于判斷多個數(shù)據(jù)塊中是否包括兩個或兩個以上依次相鄰的重復數(shù)據(jù)塊,重復數(shù)據(jù)塊是指與實例庫中所存儲的實例相同的數(shù)據(jù)塊;如果是,并且實例庫中與依次相鄰的重復數(shù)據(jù)塊對應的各實例存儲的位置也是依次相鄰的,則利用一個索引數(shù)據(jù)替換依次相鄰的重復數(shù)據(jù)塊以生成目標數(shù)據(jù)。結(jié)合第三方面的實現(xiàn)方式,在第一種可能的實現(xiàn)方式中,索引數(shù)據(jù)包括區(qū)域索引段、偏移量索引段以及長度索引段,區(qū)域索引段表示各實例在實例庫中的存儲的區(qū)域,偏移量索引段表示各實例中的第一個實例在區(qū)域中的位置偏移,長度索引段用于表示各實例的總的數(shù)據(jù)長度。第四方面提供一種數(shù)據(jù)處理裝置,包括:實例庫,用于存儲多個實例;讀取模塊,用于讀取目標數(shù)據(jù),目標數(shù)據(jù)包括索引數(shù)據(jù),索引數(shù)據(jù)包括區(qū)域索引段、偏移量索引段以及長度索引段,區(qū)域索引段表示各實例在實例庫中的存儲的區(qū)域,偏移量索引段表示各實例中的第一個實例在區(qū)域中的位置偏移,長度索引段表示各實例的總的數(shù)據(jù)長度,各實例是指與源數(shù)據(jù)中依次相鄰的重復數(shù)據(jù)塊對應的各實例;查找模塊,用于根據(jù)索引數(shù)據(jù)中的區(qū)域索引段、偏移量索引段以及長度索引段獲取各實例;替代模塊,用于利用各實例替換索引數(shù)據(jù)以生成源數(shù)據(jù)。區(qū)別于現(xiàn)有技術(shù)的情況,本發(fā)明實施例的數(shù)據(jù)處理方法及裝置在判斷到多個數(shù)據(jù)塊中包括兩個或兩個以上依次相鄰的重復數(shù)據(jù)塊后,在實例庫中與依次相鄰的重復數(shù)據(jù)塊對應的各實例存儲的位置也是依次相鄰的情況下利用一個索引數(shù)據(jù)替換依次相鄰的重復數(shù)據(jù)塊以生成目標數(shù)據(jù),該方案可在不增加數(shù)據(jù)塊大小的前提下使得一個索引數(shù)據(jù)可以替代盡可能多的重復數(shù)據(jù)塊,因此可同時滿足高的重復數(shù)據(jù)刪除率和高的數(shù)據(jù)縮減率的要求。附圖說明為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作一簡單地介紹,顯而易見地,下面描述中的附圖是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。圖1為現(xiàn)有技術(shù)的索引數(shù)據(jù)與重復數(shù)據(jù)塊對應關(guān)系示意圖;圖2是本發(fā)明第一實施例的數(shù)據(jù)處理方法的流程圖;圖3是本發(fā)明第一實施例的數(shù)據(jù)處理裝置的裝置結(jié)構(gòu)示意圖;圖4是本發(fā)明第一實施例的實例庫的數(shù)據(jù)結(jié)構(gòu)示意圖;圖5為本發(fā)明第一實施例的索引數(shù)據(jù)的數(shù)據(jù)結(jié)構(gòu)示意圖;圖6是本發(fā)明第一實施例的數(shù)據(jù)處理方法應用于源數(shù)據(jù)之后的數(shù)據(jù)結(jié)構(gòu)狀態(tài)圖;圖7是本發(fā)明第二實施例的數(shù)據(jù)處理方法的流程圖;圖8是本發(fā)明第二實施例的數(shù)據(jù)處理裝置的裝置結(jié)構(gòu)示意圖;圖9是本發(fā)明第二實施例的數(shù)據(jù)處理方法應用于目標數(shù)據(jù)之后的數(shù)據(jù)結(jié)構(gòu)狀態(tài)圖;圖10是本發(fā)明第三實施例的數(shù)據(jù)處理裝置的硬件結(jié)構(gòu)示意圖;圖11是本發(fā)明第四實施例的數(shù)據(jù)處理裝置的硬件結(jié)構(gòu)示意圖;圖12為本發(fā)明的數(shù)據(jù)處理方法在一個具體應用場景中的流程圖。具體實施方式為使本發(fā)明實施例的目的、技術(shù)方案和優(yōu)點更加清楚,下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。首先請參見圖2,其中圖2是本發(fā)明第一實施例的數(shù)據(jù)處理方法的流程圖。如圖2所示,本發(fā)明的數(shù)據(jù)處理方法包括以下步驟:步驟101:將源數(shù)據(jù)分成多個數(shù)據(jù)塊。步驟102:判斷多個數(shù)據(jù)塊中是否包括兩個或兩個以上依次相鄰的重復數(shù)據(jù)塊。如果判斷結(jié)果為是,執(zhí)行步驟103,如果判斷結(jié)果為否,執(zhí)行步驟104。其中,重復數(shù)據(jù)塊是指與實例庫中所存儲的實例相同的數(shù)據(jù)塊。步驟103:在實例庫中與依次相鄰的重復數(shù)據(jù)塊對應的各實例存儲的位置是否依次相鄰,時利用一個索引數(shù)據(jù)替換依次相鄰的重復數(shù)據(jù)塊以生成目標數(shù)據(jù)。步驟104:利用一個索引數(shù)據(jù)替換一個重復數(shù)據(jù)塊以生成目標數(shù)據(jù)。在本實施例中,在判斷到多個數(shù)據(jù)塊中包括兩個或兩個以上依次相鄰的重復數(shù)據(jù)塊后,并不馬上利用一個索引數(shù)據(jù)替換一個重復數(shù)據(jù)塊,而是進一步判斷在實例庫中與依次相鄰的重復數(shù)據(jù)塊對應的各實例存儲的位置是否也是依次相鄰的,如果是,則利用一個索引數(shù)據(jù)替換依次相鄰的重復數(shù)據(jù)塊以生成目標數(shù)據(jù),該方案可在不增加數(shù)據(jù)塊大小的前提下使得一個索引數(shù)據(jù)可以替代盡可能多的重復數(shù)據(jù)塊,因此可同時滿足高的重復數(shù)據(jù)刪除率和高的數(shù)據(jù)縮減率的要求。并請參見圖3,圖3是本發(fā)明第一實施例的數(shù)據(jù)處理裝置的裝置結(jié)構(gòu)示意圖,如圖3所示,本發(fā)明的數(shù)據(jù)處理裝置包括實例庫201、分塊模塊202以及處理模塊203。其中:實例庫201用于存儲多個實例;分塊模塊202用于將源數(shù)據(jù)分成多個數(shù)據(jù)塊;處理模塊203用于判斷多個數(shù)據(jù)塊中是否包括兩個或兩個以上依次相鄰的重復數(shù)據(jù)塊,并且實例庫中與依次相鄰的重復數(shù)據(jù)塊對應的各實例存儲的位置也是依次相鄰的,則利用一個索引數(shù)據(jù)替換依次相鄰的重復數(shù)據(jù)塊以生成目標數(shù)據(jù)。其中,重復數(shù)據(jù)塊是指與實例庫中所存儲的實例相同的數(shù)據(jù)塊。而若處理模塊203判斷到多個數(shù)據(jù)塊中沒有包括兩個或兩個以上依次相鄰的重復數(shù)據(jù)塊時,則利用一個索引數(shù)據(jù)替換一個重復數(shù)據(jù)塊以生成目標數(shù)據(jù)。以下請參見圖4,圖4是本發(fā)明第一實施例的實例庫的數(shù)據(jù)結(jié)構(gòu)示意圖,如圖4所示,實例庫包括區(qū)域1、2…n,每一區(qū)域包括元數(shù)據(jù)區(qū)段與數(shù)據(jù)段區(qū)段,舉例而言,區(qū)域1包括元數(shù)據(jù)區(qū)段11以及數(shù)據(jù)段區(qū)段12,元數(shù)據(jù)區(qū)段用于存儲指紋(如哈希值),數(shù)據(jù)段區(qū)段用于存儲實例,其中一個實例對應于一個指紋。并請結(jié)合圖5進行參考,圖5為本發(fā)明第一實施例的索引數(shù)據(jù)的數(shù)據(jù)結(jié)構(gòu)示意圖,如圖3所示,基于圖4所示的實例庫的上述數(shù)據(jù)結(jié)構(gòu),本發(fā)明的索引數(shù)據(jù)可設(shè)置為包括區(qū)域索引段801、偏移量索引段802以及長度索引段803,區(qū)域索引段801表示實例庫201中與依次相鄰的重復數(shù)據(jù)塊對應的各實例在實例庫201中的區(qū)域,偏移量索引段802表示各實例中的第一個實例在實例庫201的區(qū)域中的位置偏移,長度索引段803用于表示各實例的總的數(shù)據(jù)長度。通過索引數(shù)據(jù)的區(qū)域索引段801、偏移量索引段802以及長度索引段803可找到實例庫201中與依次相鄰的重復數(shù)據(jù)塊對應的各實例,而索引數(shù)據(jù)本身的數(shù)據(jù)大小相對于其所替代的依次相鄰的重復數(shù)據(jù)塊而言很小,因此在分別將一個索引數(shù)據(jù)替代所有依次相鄰的重復數(shù)據(jù)塊之后,可以預見到,所得到的目標數(shù)據(jù)比源數(shù)據(jù)的數(shù)據(jù)量大大減少,從而有效地提高了數(shù)據(jù)縮減率。以下請進一步參見圖6,其中圖6是本發(fā)明第一實施例的數(shù)據(jù)處理方法應用于源數(shù)據(jù)之后的數(shù)據(jù)結(jié)構(gòu)狀態(tài)圖。如圖6所示,源數(shù)據(jù)601分成多個數(shù)據(jù)塊SA、SB、SC、SD、SE、SF、SG、SH。判斷多個數(shù)據(jù)塊中是否包括兩個或兩個以上依次相鄰的重復數(shù)據(jù)塊,如果判斷結(jié)果為是,這里假設(shè)數(shù)據(jù)塊SA、SB、SC、SD、SE、SF是相鄰的重復數(shù)據(jù)塊,但實例庫中與依次相鄰的重復數(shù)據(jù)塊SA、SB、SC、SD、SE、SF對應的各實例存儲的位置不是依次相鄰的,而只有SA、SB、SC、SD、SE對應的各實例在實例庫中存儲的位置是依次相鄰的,而SF對應的實例在實例庫中存儲的位置與SE對應的實例在實例庫中存儲的位置不相鄰,則利用一個索引數(shù)據(jù)R31替換依次相鄰的重復數(shù)據(jù)塊SA、SB、SC、SD、SE。另外,基于現(xiàn)有技術(shù),更利用一個索引數(shù)據(jù)R17替換重復數(shù)據(jù)塊SF,利用一個索引數(shù)據(jù)R16替換重復數(shù)據(jù)塊SH。最后,生成目標數(shù)據(jù)604,其包括R31、R17、SG、R16。因此,本發(fā)明可通過判斷實例庫中與依次相鄰的重復數(shù)據(jù)塊對應的各實例存儲的位置是否依次相鄰來找到最長匹配的兩個或兩個以上依次相鄰的重復數(shù)據(jù)塊,從而實現(xiàn)更為高效的數(shù)據(jù)縮減。在本發(fā)明中,由于單個索引數(shù)據(jù)可以代替兩個或兩個以上重復數(shù)據(jù)塊,因此可提高重復數(shù)據(jù)刪除率。在應用到廣域網(wǎng)優(yōu)化場景中時,由于重復數(shù)據(jù)刪除率的提高,本發(fā)明更可減少網(wǎng)絡(luò)數(shù)據(jù)的傳輸。請參見圖7,圖7是本發(fā)明第二實施例的數(shù)據(jù)處理方法的流程圖,如圖7所示,本發(fā)明的數(shù)據(jù)處理方法包括以下步驟:步驟301:讀取目標數(shù)據(jù),其中目標數(shù)據(jù)包括索引數(shù)據(jù),索引數(shù)據(jù)包括如圖5所示的區(qū)域索引段801、偏移量索引段802以及長度索引段803,區(qū)域索引段801表示實例庫中與源數(shù)據(jù)中依次相鄰的重復數(shù)據(jù)塊對應的各實例在實例庫中的區(qū)域,偏移量索引段802表示各實例中的第一個實例在實例庫的區(qū)域中的位置偏移,長度索引段803表示各實例的總的數(shù)據(jù)長度。步驟302:判斷是否讀取到目標數(shù)據(jù)中的索引數(shù)據(jù),如果判斷結(jié)果為是,執(zhí)行步驟303,如果判斷結(jié)構(gòu)為否,執(zhí)行步驟305。步驟303:根據(jù)索引數(shù)據(jù)中的區(qū)域索引段801、偏移量索引段802以及長度索引段803獲取實例庫中與源數(shù)據(jù)中依次相鄰的重復數(shù)據(jù)塊對應的各實例。步驟304:利用各實例替換索引數(shù)據(jù)以生成源數(shù)據(jù)。步驟305:對讀取到的數(shù)據(jù)不作處理。在本發(fā)明的第二實施例中,對第一實施例中得到的目標數(shù)據(jù)進行還原處理,根據(jù)索引數(shù)據(jù)中的區(qū)域索引段801、偏移量索引段802以及長度索引段803獲取實例庫中與源數(shù)據(jù)中依次相鄰的重復數(shù)據(jù)塊對應的各實例,并利用各實例替換索引數(shù)據(jù)以生成源數(shù)據(jù),從而實現(xiàn)了數(shù)據(jù)還原。并請參見圖8,圖8是本發(fā)明第二實施例的數(shù)據(jù)處理裝置的裝置結(jié)構(gòu)示意圖。如圖8所示,本發(fā)明第二實施例的數(shù)據(jù)處理裝置包括實例庫201、讀取模塊204、查找模塊205以及替代模塊206。其中:實例庫201用于存儲多個實例;讀取模塊204用于讀取目標數(shù)據(jù),目標數(shù)據(jù)包括索引數(shù)據(jù),索引數(shù)據(jù)包括如圖5所述的區(qū)域索引段801、偏移量索引段802以及長度索引段803,區(qū)域索引段801表示實例庫201中與源數(shù)據(jù)中依次相鄰的重復數(shù)據(jù)塊對應的各實例在實例庫201中存儲的區(qū)域,偏移量索引段802表示各實例中的第一個實例在區(qū)域中的位置偏移,長度索引段803表示各實例的總的數(shù)據(jù)長度;查找模塊205用于根據(jù)索引數(shù)據(jù)中的區(qū)域索引段801、偏移量索引段802以及長度索引段803獲取實例庫201中與源數(shù)據(jù)中依次相鄰的重復數(shù)據(jù)塊對應的各實例;替代模塊206用于利用各實例替換索引數(shù)據(jù)以生成源數(shù)據(jù)。以下請進一步參見圖9,其中圖9是本發(fā)明第二實施例的數(shù)據(jù)處理方法應用于目標數(shù)據(jù)之后的數(shù)據(jù)結(jié)構(gòu)狀態(tài)圖。如圖9所示,目標數(shù)據(jù)604包括R31、R17、SG、R16。在讀取到索引數(shù)據(jù)R31時,根據(jù)索引數(shù)據(jù)R31中的區(qū)域索引段、偏移量索引段以及長度索引段找到實例庫201中與源數(shù)據(jù)中依次相鄰的重復數(shù)據(jù)塊SA、SB、SC、SD、SE對應的各實例,并將各實例替換索引數(shù)據(jù)R31。在讀取到索引數(shù)據(jù)R1或R167時,根據(jù)索引數(shù)據(jù)R17或R167獲取實例庫201中與重復數(shù)據(jù)塊SE或SH對應的實例,并將對應實例替換索引數(shù)據(jù)R1或R167。最后,生成源數(shù)據(jù)601。進一步地,請參見圖10,圖10是本發(fā)明第三實施例的數(shù)據(jù)處理裝置的硬件結(jié)構(gòu)示意圖,如圖10所示,本發(fā)明第三實施例所揭示的數(shù)據(jù)處理裝置包括存儲器401、處理器402以及總線403,存儲器401、處理器402分別與總線403耦接以進行數(shù)據(jù)交互,其中:存儲器401用于存儲實例庫和程序,實例庫中存儲有多個實例;該程序包括:將源數(shù)據(jù)分成多個數(shù)據(jù)塊;判斷多個數(shù)據(jù)塊中是否包括兩個或兩個以上依次相鄰的重復數(shù)據(jù)塊,重復數(shù)據(jù)塊是指與實例庫中所存儲的實例相同的數(shù)據(jù)塊;如果是,并且實例庫中與依次相鄰的重復數(shù)據(jù)塊對應的各實例存儲的位置也是依次相鄰的,則利用一個索引數(shù)據(jù)替換依次相鄰的重復數(shù)據(jù)塊以生成目標數(shù)據(jù)。處理器402用于執(zhí)行上述程序。其中,所述的索引數(shù)據(jù)包括區(qū)域索引段、偏移量索引段以及長度索引段,區(qū)域索引段表示各實例在實例庫中存儲的區(qū)域,偏移量索引段表示各實例中的第一個實例在區(qū)域中的位置偏移,長度索引段用于表示各實例的總的數(shù)據(jù)長度。因此,在對目標數(shù)據(jù)進行數(shù)據(jù)恢復以獲取到源數(shù)據(jù)時,由于本發(fā)明中一個索引數(shù)據(jù)可以替代兩個或兩個以上的重復數(shù)據(jù)塊,因此可以減少數(shù)據(jù)處理次數(shù),從而提高數(shù)據(jù)處理速度。以下請參見圖11,圖11是本發(fā)明第四實施例的數(shù)據(jù)處理裝置的硬件結(jié)構(gòu)示意圖,如圖11所示,本發(fā)明第四實施例所揭示的數(shù)據(jù)處理裝置包括存儲器501、處理器502以及總線503,存儲器501、處理器502分別與總線503耦接以進行數(shù)據(jù)交互,其中:存儲器501用于存儲實例庫和程序,實例庫中存儲有多個實例。該程序包括:讀取目標數(shù)據(jù),該目標數(shù)據(jù)包括索引數(shù)據(jù),索引數(shù)據(jù)包括區(qū)域索引段、偏移量索引段以及長度索引段,區(qū)域索引段表示各實例在實例庫中存儲的區(qū)域,偏移量索引段表示各實例中的第一個實例在實例庫的區(qū)域中的位置偏移,長度索引段表示各實例的總的數(shù)據(jù)長度;根據(jù)索引數(shù)據(jù)中的區(qū)域索引段、偏移量索引段以及長度索引段獲取實例庫中與源數(shù)據(jù)中依次相鄰的重復數(shù)據(jù)塊對應的各實例;利用各實例替換索引數(shù)據(jù)以生成源數(shù)據(jù)。其中,上述的各實例為實例庫中與源數(shù)據(jù)中依次相鄰的重復數(shù)據(jù)塊對應的各實例。處理器502用于執(zhí)行上述程序。以下請參見圖12,圖12為本發(fā)明的數(shù)據(jù)處理方法在一個具體應用場景中的流程圖。其中,在該應用場景中,利用流程圖方式從另一個角度對本發(fā)明的數(shù)據(jù)處理方法的發(fā)明思想進行說明,從而使得本領(lǐng)域技術(shù)人員可以進一步清楚認識到本發(fā)明的數(shù)據(jù)處理方法是如何應用于實際中的。如圖12所示,該流程圖包括以下步驟:步驟901:接收源數(shù)據(jù)。步驟902:收到的源數(shù)據(jù)進行分塊,得出M個數(shù)據(jù)塊。步驟903:設(shè)輔助變量k=1,j=0,其中k代表目前所處理的是第幾個數(shù)據(jù)塊,j代表發(fā)現(xiàn)重復數(shù)據(jù)塊的數(shù)量。步驟904:判斷k是否大于M,若k>M則認為處理完所有數(shù)據(jù)塊,跳至步驟905,反之則執(zhí)行步驟906。步驟905:退出本流程。步驟906:在實例庫中檢索數(shù)據(jù)塊Dk。步驟907:判斷Dk是否為重復數(shù)據(jù)塊,若是,則執(zhí)行步驟910,若否,則執(zhí)行步驟908。步驟908:將Dk插入實例庫中。步驟909:將k進行加1處理,以表示對Dk分塊處理完畢,從而返回步驟904,以對與其相鄰的數(shù)據(jù)塊進行處理。步驟910:設(shè)實例庫中與重復數(shù)據(jù)塊Dk相同的實例為Ci。步驟911:令j=j+1,即j=0+1=1。步驟912:判斷Dk+j(即Dk+1,意為與Dk相鄰的數(shù)據(jù)塊)與實例庫中的實例Ci+j(即Ci+1)是否相同,若是,返回步驟911,繼續(xù)判斷Dk+j(即Dk+2,意為與Dk+1相鄰的數(shù)據(jù)塊)與實例庫中的實例Ci+j(即Ci+2)是否相同,若否,執(zhí)行步驟913。步驟913:用索引數(shù)據(jù)替代Dk到Dk+j-1之間所有數(shù)據(jù)塊。步驟914:設(shè)置k=k+j;j=0,并返回步驟904,將Dk視為新的數(shù)據(jù)塊進行上述處理。因此,本發(fā)明的總的思想是發(fā)現(xiàn)一個重復數(shù)據(jù)塊后,并不立即用一個索引數(shù)據(jù)表示該重復數(shù)據(jù)塊,而是繼續(xù)將該數(shù)據(jù)塊之后的彼此相鄰的數(shù)據(jù)塊繼續(xù)和實例庫中對應的重復數(shù)據(jù)塊之后的數(shù)據(jù)塊進行比較,找到最長的匹配之后,用一個索引數(shù)據(jù)替代相鄰的至少兩個重復數(shù)據(jù)塊。該方案可在不增加數(shù)據(jù)塊大小的前提下使得一個索引數(shù)據(jù)可以替代盡可能多的重復數(shù)據(jù)塊,因此可同時滿足高的重復數(shù)據(jù)刪除率和高的數(shù)據(jù)縮減率的要求。另外,在本申請所提供的幾個實施方式中,應該理解到,所揭露的系統(tǒng),裝置和方法,可以通過其它的方式實現(xiàn)。例如,以上所描述的裝置實施例實施方式僅僅是示意性的,例如,所述模塊或單元的劃分,僅僅為一種邏輯功能劃分,實際實現(xiàn)時可以有另外的劃分方式,例如多個單元或組件可以結(jié)合或者可以集成到另一個系統(tǒng),或一些特征可以忽略,或不執(zhí)行。另一點,所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些接口,裝置或單元的間接耦合或通信連接,可以是電性,機械或其它的形式。所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個地方,或者也可以分布到多個網(wǎng)絡(luò)單元上??梢愿鶕?jù)實際的需要選擇其中的部分或者全部單元來實現(xiàn)本實施例實施方式方案的目的。另外,在本申請各個實施例實施方式中的各功能單元可以集成在一個處理單元中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個單元中。上述集成的單元既可以采用硬件的形式實現(xiàn),也可以采用軟件功能單元的形式實現(xiàn)。所述集成的單元如果以軟件功能單元的形式實現(xiàn)并作為獨立的產(chǎn)品銷售或使用時,可以存儲在一個計算機可讀取存儲介質(zhì)中。基于這樣的理解,本申請的技術(shù)方案本質(zhì)上或者說對現(xiàn)有技術(shù)做出貢獻的部分或者該技術(shù)方案的全部或部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計算機軟件產(chǎn)品存儲在一個存儲介質(zhì)中,包括若干指令用以使得一臺計算機設(shè)備(可以是個人計算機,服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)或處理器(processor)執(zhí)行本申請各個實施例實施方式所述方法的全部或部分步驟。而前述的存儲介質(zhì)包括:U盤、移動硬盤、只讀存儲器(ROM,Read-OnlyMemory)、隨機存取存儲器(RAM,RandomAccessMemory)、磁碟或者光盤等各種可以存儲程序代碼的介質(zhì)。以上所述僅為本發(fā)明的實施例,并非因此限制本發(fā)明的專利范圍,凡是利用本發(fā)明說明書及附圖內(nèi)容所作的等效結(jié)構(gòu)或等效流程變換,或直接或間接運用在其他相關(guān)的技術(shù)領(lǐng)域,均同理包括在本發(fā)明的專利保護范圍內(nèi)。
當前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1