国产精品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>

      基于重復(fù)數(shù)據(jù)刪除的數(shù)據(jù)壓縮方法和裝置的制作方法

      文檔序號:6397721閱讀:280來源:國知局

      專利名稱::基于重復(fù)數(shù)據(jù)刪除的數(shù)據(jù)壓縮方法和裝置的制作方法
      技術(shù)領(lǐng)域
      :本發(fā)明總體上涉及計算機領(lǐng)域,更具體地,涉及基于重復(fù)數(shù)據(jù)刪除的數(shù)據(jù)壓縮方法和裝置。
      背景技術(shù)
      :隨著信息化技術(shù)的發(fā)展和深入,企業(yè)對數(shù)據(jù)的依賴不斷增強。與此同吋,急速增長的數(shù)據(jù)量也給管理和使用都帶來了全新的挑戰(zhàn)。面對數(shù)據(jù)的爆炸性增長,僅僅提高系統(tǒng)運算能力和增加存儲介質(zhì)容量已經(jīng)不能滿足高速發(fā)展的各種數(shù)據(jù)應(yīng)用,對高效數(shù)據(jù)縮減技術(shù)的需求已經(jīng)逐步顯現(xiàn)出來,并且越來越迫切。目前能夠?qū)崿F(xiàn)數(shù)據(jù)縮減的技術(shù)主要有兩種數(shù)據(jù)壓縮和重復(fù)數(shù)據(jù)刪除。數(shù)據(jù)壓縮技術(shù)通過對數(shù)據(jù)重新編碼來降低其冗余度;而重復(fù)數(shù)據(jù)刪除技術(shù)則著眼于刪除重復(fù)出現(xiàn)的數(shù)據(jù)塊。數(shù)據(jù)壓縮的基本原理如下首先,數(shù)據(jù)中間常存在一些多余成分,既冗余度。如在一份計算機文件中,某些符號會重復(fù)出現(xiàn)、某些符號比其他符號出現(xiàn)得更頻繁、某些字符總是在各數(shù)據(jù)塊中可預(yù)見的位置上出現(xiàn)等,這些冗余部分便可在數(shù)據(jù)編碼中除去或減少。冗余度壓縮是ー個可逆過程,因此叫做無失真壓縮,或稱保持型編碼。其次,數(shù)據(jù)中間尤其是相鄰的數(shù)據(jù)之間,常存在著相關(guān)性。如圖片中常常有色彩均勻的背影,電視信號的相鄰兩幀之間可能只有少量的變化影物是不同的,聲音信號有時具有一定的規(guī)律性和周期性等等。因此,有可能利用某些變換來盡可能地去掉這些相關(guān)性。但這種變換有時會帶來不可恢復(fù)的損失和誤差,因此叫做不可逆壓縮,或稱有失真編碼、摘壓縮等。此外,人們在欣賞音像節(jié)目吋,由于耳、目對信號的時間變化和幅度變化的感受能力都有一定的極限,如人眼對影視節(jié)目有視覺暫留效應(yīng),人眼或人耳對低于某一極限的幅度變化已無法感知等,故可將信號中這部分感覺不出的分量壓縮掉或“掩蔽棹”。這種壓縮方法同樣是ー種不可逆壓縮。ー種數(shù)據(jù)縮減技術(shù),通常用于基于磁盤的備份系統(tǒng),g在減少存儲系統(tǒng)中使用的存儲容量。它的工作方式是在某個時間周期內(nèi)查找不同文件中不同位置的重復(fù)可變大小數(shù)據(jù)塊。重復(fù)的數(shù)據(jù)塊用指示符取代。高度冗余的數(shù)據(jù)集(例如備份數(shù)據(jù))從數(shù)據(jù)重復(fù)刪除技術(shù)的獲益極大;用戶可以實現(xiàn)10比I至50比I的縮減比。而且,重復(fù)數(shù)據(jù)刪除技術(shù)可以允許用戶的不同站點之間進(jìn)行高效,經(jīng)濟的備份數(shù)據(jù)復(fù)制。備份設(shè)備中總是充斥著大量的冗余數(shù)據(jù)。為了解決這個問題,節(jié)省更多空間,“重復(fù)刪除”技術(shù)便順理成章地成了人們關(guān)注的焦點。采用“重復(fù)刪除”技術(shù)可以將存儲的數(shù)據(jù)縮減為原來的1/20,從而讓出更多的備份空間,不僅可以使磁盤上的備份數(shù)據(jù)保存更長的時間,而且還可以節(jié)約離線存儲時所需的大量的帶寬。數(shù)據(jù)壓縮技術(shù)可以降低數(shù)據(jù)塊內(nèi)部的冗余,重復(fù)數(shù)據(jù)刪除技術(shù)可以降低數(shù)據(jù)塊之間的冗余,然而,現(xiàn)有技術(shù)中并未披露過將兩者有機結(jié)合的任何技術(shù)方案。
      發(fā)明內(nèi)容為此,本發(fā)明提供了一種基于重復(fù)數(shù)據(jù)刪除的數(shù)據(jù)壓縮方法,包括以下步驟將原文件分割成多個數(shù)據(jù)塊;使用MD5算法計算多個數(shù)據(jù)塊的哈希指紋;在哈希表中查詢哈希指紋;當(dāng)哈希表中不存在哈希指紋時,使用lz77算法將多個數(shù)據(jù)塊壓縮后保存在.data文件中,并將至少包括指紋和數(shù)據(jù)塊偏移量的信息保存在哈希表中;將數(shù)據(jù)塊偏移量、數(shù)據(jù)塊長度保存在.meta文件中;當(dāng)所有的數(shù)據(jù)塊均處理完成后,將至少包括文件名、數(shù)據(jù)塊個數(shù)、meta文件長度的信息作為元數(shù)據(jù)保存在.meta文件的尾部;將.meta文件追加到.data文件的尾部;以及重命名.data文件。其中,當(dāng)哈希表中存在哈希指紋時,直接將數(shù)據(jù)塊偏移量、數(shù)據(jù)塊長度保存在.meta文件中。其中,在將.meta文件追加到.data文件的尾部之后,刪除.meta文件。其中,在進(jìn)行解壓操作時,根據(jù)元數(shù)據(jù)逐步解壓多個數(shù)據(jù)塊,將原文件還原。此外,還提供了一種基于重復(fù)數(shù)據(jù)刪除的數(shù)據(jù)壓縮裝置,包括分割模塊,用于將原文件分割成多個數(shù)據(jù)塊;計算模塊,用于使用MD5算法計算多個數(shù)據(jù)塊的哈希指紋;查詢模塊,用于在哈希表中查詢哈希指紋;第一保存模塊,用于在哈希表中不存在哈希指紋時,使用lz77算法將多個數(shù)據(jù)塊壓縮后保存在.data文件中,并將至少包括指紋和數(shù)據(jù)塊偏移量的信息保存在哈希表中;第二保存模塊,用于將數(shù)據(jù)塊偏移量、數(shù)據(jù)塊長度保存在.meta文件中;第三保存模塊,用于當(dāng)所有的數(shù)據(jù)塊均處理完成后,將至少包括文件名、數(shù)據(jù)塊個數(shù)、.meta文件長度的信息作為元數(shù)據(jù)保存在.meta文件的尾部;追加模塊,用于將.meta文件追加到.data文件的尾部;以及重命名模塊,用于重命名.data文件。其中,當(dāng)哈希表中存在哈希指紋時,直接通過第二保存模塊將數(shù)據(jù)塊偏移量、數(shù)據(jù)塊長度保存在.meta文件中。其中,在將.meta文件追加到.data文件的尾部之后,刪除.meta文件。其中,在進(jìn)行解壓操作時,根據(jù)元數(shù)據(jù)逐步解壓多個數(shù)據(jù)塊,將原文件還原。當(dāng)結(jié)合附圖進(jìn)行閱讀時,根據(jù)下面詳細(xì)的描述可以更好地理解本發(fā)明。應(yīng)該強調(diào)的是,根據(jù)エ業(yè)中的標(biāo)準(zhǔn)實踐,各種部件沒有被按比例繪制。實際上,為了清楚的討論,各種部件的尺寸可以被任意增加或減少圖1是示出了根據(jù)本發(fā)明的示例性實施例的基于重復(fù)數(shù)據(jù)刪除的數(shù)據(jù)壓縮方法的流程圖;以及圖2是示出了根據(jù)本發(fā)明的示例性實施例的基于重復(fù)數(shù)據(jù)刪除的數(shù)據(jù)壓縮裝置的框圖。具體實施例方式為了實施本發(fā)明的不同部件,以下描述提供了許多不同的實施例或示例。以下描述元件和布置的特定示例以簡化本發(fā)明。當(dāng)然這些僅僅是示例并不打算限定。再者,以下描述中第一部件形成在第二部件上可包括其中第一和第二部件以直接接觸形成的實施例,并且也可包括其中額外的部件形成插入到第一和第二部件中的實施例,使得第一和第二部件不直接接觸。為了簡明和清楚,可以任意地以不同的尺寸繪制各種部件。在本實施例中,如圖1所示,提供了一種基于重復(fù)數(shù)據(jù)刪除的數(shù)據(jù)壓縮方法,包括以下步驟將原文件分割成多個數(shù)據(jù)塊;使用MD5算法計算這些數(shù)據(jù)塊的哈希指紋,即計算數(shù)據(jù)塊的md5值;在哈希表hashtable中查詢哈希指紋;當(dāng)哈希表中不存在哈希指紋時,使用lz77算法將多個數(shù)據(jù)塊壓縮后保存在.data文件中,并將至少包括指紋和數(shù)據(jù)塊偏移量的信息保存在哈希表中;將數(shù)據(jù)塊偏移量、數(shù)據(jù)塊長度保存在.meta文件中;當(dāng)所有的數(shù)據(jù)塊均處理完成后,將至少包括文件名、數(shù)據(jù)塊個數(shù)、.meta文件長度的信息作為元數(shù)據(jù)保存在.meta文件的尾部;將.meta文件追加到.data文件的尾部;以及重命名.data文件。MD5算法即Message-DigestAlgorithm5(信息-摘要算法5),用于確保信息傳輸完整一致。是計算機廣泛使用的雜湊算法之一(又譯摘要算法、哈希算法),主流編程語言普遍已有MD5實現(xiàn)。lz77算法是ー種基于字典的無損數(shù)據(jù)壓縮算法。.meta文件是存放元數(shù)據(jù)信息的文件。.data文件是存放數(shù)據(jù)塊的文件。優(yōu)選地,當(dāng)哈希表中存在哈希指紋時,直接將數(shù)據(jù)塊偏移量、數(shù)據(jù)塊長度保存在.meta文件中。優(yōu)選地,在將.meta文件追加到.data文件的尾部之后,刪除.meta文件。優(yōu)選地,在進(jìn)行解壓操作時,根據(jù)元數(shù)據(jù)逐步解壓多個數(shù)據(jù)塊,將原文件還原。此外,如圖2所示,還提供了一種基于重復(fù)數(shù)據(jù)刪除的數(shù)據(jù)壓縮裝置,包括分割模塊201,用于將原文件分割成多個數(shù)據(jù)塊;計算模塊203,用于使用MD5算法計算多個數(shù)據(jù)塊的哈希指紋;查詢模塊205,用于在哈希表中查詢哈希指紋;第一保存模塊207,用于在哈希表中不存在哈希指紋時,使用lz77算法將多個數(shù)據(jù)塊壓縮后保存在.data文件中,并將至少包括指紋和數(shù)據(jù)塊偏移量的信息保存在哈希表中;第二保存模塊209,用于將數(shù)據(jù)塊偏移量、數(shù)據(jù)塊長度保存在.meta文件中;第三保存模塊211,用于當(dāng)所有的數(shù)據(jù)塊均處理完成后,將至少包括文件名、數(shù)據(jù)塊個數(shù)、.meta文件長度的信息作為元數(shù)據(jù)保存在.meta文件的尾部;追加模塊213,用于將.meta文件追加到.data文件的尾部;以及重命名模塊215,用于重命名data文件。優(yōu)選地,當(dāng)哈希表中存在哈希指紋時,直接通過第二保存模塊將數(shù)據(jù)塊偏移量、數(shù)據(jù)塊長度保存在.meta文件中。本發(fā)明將數(shù)據(jù)壓縮技術(shù)和重復(fù)數(shù)據(jù)刪除技術(shù)進(jìn)行了有機結(jié)合,產(chǎn)生了一種新的數(shù)據(jù)壓縮方法,提高了數(shù)據(jù)壓縮率。上面論述了若干實施例的部件,使得本領(lǐng)域普通技術(shù)人員可以更好地理解本發(fā)明的各個方面。本領(lǐng)域普通技術(shù)人員應(yīng)該理解,可以很容易地使用本發(fā)明作為基礎(chǔ)來設(shè)計或更改其他用于達(dá)到與這里所介紹實施例相同的目的和/或?qū)崿F(xiàn)相同優(yōu)點的處理和結(jié)構(gòu)。本領(lǐng)域普通技術(shù)人員也應(yīng)該意識到,這種等效構(gòu)造并不背離本發(fā)明的精神和范圍,并且在不背離本發(fā)明的精神和范圍的情況下,可以進(jìn)行多種變化、替換以及改變。權(quán)利要求1.一種基于重復(fù)數(shù)據(jù)刪除的數(shù)據(jù)壓縮方法,其特征在于,包括以下步驟將原文件分割成多個數(shù)據(jù)塊;使用MD5算法計算所述多個數(shù)據(jù)塊的哈希指紋;在哈希表中查詢所述哈希指紋;當(dāng)所述哈希表中不存在所述哈希指紋時,使用1ζ77算法將所述多個數(shù)據(jù)塊壓縮后保存在.data文件中,并將至少包括指紋和數(shù)據(jù)塊偏移量的信息保存在所述哈希表中;將數(shù)據(jù)塊偏移量、數(shù)據(jù)塊長度保存在.meta文件中;當(dāng)所有的數(shù)據(jù)塊均處理完成后,將至少包括文件名、數(shù)據(jù)塊個數(shù)、.meta文件長度的信息作為元數(shù)據(jù)保存在.meta文件的尾部;將.meta文件追加到.data文件的尾部;以及重命名.data文件。2.根據(jù)權(quán)利要求1所述的方法,其特征在于,當(dāng)所述哈希表中存在所述哈希指紋時,直接將數(shù)據(jù)塊偏移量、數(shù)據(jù)塊長度保存在.meta文件中。3.根據(jù)權(quán)利要求1所述的方法,其特征在于,在將.meta文件追加到.data文件的尾部之后,刪除.meta文件。4.根據(jù)權(quán)利要求1所述的方法,其特征在于,在進(jìn)行解壓操作時,根據(jù)所述元數(shù)據(jù)逐步解壓所述多個數(shù)據(jù)塊,將所述原文件還原。5.一種基于重復(fù)數(shù)據(jù)刪除的數(shù)據(jù)壓縮裝置,其特征在于,包括分割模塊,用于將原文件分割成多個數(shù)據(jù)塊;計算模塊,用于使用MD5算法計算所述多個數(shù)據(jù)塊的哈希指紋;查詢模塊,用于在哈希表中查詢所述哈希指紋;第一保存模塊,用于在所述哈希表中不存在所述哈希指紋時,使用1ζ77算法將所述多個數(shù)據(jù)塊壓縮后保存在.data文件中,并將至少包括指紋和數(shù)據(jù)塊偏移量的信息保存在所述哈希表中;第二保存模塊,用于將數(shù)據(jù)塊偏移量、數(shù)據(jù)塊長度保存在.meta文件中;第三保存模塊,用于當(dāng)所有的數(shù)據(jù)塊均處理完成后,將至少包括文件名、數(shù)據(jù)塊個數(shù)、.meta文件長度的信息作為元數(shù)據(jù)保存在.meta文件的尾部;追加模塊,用于將.meta文件追加到.data文件的尾部;以及重命名模塊,用于重命名.data文件。6.根據(jù)權(quán)利要求5所述的方法,其特征在于,當(dāng)所述哈希表中存在所述哈希指紋時,直接通過所述第二保存模塊將數(shù)據(jù)塊偏移量、數(shù)據(jù)塊長度保存在.meta文件中。7.根據(jù)權(quán)利要求5所述的方法,其特征在于,在將.meta文件追加到.data文件的尾部之后,刪除.meta文件。8.根據(jù)權(quán)利要求5所述的方法,其特征在于,在進(jìn)行解壓操作時,根據(jù)所述元數(shù)據(jù)逐步解壓所述多個數(shù)據(jù)塊,將所述原文件還原。全文摘要本發(fā)明提供了一種基于重復(fù)數(shù)據(jù)刪除的數(shù)據(jù)壓縮方法,包括以下步驟將原文件分割成多個數(shù)據(jù)塊;使用MD5算法計算多個數(shù)據(jù)塊的哈希指紋;在哈希表中查詢哈希指紋;當(dāng)哈希表中不存在哈希指紋時,使用lz77算法將多個數(shù)據(jù)塊壓縮后保存在.data文件中,并將至少包括指紋和數(shù)據(jù)塊偏移量的信息保存在哈希表中;將數(shù)據(jù)塊偏移量、數(shù)據(jù)塊長度保存在.meta文件中;當(dāng)所有的數(shù)據(jù)塊均處理完成后,將至少包括文件名、數(shù)據(jù)塊個數(shù)、.meta文件長度的信息作為元數(shù)據(jù)保存在.meta文件的尾部;將.meta文件追加到.data文件的尾部;以及重命名.data文件。文檔編號G06F17/30GK103020317SQ20131000934公開日2013年4月3日申請日期2013年1月10日優(yōu)先權(quán)日2013年1月10日發(fā)明者彭成,付根希,姜國梁,苗艷超,劉新春,邵宗有申請人:曙光信息產(chǎn)業(yè)(北京)有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1