欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

基于數(shù)據(jù)相似的平衡聚類壓縮方法

文檔序號:6575717閱讀:259來源:國知局
專利名稱:基于數(shù)據(jù)相似的平衡聚類壓縮方法
技術(shù)領(lǐng)域
本發(fā)明涉及數(shù)據(jù)壓縮、分布式存儲歸檔與數(shù)據(jù)挖掘領(lǐng)域,特別是涉及一種 基于數(shù)據(jù)相似的平衡聚類壓縮方法。
背景技術(shù)
隨著信息總量的爆炸式增長,海量分布式存儲系統(tǒng)已經(jīng)成為當(dāng)前各種互聯(lián) 網(wǎng)應(yīng)用的核心設(shè)施,分布式存儲系統(tǒng)的性能直接決定著整個信息系統(tǒng)性能。在 分布式存儲系統(tǒng)中,除了小部分熱點數(shù)據(jù)之外,很大一部分數(shù)據(jù)根本很少被訪 問,但卻占用了大量的存儲空間和系統(tǒng)資源,因此壓縮和歸檔此類數(shù)據(jù)可以在 不降低用戶體驗的前提下,減少系統(tǒng)資源占用,節(jié)省成本。
通用的壓縮方法只針對單個文件進行壓縮,不能利用文件之間的數(shù)據(jù)冗余 性,壓縮比非常有限。另外,學(xué)術(shù)界提出各種方法雖然能夠利用文件之間的數(shù) 據(jù)冗余,但是計算量過大,執(zhí)行效率不足,而且這些方法很少考慮壓縮后數(shù)據(jù) 的存儲問題,沒有針對海量分布式存儲系統(tǒng)進行優(yōu)化,容易造成數(shù)據(jù)之間的依 賴性和系統(tǒng)負載不均。

