重復數據刪除技術的發展及應用
標簽:消冗 散列識別
本文引用地址:http://www.104case.com/article/154180.htm重復數據刪除也稱為智能壓縮或單一實例存儲,是一種可自動搜索重復數據,將相同數據只保留唯一的一個副本,并使用指向單一副本的指針替換掉其他重復副本,以達到消除冗余數據、降低存儲容量需求的存儲技術。
本文首先從不同角度介紹重復數據刪除技術的分類,然后分別介紹相同數據重復數據刪除技術和相似數據重復數據刪除技術,并介紹重復數據消除的性能提升方法,最后分析重復數據技術的應用場景。
1 重復數據刪除技術的分類
1.1 基于重復內容識別方法的分類
(1)基于散列識別
該方法通過數據的散列值來判斷是否是重復數據。對于每個新數據塊都生成一個散列,如果數據塊的散列與存儲設備上散列索引中的一個散列匹配,就表明該數據塊是一個重復的數據塊。Data Domain、飛康、昆騰的DXi系列設備都是采用SHA-1、MD-5等類似的散列算法來進行重復數據刪除。
基于散列的方法存在內置的可擴展性問題。為了快速識別一個數據塊是否已經被存儲,這種基于散列的方法會在內存中擁有散列索引。隨著數據塊數量增加,該索引也隨之增長。一旦索引增長超過了設備在內存中保存它所支持的容量,性能會急速下降,同時磁盤搜索會比內存搜索更慢。因此,目前大部分基于散列的系統都是獨立的,可以保持存儲數據所需的內存量與磁盤空間量的平衡。這樣的設計使得散列表就永遠不會變得太大。
(2)基于內容識別
該方法采用內嵌在數據中的文件系統的元數據識別文件,與其數據存儲庫中的其他版本進行逐字節地比較,找到該版本與第一個已存儲版本的不同之處并為這些不同的數據創建一個增量文件。這種方法可以避免散列沖突,但是需要使用支持該功能的應用設備以便設備可以提取元數據。
(3)基于ProtecTier VTL的技術
這種方法像基于散列的方法產品那樣將數據分成塊,并且采用自有算法決定給定的數據塊是否與其他數據塊的相似,然后與相似塊中的數據進行逐字節的比較,以判斷該數據塊是否已經被存儲。
1.2 基于去重粒度的分類
(1)全文件層次的重復數據刪除
以整個文件為單位來檢測和刪除重復數據,計算整個文件的哈希值,然后根據文件哈希值查找存儲系統中是否存在相同的文件。這種方法的好處是在普通硬件條件下計算速度非常快;這種方法的缺點是即使不同文件存在很多相同的數據,也無法刪除文件中的重復數據。
(2)文件塊消冗
將一個文件按不同的方式劃分成數據塊,以數據塊為單位進行檢測。該方法的優點是計算速度快、對數據變化較敏感。
(3)字節級消冗
從字節層次查找和刪除重復的內容,一般通過差異壓縮策略生成差異部分內容。字節級消冗的優點是去重率比較高,缺點就是去重速度比較慢。
1.3 基于消冗執行次序的分類
(1)在線式消冗
在線處理的重復數據刪除是指在數據寫入磁盤之前執行重復數據刪除。其最大的優點是經濟高效,可以降低對存儲容量的需求,并且不需要用于保存還未進行重復數據刪除的數據集。在線處理的重復數據刪除減少了數據量,但同時也存在一個問題,處理本身會減慢數據吞吐速度。正是因為重復數據刪除是在寫入到磁盤之前進行的,因此重復數據刪除處理本身就是一個單點故障。
(2)后處理式消冗
后處理的重復數據刪除,也被稱為離線重復數據刪除,是在數據寫到磁盤后再執行重復數據刪除。數據先被寫入到臨時的磁盤空間,之后再開始重復數據刪除,最后將經過重復數據刪除的數據拷貝到末端磁盤。由于重復數據刪除是數據寫入磁盤后再在單獨的存儲設備上執行的,因此不會對正常業務處理造成影響。管理員可以隨意制訂重復數據刪除的進程。通常先將備份數據保留在磁盤上再進行重復數據刪除,企業在需要時可以更快速地訪問最近存儲的文件和數據。而后處理方式的最大問題在于它需要額外的磁盤空間來保存全部還未刪除的重復數據集。
1.4 基于實現層次的分類
(1)基于軟件的重復數據刪除
在軟件層次,重復數據刪除可以有兩種集成方式,即可以將軟件產品安裝在專用的服務器上實現,也可以將其集成到備份/歸檔軟件中。基于軟件的重復數據刪除的部署成本比較低;但是基于軟件的重復數據刪除在安裝中容易中斷運行,維護也更加困難。
基于軟件的重復數據刪除產品有EMC公司的Avamar軟件產品、Symantec公司的Veritas NetBackup產品以及Sepaton公司的DeltaStor存儲軟件等。
(2)基于硬件的重復數據刪除
基于硬件的重復數據刪除主要由存儲系統自己完成數據的刪減,例如:在虛擬磁帶庫系統、備份平臺或者網絡附加存儲(NAS)等一般目的的存儲系統中融入重復數據刪除機制,由這些系統自身完成重復數據刪除功能。
基于硬件的重復數據刪除的優點是高性能、可擴展性和相對無中斷部署,并且重復數據刪除操作對上層的應用都是透明的。這種設備的缺點就是部署成本比較高,要高于基于軟件的重復數據刪除。
評論