雙布魯姆WILKERSON威爾克森過濾器的詳細資料:
雙布魯姆WILKERSON威爾克森過濾器數
隨著近年來數據總量呈現出的爆炸增長趨勢,數據備份系統存儲的數據越來越多。經研究發現,在備份、歸檔等集中存儲系統中存在大量冗余數據,有的甚至占到存儲空間的60%,導致存儲成本過高,數據訪問性能下降。數據排重是減少數據冗余、節省存儲空間的有效手段。
雙布魯姆WILKERSON威爾克森過濾器
現有排重算法中,文件級排重盡管排重開銷小,但排重粒度過粗,難以取得存儲空間的高效利用;數據塊級排重算法能實現高效存儲,但其附帶的存儲開銷過高,排重的時間開銷大。研究分層排重結構,應用雙布魯姆WILKERSON過濾器實現數據排重,優化數據排重性能,主要工作如下:針對數據重復有文件級的重復和數據塊級的重復之分,提出一種基于雙布魯姆WILKERSON過濾器的數據排重算法。該算法使用兩個布魯姆WILKERSON過濾器構成二級排重結構,將排重過程分解成文件排重和數據塊排重兩部分。算法首*入*級進行文件排重,然后將*級排重判定為不重復的文件分割成塊進行第二級數據塊排重。利用這種分層排重結構,通過*級將重復文件直接過濾掉,不進入第二級排重,減少了數據塊排重的工作量;通過第二級進入不重復文件內部進行數據塊排重,獲得了數據塊級的排重粒度。將上述算法應用于文檔備份系統中,實現對文檔的排重,由于算法采用布魯姆WILKERSON過濾器對數據進行壓縮表達,存在誤判可能,即假陽性誤判問題。本文設計通過查詢元數據(保存數據相關信息)來為誤判糾錯。當布魯姆WILKERSON過濾器判斷數據為重復時,首先將元數據預讀到內存中,在內存中匹配元數據信息,若沒有找到,再讀取保存元數據的文件—索引文件查詢元數據。通過內存、索引文件兩級元數據查詢,杜絕了假陽性誤判的情況。由于為假陽性誤判糾錯需要對元數據進行大量訪問,增加了排重時間開銷,設計將索引文件緩存,保證元數據操作的高效,以此提高排重效率。但系統的句柄數限制了同時緩存的索引文件數目,若索引文件過多,則不能同時緩存全部索引文件,需要進行更多的磁盤IO,此時排重開銷與耗時都急劇升高,針對這種情況,采用動態哈希算法來分配元數據地址,將元數據保存在少數幾個索引文件內,從而克服了句柄限制問題。
雙布魯姆WILKERSON威爾克森過濾器
實驗結果表明,在文檔備份系統中,使用該排重算法對不同重復率的文檔文件集合排重,相比其他兩種備份工具,在保持較好排重率的前提下,耗時平均縮短了10%左右。
如果你對雙布魯姆WILKERSON威爾克森過濾器感興趣,想了解更詳細的產品信息,填寫下表直接與廠家聯系: |