發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種基于數(shù)據(jù)相似的平衡聚類壓縮方法,根據(jù)文件 數(shù)據(jù)相似性對文件集進行聚類,得到較為均勻的聚類結(jié)果,即每類幾乎包含相
同數(shù)據(jù)量,然后利用DELTA壓縮或者BMCOM等壓縮方法壓逐類縮聚類結(jié)果。 本發(fā)明的目的是通過以下技術(shù)方案來實現(xiàn)的 一種基于數(shù)據(jù)相似的平衡聚
類壓縮方法,包括以下步驟-
(l)文件特征向量提取,從文件數(shù)據(jù)中提取特征向量用于計算文件相似度。 第一步,選擇一個窗口長度w和&個整數(shù)域上的獨立置換函數(shù)^;, /22,…,
&},每個置換函數(shù)相互獨立;
第二步,從前往后逐字節(jié)掃描輸入文件/,利用高效的Rabin指紋函數(shù),計算當(dāng)前滑動窗口內(nèi)數(shù)據(jù)的指紋,記該指紋為》,利用上述A個獨立置換函數(shù)作
用于指紋》,得到A:個置換指紋&OK), ^砂),…,^砂),記文件/的特征向量F(^為(F;必,^仿,…,&09},特征向量的第/維F必等于第!'個置換函數(shù)所產(chǎn)生的置換指紋的最小值,即F^^MIN(F,切,
第三步,掃描完整個文件之后,可計算出文件的特征向量F()9,文件數(shù)據(jù)相似度 ,"根據(jù)文件;c和_y的特征向量定義為li^」nF關(guān)/^WuF關(guān);
(2)聚類樣本選取,即從輸入數(shù)據(jù)集D中選取部分數(shù)據(jù)作為樣本數(shù)據(jù)集,即樣本數(shù)據(jù)集為&
第一步,計算關(guān)鍵數(shù)據(jù)集,關(guān)鍵數(shù)據(jù)集XD的定義是存在高相似副本的文件集合,即^XH羋eD/s(3;;eD7f3c,力3)}, f是0到1之間的一個較大實數(shù),關(guān)鍵數(shù)據(jù)集中的數(shù)據(jù)通常具有比較高的可壓縮性,能對最終壓縮比產(chǎn)生比較大的影響;
準確計算關(guān)鍵數(shù)據(jù)集XD的計算量較大,其時間復(fù)雜度為0(|Z)|2),因此利用超級指紋快速檢測高相似數(shù)據(jù);超級指紋是根據(jù)多個文件指紋計算的哈希值,如果兩個數(shù)據(jù)具有相同的超級指紋,那么它們擁有很多相同的文件指紋,因此它們的相似度比較高;關(guān)鍵數(shù)據(jù)集的詳細估算方法如下
(g) 選擇一個正整數(shù)/和w,和一個隨機哈希函數(shù)/7;
(h) 循環(huán)執(zhí)行步驟c)和e)共/次;
(i) 隨機選擇w個小于A:的正整數(shù)",/2,…,zw};
(j)對于每個文件/,利用哈希函數(shù)/Z和特征向量i^)的第^ /2,…,/w維計算超級指紋彌,即彌=(/)□...□&(/》;
(k) 以沙為關(guān)鍵字記錄(沙,/)到超級指紋哈希表wr,即
(1)掃描哈希表SKT,對于哈希表中的每個超級指紋^9,計算集合5F775^/中數(shù)據(jù)的兩兩相似度,如果x, ;;eD,那么x和;;都屬于關(guān)鍵數(shù)據(jù)集,因此更新關(guān)鍵數(shù)據(jù)集XD為iOXj{jc,力;第二步,計算超級數(shù)據(jù),超級數(shù)據(jù)是多個關(guān)鍵數(shù)據(jù)合并而成的虛擬數(shù)據(jù),任意超級數(shù)據(jù)s是關(guān)鍵數(shù)據(jù)集的子集,即s^D,超級數(shù)據(jù)中包含的數(shù)據(jù)相似度比較高,因此合并這些數(shù)據(jù),把它們當(dāng)作整體來處理,可以提高聚類質(zhì)量,此外,合并成超級數(shù)據(jù)可以減少聚類方法的輸入數(shù)據(jù),提高聚類性能;超級數(shù)據(jù)及樣本數(shù)據(jù)集S的構(gòu)建方法如下
h)按照相似度r(3c,力排序關(guān)鍵數(shù)據(jù)集XD中的高相似文件對f^ ^,得到優(yōu)先級隊列0;i)循環(huán)執(zhí)行步驟c)-g),直到隊列g(shù)為空;
j)從優(yōu)先級隊列g(shù)中取出相似度最高的一對文件(^ W;
k)產(chǎn)生一個超級數(shù)據(jù)V, V包含X禾卩少兩個文件,根據(jù)X和少的特征向量
計算v的特征向量F(v, F 的第i維F,勿等于MIN(F,(3c入i^K));1)對于隊列中的包含x的文件對(3c, ^或者包含y的文件對(>,力,計算相
m)如果v和任意z的相似度r ,z卩都小于"那么v不可能再與其它數(shù)據(jù)合
并,加v到樣本數(shù)據(jù)集S,即5=5^{^};n)否則,對于—/^a的數(shù)據(jù)二從隊列g(shù)中刪除數(shù)據(jù)對(3c, ^和0, z」,
并根據(jù)相似度r(V, ^加 ,^到隊列Q;
(3) 樣本數(shù)據(jù)聚類,利用平衡聚類方法聚類樣本數(shù)據(jù)集A
第一步,根據(jù)樣本數(shù)據(jù)集S構(gòu)建相似圖G,相似圖形如GTF, £人并滿足如下條件(i)F是頂點集,任意veF對應(yīng)到唯一的一個數(shù)據(jù)^VjeS;每個頂點v有一個權(quán)重『F 人且fn《v戶^v)./ew; (ii)£是邊集,任意(3c, 都有一個權(quán)重^,且『五(3c, 3/>-K《x),喊y》;
第二步,調(diào)用高效的圖分割方法kmetis分割相似圖G,并為設(shè)置kmetis設(shè)定兩個約束條件
約束l(損失最小化)圖分割方法需要刪除相似圖中的一些邊,方法必須最小化刪除邊的權(quán)重和,約束1要求分割出來的每個子圖中的數(shù)據(jù)之間具有高相似度,而跨子圖數(shù)據(jù)之間只有低相似度;
約束2(負載均衡)分割方法還必須滿足平衡約束條件,即平衡每個子圖的頂點權(quán)重和;
(4) 剩余數(shù)據(jù)聚類,按照相似度歸類剩余數(shù)據(jù)》=D-5*,在滿足負載均衡約束的前提下,把剩余數(shù)據(jù)歸入到最相似的類;
記7^>=2^^.&"是類別c中包含的文件總大小,剩余聚類方法必須滿足如下兩個條件之一i)數(shù)據(jù)"被分配到最相似的類c; ii)如果還有其它類c'和d更相似,那么7Tc'」》c/w他m'ze且c'中的任何數(shù)據(jù)cT滿足sz'w(c',W )》Ww(c',力,其中c/wWera/ze是類平均大小,w'm(c',力代表數(shù)據(jù)d和類c'的相似度,類相似度w'附(^,《定義如下w'm(C,力=£eZ ^T(/), Z =尸(力n ((J F(x))剩余聚類方法基于穩(wěn)定婚姻模塾設(shè)計,其主要過程如下a)對于每個類G,根據(jù)類相似度sfm(G, c/)排序剩余Z得到n,初始化類
G的剩余容量^和rx索引/'-;b) 執(zhí)行步驟c),直到所有數(shù)據(jù)都已經(jīng)歸類;
c) 在每次循環(huán)中,在總數(shù)據(jù)量不超過剩余容量^的前提下,每個類C,向FL中盡可能多的數(shù)據(jù)求婚,設(shè)"是被G.求婚的任意數(shù)據(jù),如果數(shù)據(jù)J還沒有求婚者,那么暫時許配"給G.,如果數(shù)據(jù)J己有求婚者C/而且s/m(G,力々/m(C〃力那么取消對G的婚約,許配J給C,;
(5)結(jié)果壓縮,對每個類別進行單獨壓縮,默認采用BMCOM壓縮方法,同時亦可采用各種成熟的DELTA壓縮方法;
BMCOM方法是Bentley和Mcilroy在1999年提出來的,它能夠壓縮間隔距離很長的冗余數(shù)據(jù),而且壓縮和解壓縮性能非常好,分別能夠達到lOOMB/s和1000MB/s,其本思想是利用Shingle技術(shù)檢測并壓縮較長的冗余數(shù)據(jù),Shingle是數(shù)據(jù)中一段固定長度的子串,假設(shè)Shingle的長度為丄,BMCOM能夠壓縮所有長度>2£的字符串,并部分壓縮長度在丄 2i:之間的冗余數(shù)據(jù);
方法利用Shingle的哈希值作為Shingle指紋高效檢測冗余數(shù)據(jù),方法維護一個關(guān)鍵字為指紋,值為Shingle的哈希表Fr,以指紋為關(guān)鍵字保存所有不重疊Shingle,到哈希表F2",方法具體過程簡介如下
a) 連接類別c中的所有文件,組成輸入數(shù)據(jù)A
b) 逐字節(jié)掃描輸入數(shù)據(jù)A執(zhí)行步驟c)-h);
c) 計算當(dāng)前Shingle的指紋加如果當(dāng)前字節(jié)偏移整除丄,保存》到^T;
d) 以》為關(guān)鍵字査詢哈希表KT,得到匹配指紋的候選Shingle;
e) 然后,檢查當(dāng)前和所有候選Shingle,找出與當(dāng)前Shingle真正匹配的候選Shingle;
f) 如果FT中沒有匹配的Shingle,直接輸出當(dāng)前字節(jié),繼續(xù)掃描下一個字節(jié);
g) 否則,嘗試雙向擴展匹配長度,得到匹配起始地址和匹配長度
h) 最后編碼冗余數(shù)據(jù)為々toW, /e ^/z>。本發(fā)明具有的有益效果是
聚類結(jié)果相對均勻,能夠提高分布式存儲系統(tǒng)中數(shù)據(jù)歸檔存儲的負載均衡
能力;聚類效率較高,基于關(guān)鍵數(shù)據(jù)采樣的聚類方式大大減小方法計算量。


