国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種差異化對比分塊的優(yōu)化方法

      文檔序號:8322316閱讀:509來源:國知局
      一種差異化對比分塊的優(yōu)化方法
      【技術(shù)領(lǐng)域】
      [0001] 本發(fā)明涉及一種數(shù)據(jù)塊對比技術(shù),具體涉及一種差異化對比分塊的優(yōu)化方法。
      【背景技術(shù)】
      [0002] 云計算技術(shù)在實際中得到了廣泛的應(yīng)用,云存儲技術(shù)也得到了快速的發(fā)展。在現(xiàn) 有網(wǎng)絡(luò)環(huán)境下,提出了將不同用戶存儲的數(shù)據(jù)快速地保存到數(shù)據(jù)中心服務(wù)器上的要求。因 為數(shù)據(jù)量大,網(wǎng)絡(luò)速度又低造成了用戶存儲數(shù)據(jù)到云端的體驗不是很好。
      [0003] 云盤就是由這種將云計算從概念轉(zhuǎn)化為實際產(chǎn)品應(yīng)用形勢下誕生的,它是云存儲 的一個應(yīng)用,怎樣減少網(wǎng)絡(luò)傳輸量是該系統(tǒng)需要重點處理的一個問題。
      [0004] Rsync是一種比較成熟的和應(yīng)用很廣泛的同步文件的一個高效算法,采用分塊和 強弱校驗值進行差異化比對,但是一般它用來對完整的文件進行比對,找出差異化數(shù)據(jù),然 后根據(jù)差異化數(shù)據(jù)還原成一個完整的文件。而由于云盤系統(tǒng)采用了分塊存儲技術(shù),對rsync 算法來說就有點不適用,因為采用分塊保存的數(shù)據(jù)會有很多塊碎片,不是固定大小的塊,而 rsync算法主要是針對固定大小的塊進行比對,只有最后一塊的大小會比固定的大小塊要 小,這樣就會造成rsync的比對效率低。
      [0005] 由于分塊存儲,在比對中產(chǎn)生的塊碎片也會隨著時間的增加變得越來越多,這樣 就造成系統(tǒng)運行的時間越長,差異化比對的性能就越差,從而造成整個企業(yè)云盤的性能會 越來越差,用戶的體驗也就會越來越不好。這樣就會讓該系統(tǒng)的后期的維護成本很高,用戶 對該產(chǎn)品的反響差,造成該產(chǎn)品不能達到預(yù)期的推廣應(yīng)用。

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

      [0006] 為了克服上述現(xiàn)有技術(shù)的不足,本發(fā)明提供一種差異化對比分塊的優(yōu)化方法。該 方法提出基于rsync的算法對數(shù)據(jù)分塊進行差異化比對的優(yōu)化算法,提高比對的效率,滿 足云存儲的實際的數(shù)據(jù)能夠被打亂并在云端的任何部分被拼接的需求。
      [0007] 為了實現(xiàn)上述發(fā)明目的,本發(fā)明采取如下技術(shù)方案:
      [0008] 一種差異化對比分塊的優(yōu)化方法,該方法步驟如下:
      [0009] (1)從服務(wù)端取得文件A的當(dāng)前版本的塊信息隊列或所有版本的塊信息隊列;
      [0010] (2)把文件A以N0、N1、N2…Nm由小至大的順序分塊,并按塊大小分類,形成N0到 Nm的隊列;
      [0011] (3)本地文件B按N0的塊大小分塊并計算出每個塊的總和校驗碼和md5值得到塊 信息列表B0_block_list;
      [0012] (4)遍歷B0_block_list,用rsync方法把遍歷后的塊信息與文件A的NO隊列中 的塊信息作差異化對比;
      [0013] (5)把文件B中沒有匹配的塊組成臨時文件B1,把文件B1按N1的塊大小進行分 塊,并計算出每個塊的總和校驗碼和md5值得到Bl_block_list;
      [0014] (6)遍歷Bl_block_list,用rsync方法把遍歷后的塊信息與文件A的N1隊列中 的塊信息作差異化對比;
      [0015] (7)循環(huán)步驟(3)到步驟(6)以此類推直到以Nm為大小進行比對,找出文件B和 文件A沒有匹配的差異化塊;
      [0016] (8)合并差異化塊;
      [0017] (9)計算合并后的差異化塊的總和校驗碼和md5值,得到有差異化塊彳目息列表。
      [0018] 本發(fā)明提供的優(yōu)選技術(shù)方案中,所述步驟(4)rsync方法的步驟如下:
      [0019] A.分別對文件A和B分割成連續(xù)不重疊的大小為S字節(jié)的數(shù)據(jù)塊;
      [0020]B.分別對文件A和B每個數(shù)據(jù)塊計算出兩個校驗值;
      [0021] C.文件B每個數(shù)據(jù)塊的校驗值與文件A每個數(shù)據(jù)塊的校驗值做比較,得出不匹配 的數(shù)據(jù)塊。
      [0022] 本發(fā)明提供的第二優(yōu)選技術(shù)方案中,所述兩個檢驗值包括32位弱滾動檢驗和128 位MD5校驗。
      [0023] 本發(fā)明提供的第三優(yōu)選技術(shù)方案中,所述32位弱滾動檢驗使用滾動檢驗算法。
      [0024] 本發(fā)明提供的第四優(yōu)選技術(shù)方案中,所述步驟(8)合并差異化塊若以Nm為大小的 差異化塊是相鄰的塊則合并大塊,最大的合并塊大小不能大于N0。
      [0025] 與最接近的現(xiàn)有技術(shù)比,本發(fā)明提供的技術(shù)方案具有如下優(yōu)異效果:
      [0026] 本發(fā)明對不同大小的數(shù)據(jù)塊進行分類比對,減少比對的次數(shù),提高比對效率;把有 差異化的塊盡量合并為大塊,減少文件操作次數(shù),提高系統(tǒng)性能;盡可能傳送大塊,節(jié)省網(wǎng) 絡(luò)傳送次數(shù),提高網(wǎng)絡(luò)利用率;只傳輸有差異化的塊,節(jié)省數(shù)據(jù)傳輸?shù)木W(wǎng)絡(luò)帶寬,降低帶寬 成本。大大降低了系統(tǒng)的后期的維護成本,極高提升了用戶對該產(chǎn)品的反響度,使產(chǎn)品可以 達到預(yù)期的推廣應(yīng)用效果。
      【附圖說明】
      [0027] 圖1是差異化對比分塊優(yōu)化方法的流程圖
      【具體實施方式】
      [0028] 下面結(jié)合附圖對本發(fā)明作進一步詳細說明。
      [0029] 如圖1所示,差異化對比分塊的優(yōu)化方法,具體步驟如下:
      [0030] (1)從服務(wù)端取得文件A的當(dāng)前版本的塊信息隊列或所有版本的塊信息隊列;
      [0031] (2)把文件A先后以NO、Nl、N2…Nm的塊大小進行分塊,并按塊大小進行分類,形 成N0到Nm的隊列;
      [0032] (3)本地文件B按N0的塊大小進行分塊并計算出每個塊的checksum(總和校驗 碼)和md5值得到塊信息列表B0_block_list;
      [0033] (4)遍歷B0_block_list,把遍歷后的塊信息與文件A的NO隊列中的塊信息用 rsync方法進行差異化對比;
      [0034] (5)把文件B中沒有匹配的塊組成臨時文件B1,把文件B1按N1的塊大小進行分 塊,并計算出每個塊的checksum(總和校驗碼)和md5值得到Bl_block_list;
      [0035] (6)遍歷Bl_block_list,把遍歷后的塊信息與文件A的N1隊列中的塊信息用 rsync方法進行差異化對比;
      [0036] (7)循環(huán)步驟(3)到步驟(6)以此類推直到以Nm為大小進行比對,找出文件B和 文件A沒有匹配的塊,這些塊就是差異化塊;
      [0037] (8)合并差異化塊,合并差異化塊若以Nm為大小的差異化塊是相鄰的塊則合并大 塊,最大的合并塊大小不能大于N0 ;
      [0038] (9)計算合并后的差異化塊的checksum(總和校驗碼)和md5值,得到有差異化塊 信息列表。
      [0039] 步驟(4)rsync方法的步驟如下:
      [0040]A.分別對文件A和B分割成連續(xù)不重疊的大小為S字節(jié)的數(shù)據(jù)塊;
      [0041]B.分別對文件A和B每個數(shù)據(jù)塊計算出兩個校驗值;
      [0042] C.文件B每個數(shù)據(jù)塊的校驗值與文件A每個數(shù)據(jù)塊的校驗值做比較,得出不匹配 的數(shù)據(jù)塊。
      [0043] 兩個檢驗值包括32位弱滾動檢驗和128位MD5校驗。
      [0044] 32位弱滾動檢驗使用滾動檢驗算法。
      [0045] 滾動檢驗算法用于快速計算數(shù)據(jù)塊的校驗值。它是一種弱校驗算法,采用的是 MarkAdler的adler-32校驗,它的定義如下:
      【主權(quán)項】
      1. 一種差異化對比分塊的優(yōu)化方法,其特征在于,該方法步驟如下: (1) 從服務(wù)端取得文件A的當(dāng)前版本的塊信息隊列或所有版本的塊信息隊列; (2) 把文件A W NO、N1、N2…Nm由小至大的順序分塊,并按塊大小分類,形成NO到Nm 的隊列; (3) 本地文件B按NO的塊大小分塊并計算出每個塊的總和校驗碼和md5值,從而得到 塊信息列表BO_block_list ; (4) 遍歷BO_block_list,用rsync方法把遍歷后的塊信息與文件A的NO隊列中的塊 信息作差異化對比; (5) 把文件B中沒有匹配的塊組成臨時文件B1,把文件B1按N1的塊大小進行分塊,并 計算出每個塊的總和校驗碼和md5值,從而得到Bl_block_list ; (6) 遍歷Bl_block_list,用rsync方法把遍歷后的塊信息與文件A的N1隊列中的塊 信息作差異化對比; (7) 循環(huán)步驟做到步驟做W此類推直到WNm為大小進行比化找出文件B和文件 A沒有匹配的差異化塊; (8) 合并差異化塊; (9) 計算合并后的差異化塊的總和校驗碼和md5值,得到有差異化塊信息列表。
      2. 根據(jù)權(quán)利要求1所述差異化對比分塊的優(yōu)化方法,其特征在于,所述步驟(4)rsync 方法的步驟如下: A. 分別對文件A和B分割成連續(xù)不重疊的大小為S字節(jié)的數(shù)據(jù)塊; B. 分別對文件A和B每個數(shù)據(jù)塊計算出兩個校驗值; C. 文件B每個數(shù)據(jù)塊的校驗值與文件A每個數(shù)據(jù)塊的校驗值做比較,得出不匹配的數(shù) 據(jù)塊。
      3. 根據(jù)權(quán)利要求2所述差異化對比分塊的優(yōu)化方法,其特征在于,所述兩個檢驗值包 括32位弱滾動檢驗和128位MD5校驗。
      4. 根據(jù)權(quán)利要求3所述差異化對比分塊的優(yōu)化方法,其特征在于,所述32位弱滾動檢 驗使用滾動檢驗算法。
      5. 根據(jù)權(quán)利要求1所述差異化對比分塊的優(yōu)化方法,其特征在于,所述步驟(8)合并差 異化塊若W Nm為大小的差異化塊是相鄰的塊則合并大塊,最大的合并塊大小不能大于NO。
      【專利摘要】本發(fā)明提供一種差異化對比分塊的優(yōu)化方法,該方法基于rsync的算法對數(shù)據(jù)分塊進行差異化比對的優(yōu)化方法,對不同大小的塊進行分類比對,減少比對次數(shù),提高比對的效率,把差異化的塊合并為大塊,減少文件操作次數(shù),提高系統(tǒng)性能。
      【IPC分類】H04L29-08
      【公開號】CN104639606
      【申請?zhí)枴緾N201410849426
      【發(fā)明人】周軍, 趙歡, 張磊, 趙曉杰, 王亮, 張晉鋒, 李帥
      【申請人】曙光信息產(chǎn)業(yè)(北京)有限公司
      【公開日】2015年5月20日
      【申請日】2014年12月29日
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1