圖1是基于數(shù)據(jù)相似的聚類壓縮方法過程示意圖;圖2是剩余聚類方法示意圖。
具體實施例方式
如圖1所示,本發(fā)明的實施步驟如下
1. 文件特征向量提取
從文件數(shù)據(jù)中提取特征向量用于計算文件相似度,其具體實施步驟如下-
1) 選擇一個窗口長度W和6個整數(shù)域上的獨立置換函數(shù){&, /22, , &},每
個置換函數(shù)相互獨立,這里采用獨立線性函數(shù),B卩/z產(chǎn)"i x + & mod p,其中 i, & pe[]是隨機產(chǎn)生的整數(shù);
2) 從前往后逐字節(jié)掃描輸入文件/,利用高效的Rabin指紋函數(shù),計算當(dāng)前滑動 窗口內(nèi)數(shù)據(jù)的指紋,記該指紋為^,利用上述&個獨立置換函數(shù)作用于指紋
》,得到A個置換指紋/^C^), ^砂),…,M/W,記文件/的特征向量i^ 為{^09, ^09,…,&必},特征向量的第纟維i^9等于第/個置換函數(shù)所
產(chǎn)生的置換指紋的最小值,即K(^^MIN(i^9, /2,偵));
3) 掃描完整個文件之后,可計算出文件的特征向量F0,文件數(shù)據(jù)相似度ffx, y」根據(jù)文件x和;;的特征向量定義為F^nF6^/IF(^uF6^
2. 聚類樣本選取
從輸入數(shù)據(jù)集D中選取部分數(shù)據(jù)作為樣本數(shù)據(jù)集S,其具體實施步驟如下 1)計算關(guān)鍵數(shù)據(jù)集
關(guān)鍵數(shù)據(jù)集D是指存在高相似文件的文件集合,即XZ>{x|xeZ)A(3;;e£Wrx, y^W, ^是0到1之間的一個較大實數(shù),關(guān)鍵數(shù)據(jù)集中的數(shù)據(jù)通常具有比較高 的可壓縮性,能對最終壓縮比產(chǎn)生比較大的影響;
準確計算關(guān)鍵數(shù)據(jù)集AX>需要很大計算量,時間復(fù)雜度為0(|D|2),因此采 用LSH法估算關(guān)鍵數(shù)據(jù)集,該方法的主要思想是利用利用超級指紋快速檢測高 相似數(shù)據(jù),超級指紋是根據(jù)多個指紋計算的哈希值,只要兩個數(shù)據(jù)具有相同的 超級指紋,它們相似的概率非常大,基于LSH的關(guān)鍵數(shù)據(jù)集計算方法如下-
a) 選擇一個正整數(shù)/和w,和一個隨機哈希函數(shù)/7;
b) 循環(huán)執(zhí)行步驟c)和e)共/次;
c) 隨機選擇w個小于A:的正整數(shù)(/!, /2,…,4};
d) 對于每個文件/,利用哈希函數(shù)/7和特征向量i^)的第^ !'2,…,"維計算
超級指紋^ ,即沙=7/(《(/)0.』^(/));
e) 以為關(guān)鍵字記錄0》,力到超級指紋哈希表5TT,即5^77"沙戶^77"沙A^(/);
f) 掃描哈希表6Fr,對于哈希表中的每個超級指紋^ ,計算集合5F77^ /中數(shù) 據(jù)的兩兩相似度,如果咕,"a, x, _yeD,那么x和;;都屬于關(guān)鍵數(shù)據(jù)集,因此更新關(guān)鍵數(shù)據(jù)集XD為raU(A力; 2)計算超級數(shù)據(jù)
超級數(shù)據(jù)是多個關(guān)鍵數(shù)據(jù)合并而成的虛擬數(shù)據(jù),任意超級數(shù)據(jù)s是關(guān)鍵數(shù)據(jù) 集的子集,即sqKD,超級數(shù)據(jù)中包含的數(shù)據(jù)相似度比較高,因此合并這些數(shù)據(jù), 把它們當(dāng)作整體來處理,可以提高聚類質(zhì)量,此外,合并成超級數(shù)據(jù)可以減少 聚類方法的輸入數(shù)據(jù),提高聚類性能;
超級數(shù)據(jù)的特征向量可以根據(jù)數(shù)據(jù)的特征向量計算,設(shè)v是一個超級數(shù)據(jù), x和y是v中包含的數(shù)據(jù)。那么i^V戶MINCP/力,F(xiàn),(y」);
超級數(shù)據(jù)及樣本數(shù)據(jù)集S的構(gòu)建方法如下
a) 按照相似度Wx, ^排序關(guān)鍵數(shù)據(jù)集XD中的高相似文件對f^力,得到優(yōu)先 級隊列g(shù);
b) 循環(huán)執(zhí)行步驟c)-g),直到隊列g(shù)為空;
c) 從優(yōu)先級隊列2中取出相似度最高的一對文件(^ ";
d) 產(chǎn)生一個超級數(shù)據(jù)v, v包含x和_y兩個文件,根據(jù);c和;;的特征向量計算v 的特征向量F(V夂 FW的第i維F,^等于MIN(F/力,
e) 對于隊列中的包含義的文件對 ,^或者包含少的文件對6^ z人計算相似度 r(V/ z力
f) 如果v和任意z的相似度^V, ^都小于6那么v不可能再與其它數(shù)據(jù)合并, 加v到樣本數(shù)據(jù)集S,即S=<Su{V};
g) 否則,對于"v, ^a的數(shù)據(jù)z,從隊列G中刪除數(shù)據(jù)對",^和(y, A并根
據(jù)相似度小,Zj加 ,^到隊列g(shù);
例如t0.5,樣本數(shù)據(jù)集S-0,數(shù)據(jù)集D-(a, b, c, d}, F(a)=[l, 2, 3, 4, 5, 6], F(b)=[2, 3, 4, 5, 6, 7], F(c)=[3, 4, 5, 6, 7, 8], F(d)=[4, 5, 6, 7, 9, 10],可以計算出相似度r(a, b)=5/7, r(a, c)=4/8, r(a, d)=3/9; r(b,
c) =5/7, r(b, d)=4/8, r(c, d)=4/8,高相似文件對等于((a, b), (a, c), (b, c), (b, d), (c, d)},根據(jù)相似度得出優(yōu)先級隊列Q為〈(a, b), (b, c), (a, c), (b,
d) , (c, d)>,首先從Q中取出(a, b),合并(a, b)為A, F(A)=[1, 2, 3, 4, 5], 算得r(A, c)=5/7, r(A, d)=3/9,因為r(A, c)〉t,所以用A替換Q中出現(xiàn)的a 和b,重新調(diào)整優(yōu)先級隊列,所以經(jīng)過調(diào)整之后的隊列Q為〈(A, c), (c, d)>, 再從隊列中取出(A, c),合并(A, c)為B,算得F(B),, 2, 3, 4, 5}, r(B, d)=3/9,因為r(B, d)<t,因此S-(B);
3.樣本數(shù)據(jù)聚類
利用平衡聚類方法聚類樣本數(shù)據(jù)集&1) 根據(jù)樣本數(shù)據(jù)集S構(gòu)建相似圖G,相似圖形如GTF, 并滿足如下條件(i)F是頂點集,任意ver對應(yīng)到唯一的一個數(shù)據(jù)浙v)eS;
每個頂點v有一個權(quán)重!^Yv力且『^v戶^V/fe"; (ii)五是邊集,任意(3c, "e五 都有一個權(quán)重『5(3c,力,且『五(3c,力7(《x),《y));
2) 調(diào)用經(jīng)典和高效的圖分割方法kmetis分割相似圖G,并為設(shè)置kmetis設(shè)定兩 個約束條件
約束l(損失最小化)圖分割方法需要刪除相似圖中的一些邊,方法必須最小 化刪除邊的權(quán)重和,約束1要求每個子圖中內(nèi)的數(shù)據(jù)之間具有高相似度,而跨 子圖數(shù)據(jù)之間只有低相似度;
約束2(負載均衡)分割方法還必須滿足平衡約束條件,即平衡每個子圖的頂 點權(quán)重和; 4.剩余數(shù)據(jù)聚類
按照相似度歸類剩余數(shù)據(jù)義="-5,在滿足負載均衡約束的前提下,把剩余數(shù) 據(jù)歸入到最相似的類;
記7TCJ=i;de^./eM是類別c中包含的文件總大小,剩余聚類方法必須滿足如 下兩個條件之一i)數(shù)據(jù)d被分配到最相似的類c; ii)如果還有其它類J和 d更相似,那么7Tc'」》c/w故ra/^且c'中的任何數(shù)據(jù)W滿足w'm(c', t/' )^s/m(c',力,其中c/w化ra/ze是類平均大小,w'm(c',力代表數(shù)據(jù)d和類 c'的相似度,類相似度定義如下Ww(C^h2^『r(0,Z-F(c0n(U尸(x));
準確計算類相似度比較耗費時間,因此采S BloomFilter估^類相似度, BloomFilter是判斷元素是否在集合中的快速方法,而且占用內(nèi)存較小,只有哈 希表的1/8所有的內(nèi)存空間,我們?yōu)槊總€類創(chuàng)建都一個BloomFilter,(風(fēng)d), S(C2), ..., S(CJ),并利用它們估算類相似度;
9w(c,to=s:攀一(,))-脾(巧(力)
BloomFilter沒有false negative,而且false positive比率也非常小,因此可以 證明Wm(C,cO《flw(C,c0 ;
如圖2所示,剩余聚類方法基于穩(wěn)定婚姻模型實現(xiàn),其主要過程如下
1) 對于每個類G,根據(jù)類相似度Wm(G, J)排序Z得到IX,初始化類G的剩余 容量^為c/wWera/ze和FL索引/,為0;
2) 執(zhí)行步驟d),直到所有數(shù)據(jù)都已經(jīng)歸類;
3) 在每次循環(huán)中,每個類G向H中,第力個數(shù)據(jù)之后的,盡可能多的數(shù)據(jù)求婚, 求婚總數(shù)據(jù)量必須不能超過剩余容量。;
4) 設(shè)當(dāng)前G向d求婚,先設(shè)置/產(chǎn)/,+7,如果數(shù)據(jù)"還沒有求婚者,那么暫時許酉己d給C,.;如果數(shù)據(jù)d已有求婚者C/而且w'm(G, J)々z'm(C,,力那么取消對 C,的婚約,許配"給G,并根據(jù)需要調(diào)整" 5.結(jié)果壓縮
對每個類別進行單獨壓縮,默認采用BMCOM壓縮方法,同時亦可采用各種 成熟的DELTA壓縮方法。
BMCOM方法是Bentley和Mcilroy在1999年提出來的,它能夠壓縮間隔距 離很長的冗余數(shù)據(jù),而且壓縮和解壓縮性能非常好,分別能夠達到100MB/s和 1000MB/s。其本思想是利用Shingle(固定長度的子字節(jié)串)指紋技術(shù)檢測并壓縮 較長的冗余數(shù)據(jù)。假設(shè)Shingle的長度為Z, BMCOM能夠壓縮所有長度>2丄的 字符串,并部分壓縮長度在丄 2丄之間的冗余數(shù)據(jù)。
方法維護一個關(guān)鍵字為指紋,值為Shingle的哈希表Fr,以指紋為關(guān)鍵字, 保存所有不重疊Shingle,到哈希表Fr,方法具體過程簡介如下
1) 連接類別c中的所有文件,組成輸入數(shù)據(jù)A
2) 逐字節(jié)掃描輸入數(shù)據(jù)A執(zhí)行步驟3)-8);
3) 計算當(dāng)前Shingle的指紋#,如果當(dāng)前字節(jié)偏移整除丄,保存》到^T;
4) 以》為關(guān)鍵字査詢哈希表Fr,得到匹配指紋的候選Shingle;
5) 然后,檢查當(dāng)前和所有候選Shingle,找出與當(dāng)前Shingle真正匹配的候選 Shingle;
6) 如果FT中沒有匹配的SWngle,直接輸出當(dāng)前字節(jié),繼續(xù)掃描下一個字節(jié);
7) 否則,嘗試雙向擴展匹配長度,得到匹配起始地址stoW和匹配長度/e"g^;
8) 最后編碼冗余數(shù)據(jù)為々toW, /e"g//z>;
例如,丄=3,輸入數(shù)據(jù)是字符串"abcdefgybcdefgx",逐字節(jié)掃描輸入字符 串,在掃描過程中,方法將保存Shingle "abc" , "def,, "gyb" , "cde"的 指紋到哈希表FJ1,當(dāng)?shù)诙螔呙璧?def"的時候,即掃描到第11-13個字節(jié)的 時候,將在Fr中匹配到值為"def"的候選Shingle;然后,從第4個字節(jié)和第 11個字節(jié)向左掃描,可擴展匹配字符串為"bcdef",從第6個字節(jié)和第14個 字節(jié)向右掃描,可擴展匹配字符串為"bcdefg";最后,編碼冗余串"bcdefg" 為<2, 6>,壓縮之后字符串為"abcdefgy〈2, 6>x"。
權(quán)利要求
1、一種基于數(shù)據(jù)相似的平衡聚類壓縮方法,其特征在于,包括以下步驟(1)文件特征向量提取,從文件數(shù)據(jù)中提取特征向量用于計算文件相似度。(2)聚類樣本選取,即從輸入數(shù)據(jù)集D中選取部分數(shù)據(jù)作為樣本數(shù)據(jù)集,即樣本數(shù)據(jù)集為S。(3)樣本數(shù)據(jù)聚類,利用平衡聚類方法聚類樣本數(shù)據(jù)集S。(4)剩余數(shù)據(jù)聚類,按照相似度歸類剩余數(shù)據(jù)X=D-S,在滿足負載均衡約束的前提下,把剩余數(shù)據(jù)歸入到最相似的類。(5)結(jié)果壓縮,對每個類別進行單獨壓縮,默認采用BMCOM壓縮方法,同時亦可采用各種成熟的DELTA壓縮方法。
2、 根據(jù)權(quán)利要求1所述基于數(shù)據(jù)相似的平衡聚類壓縮方法,其特征在于,所述 步驟(1)具體為(A) 選擇一個窗口長度w和A:個整數(shù)域上的獨立置換函數(shù)(&, &,…, &},每個置換函數(shù)相互獨立。(B) 從前往后逐字節(jié)掃描輸入文件/,利用高效的Rabin指紋函數(shù),計算 當(dāng)前滑動窗口內(nèi)數(shù)據(jù)的指紋,記該指紋為》,利用上述A個獨立置換函數(shù)作用于指紋^,得到A個置換指紋/2;砂),/22砂),…,/Zfc砂),記文件/的特征向量尸09為("必,R必,…,&09},特征向量的第z'維i^9等于第/個置換函數(shù)所 產(chǎn)生的置換指紋的最小值,即F,(Z^MIN(F,偽,Z^你))。(C) 掃描完整個文件之后,可計算出文件的特征向量/^9,文件數(shù)據(jù)相似 度咕,^根據(jù)文件x和;;的特征向量定義為li^)r^6^/li^)ui^Jl。
3、 根據(jù)權(quán)利要求1所述基于數(shù)據(jù)相似的平衡聚類壓縮方法,其特征在于,所述 步驟(2)具體為第一步,計算關(guān)鍵數(shù)據(jù)集,關(guān)鍵數(shù)據(jù)集XD的定義是存在高相似副本的文件 集合,即,^xeZ)A(3;;ei),;Yx, _y)a)}, f是0到1之間的一個較大實數(shù),關(guān) 鍵數(shù)據(jù)集的詳細估算方法如下(a) 選擇一個正整數(shù)/和w,和一個隨機哈希函數(shù)//。(b) 循環(huán)執(zhí)行步驟c)和e)共/次。(c) 隨機選擇w個小于A:的正整數(shù)&, /2,…,/w}。(d) 對于每個文件/,利用哈希函數(shù)H和特征向量F()9的第",/2,…, /w維計算超級指紋沙,即沙=。(e) 以^7為關(guān)鍵字記錄C ^, y)到超級指紋哈希表SFr,艮P釘她戶釘她Aj(/jo(f)掃描哈希表SFr,對于哈希表中的每個超級指紋^9,計算集合5"F775^/ 中數(shù)據(jù)的兩兩相似度,如果^:, Wa, x, yeD,那么x和少都屬于關(guān) 鍵數(shù)據(jù)集,因此更新關(guān)鍵數(shù)據(jù)集^D為^ZX4x,力。 第二步,計算超級數(shù)據(jù),超級數(shù)據(jù)及樣本數(shù)據(jù)集S的構(gòu)建方法如下a) 按照相似度<l ^排序關(guān)鍵數(shù)據(jù)集XD中的高相似文件對&, ^,得到 優(yōu)先級隊列^。b) 循環(huán)執(zhí)行步驟c)-g),直到隊列g(shù)為空。c) 從優(yōu)先級隊列g(shù)中取出相似度最高的一對文件&,"。d) 產(chǎn)生一個超級數(shù)據(jù)v, v包含x和;;兩個文件,根據(jù)x和_y的特征向量 計算v的特征向量i^), F(V)的第i維尸i勿等于MIN(^^, F,.0」)。e) 對于隊列中的包含x的文件對&, ^或者包含^的文件對(>,z人計算相 似度巾,水f) 如果v和任意z的相似度zj都小于"那么v不可能再與其它數(shù)據(jù)合 并,加v到樣本數(shù)據(jù)集51,即5HSU(v〉。g) 否則,對于—,z)3的數(shù)據(jù)z,從隊列Q中刪除數(shù)據(jù)對(3c, ^和&, z, 并根據(jù)相似度r(V, zJ加(V, w到隊列g(shù)。
4、 根據(jù)權(quán)利要求1所述基于數(shù)據(jù)相似的平衡聚類壓縮方法,其特征在于,所述 步驟(3)具體為(A) 根據(jù)樣本數(shù)據(jù)集S構(gòu)建相似圖G,并滿足如下條件(i)r是頂點集, 任意veF對應(yīng)到唯一的一個數(shù)據(jù)每個頂點v有一個權(quán)重『nV力且 ^Yv戶^V)./e"; (ii)五是邊集,任意f^ "e五都有一個權(quán)重",且『五「x, 力=#), "(y》。(B) 調(diào)用高效的圖分割方法kmetis分割相似圖G,并為設(shè)置kmetis設(shè)定 兩個約束條件約束l:圖分割方法需要刪除相似圖中的一些邊,方法必須最小化刪除邊的 權(quán)重和,約束1要求分割出來的每個子圖中的數(shù)據(jù)之間具有高相似度,而跨子 圖數(shù)據(jù)之間只有低相似度。約束2:分割方法還必須滿足平衡約束條件,即平衡每個子圖的頂點權(quán)重和。
5、 根據(jù)權(quán)利要求1所述基于數(shù)據(jù)相似的平衡聚類壓縮方法,其特征在于,所述步驟(4)具體為記7r^=2k^./^是類別c中包含的文件總大小,剩余聚類方法必須滿足如下兩個條件之一i)數(shù)據(jù)"被分配到最相似的類C; ii)如果還有其它類C'和d更相似,那么7Tc' )^c/w他m'ze且c'中的任何數(shù)據(jù)d'滿足w'm(c', W )^Ww(c',力,其中c/wWem:ze是類平均大小,w'm(c',力代表數(shù)據(jù)d和類 c'的相似度,類相似度w'm^:,《定義如下 W—C,力=『r (/), Z = F(力n ((J剩余聚類方法基于穩(wěn)定婚姻模i設(shè)計,其主要過程如下a) 對于每個類g,根據(jù)類相似度wm(c,,力排序剩余x得到n,,初始化類 g的剩余容量^和rx索引/,。b) 執(zhí)行步驟c),直到所有數(shù)據(jù)都已經(jīng)歸類。c) 在每次循環(huán)中,在總數(shù)據(jù)量不超過剩余容量。的前提下,每個類c,向rx.中盡可能多的數(shù)據(jù)求婚,設(shè)r/是被C,求婚的任意數(shù)據(jù),如果數(shù)據(jù)d還沒有求婚 者,那么暫時許配J給C,,如果數(shù)據(jù)d已有求婚者C,而且Wm(G., J)勺/m(G, 力那么取消對C,的婚約,許配d給G。
6、根據(jù)權(quán)利要求1所述基于數(shù)據(jù)相似的平衡聚類壓縮方法,其特征在于,所述 步驟(5)中所述BMCOM方法包括以下步驟a) 連接類別c中的所有文件,組成輸入數(shù)據(jù)&b) 逐字節(jié)掃描輸入數(shù)據(jù)A執(zhí)行步驟c)-h)。c) 計算當(dāng)前Shingle的指紋》,如果當(dāng)前字節(jié)偏移整除丄,保存》到Fr。d) 以》為關(guān)鍵字查詢哈希表7T,得到匹配指紋的候選Shingle。e) 然后,檢查當(dāng)前和所有候選Shingle,找出與當(dāng)前Shingle真正匹配的候選 Shingle 。f) 如果FT中沒有匹配的Shingle,直接輸出當(dāng)前字節(jié),繼續(xù)掃描下一個字節(jié)。g) 否則,嘗試雙向擴展匹配長度,得到匹配起始地址和匹配長度/wgA。h) 最后編碼冗余數(shù)據(jù)為々toW, /ewgA>。
全文摘要
本發(fā)明公開了一種基于數(shù)據(jù)相似的聚類壓縮方法。本發(fā)明通過分析文件數(shù)據(jù),從文件提取特征指紋構(gòu)造特征向量,用于計算數(shù)據(jù)相似度,并利用帶約束條件的圖分割方法聚類輸入文件集成多個均勻大小的類別,然后采用BMCOM等壓縮方法對每個類別單獨進行壓縮,以去除類內(nèi)部的冗余數(shù)據(jù)。本發(fā)明利用基于數(shù)據(jù)采樣聚類方式,把具有較高可壓縮性的關(guān)鍵數(shù)據(jù)作為樣本數(shù)據(jù),首先對樣本數(shù)據(jù)進行聚類,然后通過穩(wěn)定婚姻方法歸類剩余數(shù)據(jù),在不降低壓縮效果的情況下可提高聚類效率。本發(fā)明可以作為一種壓縮和歸檔方法應(yīng)用到分布式存儲系統(tǒng)中,能夠克服已有方法的數(shù)據(jù)依賴和負載不均問題。
文檔編號G06F17/30GK101464910SQ200910095378
公開日2009年6月24日 申請日期2009年1月12日 優(yōu)先權(quán)日2009年1月12日
發(fā)明者余利華, 壽黎但, 胡天磊, 剛 陳, 珂 陳 申請人:浙江大學(xué)
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
南郑县| 应城市| 遵义县| 田林县| 土默特右旗| 色达县| 广德县| 四平市| 渝中区| 新泰市| 宕昌县| 常宁市| 怀化市| 偏关县| 五原县| 孟村| 临朐县| 寿宁县| 涞源县| 松潘县| 东平县| 界首市| 濮阳县| 仙居县| 阿拉善右旗| 桂平市| 宁都县| 托里县| 临高县| 广宗县| 江川县| 台北县| 太和县| 台南市| 镶黄旗| 洪湖市| 洪泽县| 合阳县| 龙山县| 广饶县| 郎溪县|