两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

一種數(shù)據(jù)處理方法、備份服務(wù)器及存儲(chǔ)系統(tǒng)與流程

文檔序號(hào):11133956閱讀:503來源:國(guó)知局
一種數(shù)據(jù)處理方法、備份服務(wù)器及存儲(chǔ)系統(tǒng)與制造工藝

本發(fā)明涉及計(jì)算機(jī)技術(shù)領(lǐng)域,特別涉及一種數(shù)據(jù)處理方法、備份服務(wù)器及存儲(chǔ)系統(tǒng)。



背景技術(shù):

在數(shù)據(jù)存儲(chǔ)領(lǐng)域,重復(fù)數(shù)據(jù)刪除技術(shù)是一種節(jié)約數(shù)據(jù)存儲(chǔ)空間的關(guān)鍵技術(shù),它可以檢測(cè)并消除數(shù)據(jù)冗余,對(duì)相同的數(shù)據(jù)只留下一個(gè)副本,不僅可以較大地節(jié)約磁盤空間,而且能夠提升數(shù)據(jù)的寫入性能,以及節(jié)約網(wǎng)絡(luò)帶寬,被廣泛應(yīng)用于文件備份、在線存儲(chǔ)服務(wù)、電子郵件服務(wù)等領(lǐng)域。

現(xiàn)有技術(shù)中,存儲(chǔ)系統(tǒng)中存儲(chǔ)有指紋表,指紋表中保存有已存儲(chǔ)在存儲(chǔ)系統(tǒng)中的數(shù)據(jù)的指紋。在接收到數(shù)據(jù)存儲(chǔ)請(qǐng)求時(shí),存儲(chǔ)系統(tǒng)將待存儲(chǔ)數(shù)據(jù)塊的指紋與指紋表中的指紋進(jìn)行比對(duì),以確定待存儲(chǔ)數(shù)據(jù)塊是否為重復(fù)數(shù)據(jù),進(jìn)而確定對(duì)待存儲(chǔ)數(shù)據(jù)塊的存儲(chǔ)方式。

但是,將待存儲(chǔ)數(shù)據(jù)塊的指紋與指紋表中的指紋進(jìn)行比對(duì)時(shí),需要將指紋表中的指紋讀取到備份服務(wù)器的內(nèi)存中,由于指紋表中保存有海量的指紋,因此,在全部指紋表中進(jìn)行指紋比對(duì)將產(chǎn)生大量的數(shù)據(jù)搬運(yùn),需要消耗大量的輸入輸出(英文:input/output;簡(jiǎn)稱:I/O)資源,花費(fèi)大量的時(shí)間,導(dǎo)致存儲(chǔ)系統(tǒng)存儲(chǔ)數(shù)據(jù)的效率低下。



技術(shù)實(shí)現(xiàn)要素:

本發(fā)明實(shí)施例提供一種數(shù)據(jù)處理方法、備份服務(wù)器及存儲(chǔ)系統(tǒng),用于解決因指紋比對(duì)消耗大量I/O資源導(dǎo)致數(shù)據(jù)存儲(chǔ)的效率較低的問題。

第一方面,本發(fā)明實(shí)施例提供一種數(shù)據(jù)處理方法,所述方法由存儲(chǔ)系統(tǒng)中 的備份服務(wù)器執(zhí)行,所述存儲(chǔ)系統(tǒng)中包括所述備份服務(wù)器以及多個(gè)存儲(chǔ)器,所述存儲(chǔ)系統(tǒng)中存儲(chǔ)有多個(gè)指紋表,所述多個(gè)指紋表中記錄有已存儲(chǔ)于所述多個(gè)存儲(chǔ)器中的數(shù)據(jù)塊的指紋,所述方法包括:

根據(jù)指紋索引表中的索引指紋以及待存儲(chǔ)數(shù)據(jù)塊的指紋確定第一指紋集合,其中,所述第一指紋集合中包含有第一索引指紋、第二索引指紋,所述第一索引指紋用于代表第一指紋表中的多個(gè)指紋,所述第二索引指紋用于代表第二指紋表中的多個(gè)指紋,所述待存儲(chǔ)數(shù)據(jù)塊的指紋屬于所述第一索引指紋所代表的多個(gè)指紋以及所述第二索引指紋所代表的多個(gè)指紋的指紋范圍;

根據(jù)所述第一索引指紋獲得第一指紋表中包含有與所述待存儲(chǔ)數(shù)據(jù)塊的指紋相同的指紋的第一概率,并根據(jù)所述第二索引指紋獲得所述第二指紋表中包含有與所述待存儲(chǔ)數(shù)據(jù)塊的指紋相同的指紋的第二概率,其中,所述第一概率是根據(jù)所述第一索引指紋代表的多個(gè)指紋確定的,所述第二概率是根據(jù)所述第二索引指紋代表的多個(gè)指紋確定的;

根據(jù)所述第一概率和第二概率確定第二指紋集合,其中,所述第二指紋集合中至少包含有所述第一索引指紋,根據(jù)所述第一索引指紋確定的第一概率不小于預(yù)設(shè)閾值;

獲得所述第一索引指紋所代表的多個(gè)指紋與所述待存儲(chǔ)數(shù)據(jù)塊的指紋的匹配結(jié)果。

結(jié)合第一方面,在第一方面的第一種可能的實(shí)現(xiàn)方式中,所述第一指紋表存儲(chǔ)在所述多個(gè)存儲(chǔ)器中的第一存儲(chǔ)器中,所述第二指紋表存儲(chǔ)在所述多個(gè)存儲(chǔ)器中的第二存儲(chǔ)器中;所述根據(jù)所述第一索引指紋獲得第一指紋表中包含有與所述待存儲(chǔ)數(shù)據(jù)塊的指紋相同的指紋的第一概率,包括:

將所述待存儲(chǔ)數(shù)據(jù)塊的指紋以及所述第一索引指紋發(fā)送至所述第一存儲(chǔ)器;

接收所述第一存儲(chǔ)器返回的所述第一概率,所述第一概率用于表示在所述第一索引指紋所代表的多個(gè)指紋中包含有與所述待存儲(chǔ)數(shù)據(jù)塊的指紋相同的 指紋的概率;

所述根據(jù)所述第二索引指紋獲得所述第二指紋表中包含有與所述待存儲(chǔ)數(shù)據(jù)塊的指紋相同的指紋的第二概率,包括:

將所述待存儲(chǔ)數(shù)據(jù)塊的指紋以及所述第二索引指紋發(fā)送至所述第二存儲(chǔ)器;

接收所述第二存儲(chǔ)器返回的所述第一概率,所述第一概率用于表示在所述第二索引指紋所代表的多個(gè)指紋中包含有與所述待存儲(chǔ)數(shù)據(jù)塊的指紋相同的指紋的概率。

結(jié)合第一方面,在第一方面的第二種可能的實(shí)現(xiàn)方式中,所述備份服務(wù)器包括輔助存儲(chǔ)器,所述第一指紋表以及所述第二指紋表存儲(chǔ)在所述輔助存儲(chǔ)器中;

所述根據(jù)所述第一索引指紋獲得第一指紋表中包含有與所述待存儲(chǔ)數(shù)據(jù)塊的指紋相同的指紋的第一概率,并根據(jù)所述第二索引指紋獲得所述第二指紋表中包含有與所述待存儲(chǔ)數(shù)據(jù)塊的指紋相同的指紋的第二概率,包括:

將所述待存儲(chǔ)數(shù)據(jù)塊的指紋以及所述第一索引指紋、所述第二索引指紋發(fā)送至所述輔助存儲(chǔ)器;

接收所述輔助存儲(chǔ)器返回的在所述第一索引指紋所代表的多個(gè)指紋中包含有與所述待存儲(chǔ)數(shù)據(jù)塊的指紋相同的指紋的所述第一概率,以及在所述第二索引指紋所代表的多個(gè)指紋中包含有與所述待存儲(chǔ)數(shù)據(jù)塊的指紋相同的指紋的所述第二概率。

結(jié)合第一方面、第一方面的第一種可能的實(shí)現(xiàn)方式以及第一方面的第二種可能的實(shí)現(xiàn)方式中的任一項(xiàng),在第一方面的第三種可能的實(shí)現(xiàn)方式中,所述第一指紋表中的每個(gè)指紋包含M位,每個(gè)M位指紋包含N個(gè)區(qū)間,所述N個(gè)區(qū)間中的每個(gè)區(qū)間包括M位中連續(xù)的S位,所述N個(gè)區(qū)間中任意兩個(gè)區(qū)間不重疊,所述N個(gè)區(qū)間的位數(shù)之和為M,N為大于或者等于2的自然數(shù),S為自然數(shù);

所述存儲(chǔ)系統(tǒng)中存儲(chǔ)有第一統(tǒng)計(jì)表,所述第一統(tǒng)計(jì)表包含有所述第一索引指紋所代表的多個(gè)指紋在所述N個(gè)區(qū)間的數(shù)值的統(tǒng)計(jì)信息,所述第一概率的確定方式包括:

根據(jù)所述第一統(tǒng)計(jì)表確定ai在所述第一索引指紋所代表的多個(gè)指紋的所述第i區(qū)間的數(shù)值中的出現(xiàn)頻次ti,其中,ai為待存儲(chǔ)數(shù)據(jù)塊的指紋的第i個(gè)區(qū)間的數(shù)值,i的取值范圍為1至N;

根據(jù)獲得的t1至tN中的最小值確定所述第一概率。

結(jié)合第一方面、第一方面的第一種可能的實(shí)現(xiàn)方式以及第一方面的第二種可能的實(shí)現(xiàn)方式中的任一項(xiàng),在第一方面的第四種可能的實(shí)現(xiàn)方式中,所述存儲(chǔ)系統(tǒng)中存儲(chǔ)有第一統(tǒng)計(jì)表,所述第一統(tǒng)計(jì)表包含所述第一索引指紋所代表的多個(gè)指紋的第一區(qū)間的數(shù)值的統(tǒng)計(jì)信息,以及所述第一索引指紋所代表的多個(gè)指紋的第二區(qū)間的數(shù)值的統(tǒng)計(jì)信息,所述第一區(qū)間為各指紋的第h位至第i位的區(qū)間,所述第二區(qū)間為各指紋的第j位至第k位的區(qū)間,其中,h、i、j、k均為自然數(shù),h的值不大于i的值,j的值不大于k的值,所述第一區(qū)間和所述第二區(qū)間不重疊;所述第一概率的確定方式包括:

根據(jù)所述第一統(tǒng)計(jì)表確定a在所述第一索引指紋所代表的多個(gè)指紋的所述第一區(qū)間的數(shù)值中的出現(xiàn)頻次t1以及b在所述第一索引指紋所代表的多個(gè)指紋的所述第二區(qū)間的數(shù)值中出現(xiàn)的頻次t2,其中,a為待存儲(chǔ)數(shù)據(jù)塊的指紋的第h位至第i位的數(shù)值,b為待存儲(chǔ)數(shù)據(jù)塊的指紋的第j位至第k位的數(shù)值;

根據(jù)所述t1和t2中的最小值確定所述第一概率。

第二方面,本發(fā)明實(shí)施例提供一種備份服務(wù)器,所述備份服務(wù)器應(yīng)用于存儲(chǔ)系統(tǒng)中,所述存儲(chǔ)系統(tǒng)包括所述備份服務(wù)器以及多個(gè)存儲(chǔ)器,所述存儲(chǔ)系統(tǒng)中存儲(chǔ)有多個(gè)指紋表,所述多個(gè)指紋表中記錄有已存儲(chǔ)于所述多個(gè)存儲(chǔ)器中的數(shù)據(jù)塊的指紋,所述備份服務(wù)器包括:

確定模塊,用于根據(jù)指紋索引表中的索引指紋以及待存儲(chǔ)數(shù)據(jù)塊的指紋確定第一指紋集合,其中,所述第一指紋集合中包含有第一索引指紋、第二索引 指紋,所述第一索引指紋用于代表第一指紋表中的多個(gè)指紋,所述第二索引指紋用于代表第二指紋表中的多個(gè)指紋,所述待存儲(chǔ)數(shù)據(jù)塊的指紋屬于所述第一索引指紋所代表的多個(gè)指紋以及所述第二索引指紋所代表的多個(gè)指紋的指紋范圍;

獲得模塊,用于根據(jù)所述第一索引指紋獲得第一指紋表中包含有與所述待存儲(chǔ)數(shù)據(jù)塊的指紋相同的指紋的第一概率,并根據(jù)所述第二索引指紋獲得所述第二指紋表中包含有與所述待存儲(chǔ)數(shù)據(jù)塊的指紋相同的指紋的第二概率,其中,所述第一概率是根據(jù)所述第一索引指紋代表的多個(gè)指紋確定的,所述第二概率是根據(jù)所述第二索引指紋代表的多個(gè)指紋確定的;

所述確定模塊,還用于根據(jù)所述第一概率和第二概率確定第二指紋集合,其中,所述第二指紋集合中至少包含有所述第一索引指紋,根據(jù)所述第一索引指紋確定的第一概率不小于預(yù)設(shè)閾值;

處理模塊,用于獲得所述第一索引指紋所代表的多個(gè)指紋與所述待存儲(chǔ)數(shù)據(jù)塊的指紋的匹配結(jié)果。

結(jié)合第二方面,在第二方面的第一種可能的實(shí)現(xiàn)方式中,所述第一指紋表存儲(chǔ)在所述多個(gè)存儲(chǔ)器中的第一存儲(chǔ)器中,所述第二指紋表存儲(chǔ)在所述多個(gè)存儲(chǔ)器中的第二存儲(chǔ)器中;

所述獲得模塊具體用于:將所述待存儲(chǔ)數(shù)據(jù)塊的指紋以及所述第一索引指紋發(fā)送至所述第一存儲(chǔ)器;并接收所述第一存儲(chǔ)器返回的所述第一概率,所述第一概率用于表示在所述第一索引指紋所代表的多個(gè)指紋中包含有與所述待存儲(chǔ)數(shù)據(jù)塊的指紋相同的指紋的概率;以及

將所述待存儲(chǔ)數(shù)據(jù)塊的指紋以及所述第二索引指紋發(fā)送至所述第二存儲(chǔ)器;并接收所述第二存儲(chǔ)器返回的所述第二概率,所述第二概率用于表示在所述第二索引指紋所代表的多個(gè)指紋中包含有與所述待存儲(chǔ)數(shù)據(jù)塊的指紋相同的指紋的概率。

結(jié)合第二方面,在第二方面的第二種可能的實(shí)現(xiàn)方式中,所述備份服務(wù)器 還包括:

輔助存儲(chǔ)器,用于存儲(chǔ)第一指紋表以及所述第二指紋表;

所述獲得模塊具體用于:將所述待存儲(chǔ)數(shù)據(jù)塊的指紋以及所述第一索引指紋、所述第二索引指紋發(fā)送至所述輔助存儲(chǔ)器;接收所述輔助存儲(chǔ)器返回的在所述第一索引指紋所代表的多個(gè)指紋中包含有與所述待存儲(chǔ)數(shù)據(jù)塊的指紋相同的指紋的所述第一概率,以及在所述第二索引指紋所代表的多個(gè)指紋中包含有與所述待存儲(chǔ)數(shù)據(jù)塊的指紋相同的指紋的所述第二概率。

結(jié)合第二方面的第二種可能的實(shí)現(xiàn)方式,在第二方面的第三種可能的實(shí)現(xiàn)方式中,所述第一指紋表中的每個(gè)指紋包含M位,每個(gè)M位指紋包含N個(gè)區(qū)間,所述N個(gè)區(qū)間中的每個(gè)區(qū)間包括M位中連續(xù)的S位,所述N個(gè)區(qū)間中任意兩個(gè)區(qū)間不重疊,所述N個(gè)區(qū)間的位數(shù)之和為M,N為大于或者等于2的自然數(shù),S為自然數(shù);所述輔助存儲(chǔ)器中還用于存儲(chǔ)第一統(tǒng)計(jì)表,所述第一統(tǒng)計(jì)表包含所述第一索引指紋所代表的多個(gè)指紋的所述N個(gè)區(qū)間的數(shù)值的統(tǒng)計(jì)信息;

所述輔助存儲(chǔ)器還用于:根據(jù)所述第一統(tǒng)計(jì)表確定ai在所述第一索引指紋所代表的多個(gè)指紋的所述第i區(qū)間的數(shù)值中的出現(xiàn)頻次ti,其中,ai為待存儲(chǔ)數(shù)據(jù)塊的指紋的第i區(qū)間的數(shù)值,i的取值范圍為1至N,并根據(jù)所t1至tN中的最小值確定所述第一概率。

結(jié)合第二方面的第二種可能的實(shí)現(xiàn)方式,在第二方面的第四種可能的實(shí)現(xiàn)方式中,所述輔助存儲(chǔ)器還用于存儲(chǔ)第一統(tǒng)計(jì)表,所述第一統(tǒng)計(jì)表包含所述第一索引指紋所代表的多個(gè)指紋的第一區(qū)間的數(shù)值的統(tǒng)計(jì)信息,以及所述第一索引指紋所代表的多個(gè)指紋的第二區(qū)間的數(shù)值的統(tǒng)計(jì)信息,所述第一區(qū)間為各指紋的第h位至第i位的區(qū)間,所述第二區(qū)間為各指紋的第j位至第k位的區(qū)間,其中,h、i、j、k均為自然數(shù),h的值不大于i的值,j的值不大于k的值,所述第一區(qū)間和所述第二區(qū)間不重疊;

所述輔助存儲(chǔ)器還用于:根據(jù)所述第一統(tǒng)計(jì)表確定a在所述第一索引指紋 所代表的多個(gè)指紋的所述第一區(qū)間的數(shù)值中的出現(xiàn)頻次t1以及b在所述第一索引指紋所代表的多個(gè)指紋的所述第二區(qū)間的數(shù)值中出現(xiàn)的頻次t2,其中,a為待存儲(chǔ)數(shù)據(jù)塊的指紋的第h位至第i位的數(shù)值,b為待存儲(chǔ)數(shù)據(jù)塊的指紋的第j位至第k位的數(shù)值;并根據(jù)所述t1和t2中的最小值確定所述第一概率。

第三方面,本發(fā)明實(shí)施例提供一種存儲(chǔ)系統(tǒng),包括備份服務(wù)器以及多個(gè)存儲(chǔ)器,所述存儲(chǔ)系統(tǒng)中存儲(chǔ)有多個(gè)指紋表,所述多個(gè)指紋表中記錄有已存儲(chǔ)于所述多個(gè)存儲(chǔ)器中的數(shù)據(jù)塊的指紋;

所述備份服務(wù)器用于:

根據(jù)指紋索引表中的索引指紋以及待存儲(chǔ)數(shù)據(jù)塊的指紋確定第一指紋集合,其中,所述第一指紋集合中包含有第一索引指紋、第二索引指紋,所述第一索引指紋用于代表第一指紋表中的多個(gè)指紋,所述第二索引指紋用于代表第二指紋表中的多個(gè)指紋,所述待存儲(chǔ)數(shù)據(jù)塊的指紋屬于所述第一索引指紋所代表的多個(gè)指紋以及所述第二索引指紋所代表的多個(gè)指紋的指紋范圍;

根據(jù)所述第一索引指紋獲得第一指紋表中包含有與所述待存儲(chǔ)數(shù)據(jù)塊的指紋相同的指紋的第一概率,并根據(jù)所述第二索引指紋獲得所述第二指紋表中包含有與所述待存儲(chǔ)數(shù)據(jù)塊的指紋相同的指紋的第二概率,其中,所述第一概率是根據(jù)所述第一索引指紋代表的多個(gè)指紋確定的,所述第二概率是根據(jù)所述第二索引指紋代表的多個(gè)指紋確定的;

根據(jù)所述第一概率和第二概率確定第二指紋集合,其中,所述第二指紋集合中至少包含有所述第一索引指紋,根據(jù)所述第一索引指紋確定的第一概率不小于預(yù)設(shè)閾值;

獲得所述第一索引指紋所代表的多個(gè)指紋與所述待存儲(chǔ)數(shù)據(jù)塊的指紋的匹配結(jié)果。

結(jié)合第三方面,在第三方面的第一種可能的實(shí)現(xiàn)方式中,所述第一指紋表存儲(chǔ)在所述多個(gè)存儲(chǔ)器中的第一存儲(chǔ)器中,所述第二指紋表存儲(chǔ)在所述多個(gè)存儲(chǔ)器中的第二存儲(chǔ)器中;所述備份服務(wù)器具體用于:

將所述待存儲(chǔ)數(shù)據(jù)塊的指紋以及所述第一索引指紋發(fā)送至所述第一存儲(chǔ)器;以及接收所述第一存儲(chǔ)器返回的所述第一概率,所述第一概率用于表示在所述第一索引指紋所代表的多個(gè)指紋中包含有與所述待存儲(chǔ)數(shù)據(jù)塊的指紋相同的指紋的概率;

將所述待存儲(chǔ)數(shù)據(jù)塊的指紋以及所述第二索引指紋發(fā)送至所述第二存儲(chǔ)器;以及接收所述第二存儲(chǔ)器返回的所述第一概率,所述第一概率用于表示在所述第二索引指紋所代表的多個(gè)指紋中包含有與所述待存儲(chǔ)數(shù)據(jù)塊的指紋相同的指紋的概率;

所述第一存儲(chǔ)器具體用于:接收所述備份服務(wù)器發(fā)送的第一索引指紋以及所述待存儲(chǔ)數(shù)據(jù)塊的指紋,并確定在所述第一索引指紋代表的多個(gè)指紋中包含與所述待存儲(chǔ)數(shù)據(jù)塊的指紋相同的指紋的第一概率,并將所述第一概率發(fā)送至所述備份服務(wù)器;

所述第二存儲(chǔ)器具體用于:接收所述備份服務(wù)器發(fā)送的第二索引指紋以及所述待存儲(chǔ)數(shù)據(jù)塊的指紋,并確定在所述第二索引指紋代表的多個(gè)指紋中包含與所述待存儲(chǔ)數(shù)據(jù)塊的指紋相同的指紋的第二概率,并將所述第二概率發(fā)送至所述備份服務(wù)器。

結(jié)合第三方面或第三方面的第一種可能的實(shí)現(xiàn)方式,在第三方面的第二種可能的實(shí)現(xiàn)方式中,所述第一指紋表中的每個(gè)指紋包含M位,每個(gè)M位指紋包含N個(gè)區(qū)間,所述N個(gè)區(qū)間中的每個(gè)區(qū)間包括M位中連續(xù)的S位,所述N個(gè)區(qū)間中任意兩個(gè)區(qū)間不重疊,所述N個(gè)區(qū)間的位數(shù)之和為M,N為大于或者等于2的自然數(shù),S為自然數(shù);所述第一存儲(chǔ)器上存儲(chǔ)有第一統(tǒng)計(jì)表,所述第一統(tǒng)計(jì)表包含所述第一索引指紋所代表的多個(gè)指紋的所述N個(gè)區(qū)間的數(shù)值的統(tǒng)計(jì)信息;

所述第一存儲(chǔ)器具體用于:根據(jù)所述第一統(tǒng)計(jì)表確定ai在所述第一索引指紋所代表的多個(gè)指紋的所述第i區(qū)間的數(shù)值中的出現(xiàn)頻次ti,其中,ai為待存儲(chǔ)數(shù)據(jù)塊的指紋的第i區(qū)間的數(shù)值,i的取值范圍為1至N;

根據(jù)所t1至tN中的最小值確定所述第一概率。

結(jié)合第三方面或第三方面的第一種可能的實(shí)現(xiàn)方式,在第三方面的第三種可能的實(shí)現(xiàn)方式中,所述第一存儲(chǔ)器上存儲(chǔ)有第一統(tǒng)計(jì)表,所述第一統(tǒng)計(jì)表包含所述第一索引指紋所代表的多個(gè)指紋的第一區(qū)間的數(shù)值的統(tǒng)計(jì)信息,以及所述第一索引指紋所代表的多個(gè)指紋的第二區(qū)間的數(shù)值的統(tǒng)計(jì)信息,所述第一區(qū)間為各指紋的第h位至第i位的區(qū)間,所述第二區(qū)間為各指紋的第j位至第k位的區(qū)間,其中,h、i、j、k均為自然數(shù),h的值不大于i的值,j的值不大于k的值,所述第一區(qū)間和所述第二區(qū)間不重疊;

所述第一存儲(chǔ)器具體用于:

根據(jù)所述第一統(tǒng)計(jì)表確定a在所述第一索引指紋所代表的多個(gè)指紋的所述第一區(qū)間的數(shù)值中的出現(xiàn)頻次t1以及b在所述第一索引指紋所代表的多個(gè)指紋的所述第二區(qū)間的數(shù)值中出現(xiàn)的頻次t2,其中,a為待存儲(chǔ)數(shù)據(jù)塊的指紋的第h位至第i位的數(shù)值,b為待存儲(chǔ)數(shù)據(jù)塊的指紋的第j位至第k位的數(shù)值;

根據(jù)所述t1和t2中的最小值確定所述第一概率。

本發(fā)明實(shí)施例中,備份服務(wù)器首先根據(jù)指紋索引表中的索引指紋以及待存儲(chǔ)數(shù)據(jù)塊的指紋確定出可能包含有待存儲(chǔ)數(shù)據(jù)塊的指紋的第一指紋集合。然后,備份服務(wù)器根據(jù)所述第一指紋集合中的第一索引指紋獲得第一指紋表中包含有與所述待存儲(chǔ)數(shù)據(jù)塊的指紋相同的指紋的第一概率,并根據(jù)所述第一指紋集合中的第二索引指紋獲得第二指紋表中包含有與所述待存儲(chǔ)數(shù)據(jù)塊的指紋相同的指紋的第二概率。再根據(jù)獲得的第一概率和第二概率中大于預(yù)設(shè)閾值的概率確定第二指紋集合,并將所述第二指紋集合中的索引指紋所代表的多個(gè)指紋與所述待存儲(chǔ)數(shù)據(jù)塊的指紋進(jìn)行匹配,以獲得匹配結(jié)果。通過本發(fā)明實(shí)施例提供的數(shù)據(jù)處理方法,在指紋匹配過程中,可以只將待存儲(chǔ)數(shù)據(jù)塊的指紋與獲得的第二指紋集合中的索引指紋所代表的多個(gè)指紋進(jìn)行匹配,而無需將待存儲(chǔ)數(shù)據(jù)塊的指紋與指紋庫中的所有數(shù)據(jù)的指紋進(jìn)行匹配,減少了指紋比對(duì)過程中數(shù)據(jù)的搬運(yùn)量,提高了數(shù)據(jù)處理的效率。

附圖說明

為了更清楚地說明本發(fā)明實(shí)施例中的技術(shù)方案,下面將對(duì)實(shí)施例描述中所需要使用的附圖作簡(jiǎn)要介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例的附圖。

圖1為本發(fā)明實(shí)施例提供的一種存儲(chǔ)系統(tǒng)的結(jié)構(gòu)示意圖;

圖2為本發(fā)明實(shí)施例提供的一種指紋表的示意圖;

圖3為本發(fā)明實(shí)施例提供的一種數(shù)據(jù)處理方法的流程示意圖;

圖4為本發(fā)明實(shí)施例提供的一種存儲(chǔ)系統(tǒng)的結(jié)構(gòu)示意框圖;

圖5為本發(fā)明實(shí)施例提供的一種指紋索引表的示意圖;

圖6為本發(fā)明實(shí)施例提供的一種指紋表的索引指紋的示意圖;

圖7為本發(fā)明實(shí)施例提供的又一種存儲(chǔ)系統(tǒng)的結(jié)構(gòu)示意框圖;

圖8為本發(fā)明實(shí)施例提供的一種統(tǒng)計(jì)表的實(shí)現(xiàn)方式的示意圖;

圖9為本發(fā)明實(shí)施例提供的又一種統(tǒng)計(jì)表的實(shí)現(xiàn)方式的示意圖;

圖10為本發(fā)明實(shí)施例提供的一種備份服務(wù)器的結(jié)構(gòu)示意框圖。

具體實(shí)施方式

針對(duì)存儲(chǔ)系統(tǒng)在進(jìn)行指紋比對(duì)時(shí)消耗大量I/O資源,導(dǎo)致數(shù)據(jù)存儲(chǔ)的效率較低的問題,本發(fā)明實(shí)施例提供一種數(shù)據(jù)處理方法、備份服務(wù)器及存儲(chǔ)系統(tǒng)。下面通過附圖以及具體實(shí)施例對(duì)本發(fā)明技術(shù)方案做詳細(xì)的說明,應(yīng)當(dāng)理解本發(fā)明實(shí)施例以及實(shí)施例中的具體特征是對(duì)本發(fā)明技術(shù)方案的詳細(xì)的說明,而不是對(duì)本發(fā)明技術(shù)方案的限定,在不沖突的情況下,本發(fā)明實(shí)施例以及實(shí)施例中的技術(shù)特征可以相互組合。

為了便于理解本發(fā)明實(shí)施例提供的技術(shù)方案,下面首先介紹本發(fā)明實(shí)施例的一種應(yīng)用場(chǎng)景。如圖1所示,圖1為本發(fā)明實(shí)施例提供的一種存儲(chǔ)系統(tǒng)的結(jié)構(gòu)示意圖。存儲(chǔ)系統(tǒng)10包括備份服務(wù)器11和多個(gè)存儲(chǔ)器12,其中,存儲(chǔ)器 12用于存儲(chǔ)數(shù)據(jù),備份服務(wù)器11用于確定待存儲(chǔ)數(shù)據(jù)塊是否為重復(fù)數(shù)據(jù),以及調(diào)度存儲(chǔ)器12對(duì)待存儲(chǔ)數(shù)據(jù)塊進(jìn)行存儲(chǔ)。存儲(chǔ)系統(tǒng)10中存儲(chǔ)有指紋(英文:Fingerprint;簡(jiǎn)稱:FP)表,圖2為指紋表的示意圖,指紋表中保存有存儲(chǔ)在存儲(chǔ)器12的數(shù)據(jù)的指紋以及該數(shù)據(jù)的的存儲(chǔ)位置。

存儲(chǔ)系統(tǒng)10在接收到存儲(chǔ)數(shù)據(jù)的請(qǐng)求后,備份服務(wù)器11將待存儲(chǔ)數(shù)據(jù)塊的指紋與指紋表中的指紋進(jìn)行比對(duì),如果在指紋表中檢索到與待存儲(chǔ)數(shù)據(jù)塊的指紋相同的指紋,則表明待存儲(chǔ)數(shù)據(jù)塊為重復(fù)數(shù)據(jù),存儲(chǔ)系統(tǒng)不用再存儲(chǔ)該數(shù)據(jù)塊,只需更新其引用關(guān)系;反之,如果在指紋表中沒有檢索到與待存儲(chǔ)數(shù)據(jù)塊的指紋相同的指紋,則表明待存儲(chǔ)數(shù)據(jù)塊為新數(shù)據(jù),存儲(chǔ)系統(tǒng)將分配存儲(chǔ)空間存儲(chǔ)該數(shù)據(jù)塊。

下面結(jié)合附圖重點(diǎn)介紹本發(fā)明實(shí)施例提供的用于指紋比對(duì)的技術(shù)方案。

圖3為本發(fā)明實(shí)施例提供的數(shù)據(jù)處理方法的流程示意圖,該方法可以包括:

步驟101:根據(jù)指紋索引表中的索引指紋以及待存儲(chǔ)數(shù)據(jù)塊的指紋確定第一指紋集合,其中,第一指紋集合中包含有第一索引指紋、第二索引指紋,第一索引指紋用于代表第一指紋表中的多個(gè)指紋,第二索引指紋用于代表第二指紋表中的多個(gè)指紋,待存儲(chǔ)數(shù)據(jù)塊的指紋屬于第一索引指紋所代表的多個(gè)指紋以及第二索引指紋所代表的多個(gè)指紋的指紋范圍;

步驟102:根據(jù)第一索引指紋獲得第一指紋表中包含有與待存儲(chǔ)數(shù)據(jù)塊的指紋相同的指紋的第一概率,并根據(jù)第二索引指紋獲得第二指紋表中包含有與待存儲(chǔ)數(shù)據(jù)塊的指紋相同的指紋的第二概率,其中,第一概率是根據(jù)第一索引指紋代表的多個(gè)指紋確定的,第二概率是根據(jù)第二索引指紋代表的多個(gè)指紋確定的;

步驟103:根據(jù)第一概率和第二概率確定第二指紋集合,其中,第二指紋集合中至少包含有第一索引指紋,根據(jù)第一索引指紋確定的第一概率不小于預(yù)設(shè)閾值;

步驟104:獲得第一索引指紋所代表的多個(gè)指紋與待存儲(chǔ)數(shù)據(jù)塊的指紋的 匹配結(jié)果。

本發(fā)明實(shí)施例中,步驟101~步驟104對(duì)應(yīng)的數(shù)據(jù)處理方法可以有至少兩種實(shí)施方式,下面分別予以介紹。

實(shí)施方式1

圖4為實(shí)施方式1對(duì)應(yīng)的存儲(chǔ)系統(tǒng)20的結(jié)構(gòu)示意圖,存儲(chǔ)系統(tǒng)20包括:備份服務(wù)器21以及多個(gè)存儲(chǔ)器22。在實(shí)施方式1中,步驟101~步驟104由備份服務(wù)器21來執(zhí)行。

其中,備份服務(wù)器21包括:處理器211、內(nèi)存212、以及輔助存儲(chǔ)器213,輔助存儲(chǔ)器213包括處理單元214,因此,輔助存儲(chǔ)器213具有運(yùn)算能力。存儲(chǔ)系統(tǒng)中的指紋表存儲(chǔ)在輔助存儲(chǔ)器213中,實(shí)際情況中,輔助存儲(chǔ)器213的數(shù)量可以為1個(gè),也可以為2個(gè)或以上。備份服務(wù)器21中存儲(chǔ)有指紋索引表,指紋索引表具體可以存放在內(nèi)存212之中,也可以存放在輔助存儲(chǔ)器213之中,或者是備份服務(wù)器21的其它存儲(chǔ)單元之中。

圖5為指紋索引表的示意圖,指紋索引表中保存有每個(gè)指紋表的至少兩個(gè)索引指紋,每個(gè)索引指紋代表一個(gè)指紋表中的多個(gè)指紋,每個(gè)指紋表的所有索引指紋所代表的指紋之和即為該指紋表所包含的所有指紋。圖5中的Ti表示第i指紋表,Li表示指紋表的第i索引指紋,例如,F(xiàn)P14為第1指紋表的第2索引指紋,其代表第1指紋表中中的FP14至FP17間(不包括FP17)的指紋,具體為FP14、FP15、FP16

實(shí)際情況中,每個(gè)指紋表中指紋可以根據(jù)指紋大小進(jìn)行排列,圖6為指紋表1對(duì)應(yīng)的索引指紋的示意圖,圖6中的指紋FP1至FP9依次增大,可以將指紋表1的指紋分為FP1~FP3、FP4~FP6、FP7~FP9這3個(gè)部分,以FP1、FP4、FP7作為該指紋表的3個(gè)索引指紋,索引指紋表中的FP1代表指紋表中的FP1~FP3,索引指紋表中的FP4代表指紋表中的FP4~FP6,索引指紋表中的FP7代表指紋表中的FP7~FP9。由于FP1至FP9的指紋大小依次增大,所以索引指紋表中的FP1、FP4、FP7各自代表的多個(gè)指紋的指紋范圍不重疊。

本發(fā)明實(shí)施例中,從索引指紋表中可以確定出每個(gè)索引指紋所代表的多個(gè)指紋的指紋范圍,其實(shí)現(xiàn)方式可以為:其一,以指紋表中連續(xù)的多個(gè)指紋中的第一個(gè)指紋作為這部分指紋的索引指紋,可以根據(jù)指紋表對(duì)應(yīng)的索引指紋中相鄰的兩個(gè)索引指紋確定出在前索引指紋代表的多個(gè)指紋的指紋范圍,沿用圖6的指紋表1,根據(jù)相連的索引指紋的FP1、FP4可以確定FP1代表的多個(gè)指紋的指紋范圍為[FP1,F(xiàn)P4)。其二,索引指紋表中包含指紋范圍屬性,針對(duì)每個(gè)索引指紋保存其所代表的多個(gè)指紋的指紋范圍。

步驟101中,備份服務(wù)器21的處理器211根據(jù)待存儲(chǔ)數(shù)據(jù)塊的指紋的大小,從指紋索引表確定出所代表的多個(gè)指紋的指紋范圍包括待存儲(chǔ)數(shù)據(jù)塊的指紋的索引指紋,確定出的索引指紋的集合為第一指紋集合。

為了便于描述,本發(fā)明實(shí)施例中以第一指紋表、第二指紋表為例進(jìn)行說明,但不能以此限定本發(fā)明實(shí)施例中存儲(chǔ)系統(tǒng)中只包含有第一指紋表和第二指紋表,也不能限定本發(fā)明實(shí)施例中僅對(duì)指紋索引表中第一指紋表和第二指紋表對(duì)應(yīng)的索引指紋進(jìn)行步驟101的操作。實(shí)際情況中,針對(duì)每個(gè)指紋表對(duì)應(yīng)的索引指紋均進(jìn)行步驟101操作,由于每個(gè)指紋表的多個(gè)索引指紋各自對(duì)應(yīng)的指紋范圍不重疊,所以,針對(duì)每個(gè)指紋表,從其對(duì)應(yīng)的多個(gè)索引指紋中至多可以確定出一個(gè)索引指紋。

然后,執(zhí)行步驟102,備份服務(wù)器21確定出每個(gè)指紋表中包含與待存儲(chǔ)數(shù)據(jù)塊相同指紋的概率,由于步驟101中已經(jīng)從每個(gè)指紋表中確定出對(duì)應(yīng)的指紋范圍包括待存儲(chǔ)數(shù)據(jù)塊的索引指紋,則該指紋表的其它索引指紋所代表的指紋中一定不包含待存儲(chǔ)數(shù)據(jù)塊的指紋,因此,第一指紋表中包含與待存儲(chǔ)數(shù)據(jù)塊相同指紋的概率,實(shí)質(zhì)為步驟101中確定出的第一索引指紋代表的多個(gè)指紋中包含與待存儲(chǔ)數(shù)據(jù)塊相同指紋的概率,同理,第二指紋表中包含與待存儲(chǔ)數(shù)據(jù)塊相同指紋的概率,實(shí)質(zhì)為步驟101中確定出的第二索引指紋代表的多個(gè)指紋中包含與待存儲(chǔ)數(shù)據(jù)塊相同指紋的概率。

具體實(shí)施時(shí),處理器211將待存儲(chǔ)數(shù)據(jù)塊的指紋以及第一指紋集合中的索 引指紋發(fā)送至輔助存儲(chǔ)器213,由輔助存儲(chǔ)器213通過其處理單元214確定從第一指紋集合中的每個(gè)索引指紋所代表的多個(gè)指紋中檢索到待存儲(chǔ)數(shù)據(jù)塊的指紋的概率,然后,輔助存儲(chǔ)器213將確定出的概率值返回給處理器211。其中,輔助存儲(chǔ)器213具體可以根據(jù)接收的索引指紋所代表的多個(gè)指紋的統(tǒng)計(jì)信息(如指紋在待存儲(chǔ)數(shù)據(jù)塊的指紋的數(shù)值附近的分布信息、指紋的值在各指紋維度下的頻次統(tǒng)計(jì)信息,等等)來確定在索引指紋所代表的多個(gè)指紋中包含與待存儲(chǔ)數(shù)據(jù)塊的指紋相同的指紋的概率。

在備份服務(wù)器21包括兩個(gè)或以上的輔助存儲(chǔ)器213時(shí),處理器可以只向輔助存儲(chǔ)器213發(fā)送第一指紋集合中與該輔助存儲(chǔ)器保存的指紋表相關(guān)的索引指紋。例如,備份服務(wù)器21包括第一輔助存儲(chǔ)器和第二輔助存儲(chǔ)器,其中,第一輔助存儲(chǔ)器保存有第一指紋表,第二輔助存儲(chǔ)器保存有第二指紋表,處理器211將待存儲(chǔ)數(shù)據(jù)塊的指紋以及第一索引指紋發(fā)送至第一輔助存儲(chǔ)器,將待存儲(chǔ)數(shù)據(jù)塊的指紋以及第二索引指紋發(fā)送至第二輔助存儲(chǔ)器。第一輔助存儲(chǔ)器通過其處理單元確定出第一概率,并返回給處理器211;第二輔助存儲(chǔ)器通過其處理單元確定出第二概率,并返回給處理器211。

然后,執(zhí)行步驟103,備份服務(wù)器21根據(jù)接收到的從每個(gè)指紋表中檢索到待存儲(chǔ)數(shù)據(jù)塊的指紋的概率,確定出第二指紋集合,第二指紋集合中包含第一指紋集合中滿足預(yù)設(shè)條件的索引指紋,該預(yù)設(shè)條件為:在索引指紋代表的多個(gè)指紋中檢索到待存儲(chǔ)數(shù)據(jù)塊的指紋的概率(即:步驟102中確定出的,存儲(chǔ)該索引指紋代表的多個(gè)指紋的指紋表中包括與待存儲(chǔ)數(shù)據(jù)塊的指紋的指紋相同的指紋的概率)大于預(yù)設(shè)閾值。其中,預(yù)設(shè)閾值的值可以為0,即從第一指紋集合中剔除一部分索引指紋形成第二指紋集合,被剔除的索引指紋為在其代表的多個(gè)指紋中檢索到待存儲(chǔ)數(shù)據(jù)塊的概率為0的這部分索引指紋。

例如,不妨設(shè)輔助存儲(chǔ)器213返回給處理器211的在第二索引指紋代表的多個(gè)指紋中檢索到待存儲(chǔ)數(shù)據(jù)塊的指紋的第二概率小于預(yù)設(shè)閾值,而在第一索引指紋代表的多個(gè)指紋中檢索到待存儲(chǔ)數(shù)據(jù)塊的指紋的第一概率大于預(yù)設(shè)閾 值,則第一索引指紋包含在第二指紋集合之中,而第二索引指紋沒有包含在第二指紋集合之中。

然后,執(zhí)行步驟104,備份服務(wù)器21在第二指紋集合中的索引指紋代表的多個(gè)指紋中進(jìn)行指紋比對(duì),獲得指紋比對(duì)結(jié)果,以此確定待存儲(chǔ)數(shù)據(jù)塊是否為重復(fù)數(shù)據(jù)。具體實(shí)施時(shí),包括兩種實(shí)現(xiàn)方式:其一,處理器211將輔助存儲(chǔ)器213中保存的指紋表中的第二指紋集合中的索引指紋所代表的多個(gè)指紋讀取到內(nèi)存212中,然后在內(nèi)存212中進(jìn)行指紋的比對(duì)。其二,由輔助存儲(chǔ)器213通過自身包含的處理單元214完成指紋的比對(duì),即輔助存儲(chǔ)器213通過自身的處理單元214將自身存儲(chǔ)的指紋表中的、第二指紋集合中的索引指紋所代表的多個(gè)指紋讀取到輔助存儲(chǔ)器213的緩沖器中,進(jìn)行指紋比對(duì)。其中,輔助存儲(chǔ)器213的緩沖器可以是隨機(jī)存儲(chǔ)器(英語:Random Access Memory;簡(jiǎn)稱:RAM),也可以為高速緩存(Cache)。由于通過輔助存儲(chǔ)器213進(jìn)行指紋比對(duì)時(shí),無需進(jìn)行數(shù)據(jù)的外部搬運(yùn),能夠減少因數(shù)據(jù)搬運(yùn)而產(chǎn)生的耗時(shí)。

實(shí)際情況中,步驟103中的預(yù)設(shè)閾值也可以為大于0的概率值,備份服務(wù)器21首先在根據(jù)大于0的預(yù)設(shè)閾值確定出的第二指紋集合中的索引指紋所代表的多個(gè)指紋中進(jìn)行指紋比對(duì),如果比對(duì)結(jié)果無法確認(rèn)待存儲(chǔ)數(shù)據(jù)塊是否為重復(fù)數(shù)據(jù),則備份服務(wù)器21在對(duì)應(yīng)的概率值在(0,預(yù)設(shè)閾值)之間的索引指紋所代表的多個(gè)指紋中進(jìn)行指紋比對(duì)。即,備份服務(wù)器先在概率較大的索引指紋代表的多個(gè)指紋中進(jìn)行指紋比對(duì),在比對(duì)結(jié)果無法確認(rèn)待存儲(chǔ)數(shù)據(jù)塊的重復(fù)性時(shí),再在概率較小的索引指紋代表的多個(gè)指紋中進(jìn)行指紋比對(duì),能夠有效減少指紋比對(duì)的耗時(shí)。

指紋比對(duì)的另一種實(shí)現(xiàn)方式為:步驟103中預(yù)設(shè)閾值的值為0,確定對(duì)應(yīng)的概率值大于0的索引指紋為第二指紋集合的元素,然后,備份服務(wù)器21可以對(duì)第二指紋集合中的索引指紋按其對(duì)應(yīng)的概率值進(jìn)行排序,處理器211在將第二指紋集合中的索引指紋代表的多個(gè)指紋讀取到內(nèi)存進(jìn)行指紋檢索時(shí),根據(jù)索引指紋的概率值排序確定指紋讀取的順序。即,首先讀取對(duì)應(yīng)的概率值最大 的索引指紋所代表的多個(gè)指紋,在無法根據(jù)這部分指紋確定待存儲(chǔ)指紋是否為重復(fù)數(shù)據(jù)后,再將概率值排在第二位的索引指紋代表的多個(gè)指紋讀取到內(nèi)存進(jìn)行指紋比對(duì)。以此類推,直至檢索到與待存儲(chǔ)數(shù)據(jù)塊的指紋相同的指紋;或者,確定在所有的概率值大于0的索引指紋所代表的多個(gè)指紋中均沒有包含與待存儲(chǔ)數(shù)據(jù)塊的指紋相同的指紋。前一種情況表明待存儲(chǔ)數(shù)據(jù)塊為重復(fù)數(shù)據(jù),后一種情況表明待存儲(chǔ)數(shù)據(jù)塊為新數(shù)據(jù)。

上述技術(shù)方案中,備份服務(wù)器21通過指紋索引表在每個(gè)指紋表中確定出一個(gè)索引指紋代表的多個(gè)指紋,該索引指紋代表的多個(gè)指紋的指紋范圍包括待存儲(chǔ)數(shù)據(jù)塊的指紋的多個(gè)指紋,然后基于從每個(gè)指紋表中確定出的多個(gè)指紋進(jìn)行下一步的指紋比對(duì)操作,減少了指紋搬運(yùn)的工作量。不僅如此,針對(duì)每個(gè)指紋表計(jì)算在其(確定出的多個(gè)指紋)中檢索到待存儲(chǔ)數(shù)據(jù)塊的指紋的概率,然后在概率不小于預(yù)設(shè)閾值的指紋表的確定出的多個(gè)指紋中進(jìn)行指紋比對(duì),減少指紋比對(duì)時(shí)指紋的搬運(yùn)量,減少指紋比對(duì)的耗時(shí),提高存儲(chǔ)數(shù)據(jù)的效率。

實(shí)施方式2

圖7為實(shí)施方式2對(duì)應(yīng)的存儲(chǔ)系統(tǒng)30的結(jié)構(gòu)示意圖,存儲(chǔ)系統(tǒng)30包括:備份服務(wù)器31以及多個(gè)存儲(chǔ)器32。在實(shí)施方式2中,步驟101~步驟104由備份服務(wù)器31來執(zhí)行。

其中,存儲(chǔ)器32用于存儲(chǔ)數(shù)據(jù)塊以及指紋表,指紋表的形式可以參照?qǐng)D5,存儲(chǔ)器32存儲(chǔ)的指紋表可以由存儲(chǔ)在該存儲(chǔ)器上的數(shù)據(jù)塊對(duì)應(yīng)的指紋信息所形成,存儲(chǔ)器32存儲(chǔ)的指紋表也可以與存儲(chǔ)器32自身存儲(chǔ)的數(shù)據(jù)塊無關(guān)的其他數(shù)據(jù)塊的指紋信息。備份服務(wù)器31包括處理器311以及內(nèi)存312。備份服務(wù)器31中存儲(chǔ)有指紋索引表,指紋索引表具體可以存放在內(nèi)存312之中,也可以存放在備份服務(wù)器31的其它存儲(chǔ)單元之中。

步驟101中,處理器311確定第一指紋集合的方式與前述處理器211確定第一指紋集合的方式相同,本發(fā)明實(shí)施例不予重復(fù)。

然后,備份服務(wù)器31執(zhí)行步驟102,獲得在每個(gè)指紋表(對(duì)應(yīng)的屬于第一 指紋集合的索引指紋代表的多個(gè)指紋)中檢索到待存儲(chǔ)數(shù)據(jù)塊的指紋的概率。具體實(shí)現(xiàn)方式包括:其一,存儲(chǔ)有指紋表的存儲(chǔ)器32包含處理單元321,與備份服務(wù)器21獲得概率值類似,備份服務(wù)器31可以將待存儲(chǔ)數(shù)據(jù)塊的指紋以及第一指紋集合中的索引指紋發(fā)送至存儲(chǔ)器32,存儲(chǔ)器32通過自身的處理單元321以及自身保存的指紋統(tǒng)計(jì)信息確定出上述概率值,然后將該概率值發(fā)送至備份服務(wù)器31。其二,處理器311將存儲(chǔ)在存儲(chǔ)器32上的指紋的統(tǒng)計(jì)信息讀取到內(nèi)存312中,處理器311自己根據(jù)存入內(nèi)存312的統(tǒng)計(jì)信息確定上述概率值。

然后,備份服務(wù)器31執(zhí)行步驟103,其實(shí)現(xiàn)方式與前述備份服務(wù)器21執(zhí)行步驟103一致。

然后,備份服務(wù)器31執(zhí)行步驟104,獲得在第二指紋集合的索引指紋代表的多個(gè)指紋中對(duì)待存儲(chǔ)數(shù)據(jù)塊的指紋進(jìn)行比對(duì)的結(jié)果。與前述備份服務(wù)器21執(zhí)行步驟104類似,備份服務(wù)器31可以通過處理器311將存儲(chǔ)在存儲(chǔ)器32上的第二指紋集合中的索引指紋代表的多個(gè)指紋讀取到內(nèi)存中進(jìn)行指紋比對(duì),即指紋比對(duì)的工作由備份服務(wù)器31自己完成。此外,備份服務(wù)器31獲得指紋比對(duì)結(jié)果的另一種方式為:備份服務(wù)器31將第二指紋集合中的索引指紋以及待存儲(chǔ)數(shù)據(jù)塊的指紋發(fā)送給存儲(chǔ)器32,由存儲(chǔ)器32通過自身的處理單元321在存儲(chǔ)器32本地進(jìn)行指紋比對(duì),這種方式能夠減少數(shù)據(jù)的搬運(yùn),而且多個(gè)存儲(chǔ)器32之間能夠以并行的方式進(jìn)行指紋比對(duì),能夠提高指紋比對(duì)的效率。

根據(jù)步驟103~步驟104進(jìn)行指紋比對(duì)的一種實(shí)現(xiàn)方式為:步驟103中預(yù)設(shè)閾值的值為0,確定對(duì)應(yīng)的概率值大于0的索引指紋為第二指紋集合的元素,然后,備份服務(wù)器31可以對(duì)第二指紋集合中的索引指紋按其對(duì)應(yīng)的概率值進(jìn)行排序,處理器311在將第二指紋集合中的索引指紋代表的多個(gè)指紋讀取到內(nèi)存進(jìn)行指紋檢索時(shí),根據(jù)索引指紋的概率值排序確定指紋讀取的順序。即,首先讀取對(duì)應(yīng)的概率值最大的索引指紋所代表的多個(gè)指紋,在無法根據(jù)這部分指紋確定待存儲(chǔ)指紋是否為重復(fù)數(shù)據(jù)后,再將概率值排在第二位的索引指紋代表 的多個(gè)指紋讀取到內(nèi)存進(jìn)行指紋比對(duì)。以此類推,直至檢索到與待存儲(chǔ)數(shù)據(jù)塊的指紋相同的指紋;或者,確定在所有的概率值大于0的索引指紋所代表的多個(gè)指紋中均沒有包含與待存儲(chǔ)數(shù)據(jù)塊的指紋相同的指紋。前一種情況表明待存儲(chǔ)數(shù)據(jù)塊為重復(fù)數(shù)據(jù),后一種情況表明待存儲(chǔ)數(shù)據(jù)塊為新數(shù)據(jù)。

上述步驟101~步驟104的兩種實(shí)現(xiàn)方式中,在指紋匹配過程中,可以只將待存儲(chǔ)數(shù)據(jù)塊的指紋與獲得的第二指紋集合中的索引指紋所代表的多個(gè)指紋進(jìn)行匹配,而無需將待存儲(chǔ)數(shù)據(jù)塊的指紋與指紋庫中的所有數(shù)據(jù)的指紋進(jìn)行匹配,減少了指紋比對(duì)過程中數(shù)據(jù)的搬運(yùn)量,提高了數(shù)據(jù)處理的效率。

可選的,在存儲(chǔ)系統(tǒng)20中的備份服務(wù)器21包含2個(gè)或以上的輔助存儲(chǔ)器213時(shí),指紋索引表中還可以包含第一索引指紋所屬的第一指紋表的位置信息,即第一指紋表保存在哪個(gè)輔助存儲(chǔ)器中的信息,備份服務(wù)器21執(zhí)行步驟102時(shí),處理器211只需根據(jù)第一索引指紋對(duì)應(yīng)的位置信息定位出存儲(chǔ)第一指紋表的輔助存儲(chǔ)器,對(duì)應(yīng)將第一索引指紋和待存儲(chǔ)數(shù)據(jù)塊的指紋發(fā)送至該輔助存儲(chǔ)器,以使該輔助存儲(chǔ)器確定在第一指紋表中包括待存儲(chǔ)數(shù)據(jù)塊的指紋相同的指紋的概率。

可選的,在存儲(chǔ)系統(tǒng)30中,指紋索引表中還可以包含第一索引指紋所屬的第一指紋表的位置信息,即保存有第一指紋表的第一存儲(chǔ)器的標(biāo)識(shí),備份服務(wù)器31執(zhí)行步驟102時(shí),處理器311只需根據(jù)第一索引指紋對(duì)應(yīng)的位置信息定位出第一存儲(chǔ)器,對(duì)應(yīng)將第一索引指紋和待存儲(chǔ)數(shù)據(jù)塊的指紋發(fā)送至第一存儲(chǔ)器,以使第一存儲(chǔ)器確定在第一指紋表中包括待存儲(chǔ)數(shù)據(jù)塊的指紋相同的指紋的概率。

在一種情況下,第一指紋表存儲(chǔ)在多個(gè)存儲(chǔ)器中的第一存儲(chǔ)器中,第二指紋表存儲(chǔ)在多個(gè)存儲(chǔ)器中的第二存儲(chǔ)器中。

步驟102中,根據(jù)第一索引指紋獲得第一指紋表中包含有與待存儲(chǔ)數(shù)據(jù)塊的指紋相同的指紋的第一概率,實(shí)施時(shí)包括如下步驟:

將待存儲(chǔ)數(shù)據(jù)塊的指紋以及第一索引指紋發(fā)送至第一存儲(chǔ)器;

接收第一存儲(chǔ)器返回的第一概率,第一概率用于表示在第一索引指紋所代表的多個(gè)指紋中包含有與待存儲(chǔ)數(shù)據(jù)塊的指紋相同的指紋的概率。

在步驟102中,根據(jù)第二索引指紋獲得第二指紋表中包含有與待存儲(chǔ)數(shù)據(jù)塊的指紋相同的指紋的第二概率,實(shí)施時(shí)包括如下步驟:將待存儲(chǔ)數(shù)據(jù)塊的指紋以及第二索引指紋發(fā)送至第二存儲(chǔ)器;接收第二存儲(chǔ)器返回的第二概率,第二概率用于表示在第二索引指紋所代表的多個(gè)指紋中包含有與待存儲(chǔ)數(shù)據(jù)塊的指紋相同的指紋的概率。

具體的,上述方式對(duì)應(yīng)前述實(shí)施方式2中備份服務(wù)器31執(zhí)行步驟102的情形,第一存儲(chǔ)器以及第二存儲(chǔ)器為兩個(gè)存儲(chǔ)器32,能夠根據(jù)自身包含的處理單元321進(jìn)行指紋比對(duì)。其具體實(shí)施方式在實(shí)施方式2中已經(jīng)有詳細(xì)描述,在此不再重復(fù)。

在另一種情況下,備份服務(wù)器包括輔助存儲(chǔ)器,第一指紋表以及第二指紋表存儲(chǔ)在輔助存儲(chǔ)器中。

在步驟102中:根據(jù)第一索引指紋獲得第一指紋表中包含有與待存儲(chǔ)數(shù)據(jù)塊的指紋相同的指紋的第一概率,并根據(jù)第二索引指紋獲得第二指紋表中包含有與待存儲(chǔ)數(shù)據(jù)塊的指紋相同的指紋的第二概率,實(shí)施時(shí)包括如下步驟:

將待存儲(chǔ)數(shù)據(jù)塊的指紋以及第一索引指紋、第二索引指紋發(fā)送至輔助存儲(chǔ)器;接收輔助存儲(chǔ)器返回的在第一索引指紋所代表的多個(gè)指紋中包含有與待存儲(chǔ)數(shù)據(jù)塊的指紋相同的指紋的第一概率,以及在第二索引指紋所代表的多個(gè)指紋中包含有與待存儲(chǔ)數(shù)據(jù)塊的指紋相同的指紋的第二概率。

具體的,上述方式對(duì)應(yīng)前述實(shí)施方式1中備份服務(wù)器21執(zhí)行步驟102的情形,本實(shí)施例中的輔助存儲(chǔ)器即為實(shí)施方式1中的輔助存儲(chǔ)器213,能夠根據(jù)自身包含的處理單元214進(jìn)行指紋比對(duì)。其具體實(shí)施方式在實(shí)施方式1中已經(jīng)有詳細(xì)描述,在此不再重復(fù)。

可選的,本發(fā)明實(shí)施例中,第一指紋表中的每個(gè)指紋包含M位,每個(gè)M位指紋包含N個(gè)區(qū)間,N個(gè)區(qū)間中的每個(gè)區(qū)間包括M位中連續(xù)的S位,N個(gè) 區(qū)間中任意兩個(gè)區(qū)間不重疊,N個(gè)區(qū)間的位數(shù)之和為M,N為大于或者等于2的自然數(shù),S為自然數(shù)。通過上述設(shè)定,可以將指紋表中的每個(gè)指紋劃分為N個(gè)區(qū)間,每個(gè)區(qū)間相當(dāng)于一個(gè)指紋維度。例如,64比特(bit)的指紋可以劃分為4維16bit的數(shù)值組成,即1bit~16bit為第一維,17bit~32bit為第二維,33bit~48bit為第三維,49bit~64bit為第四維。實(shí)際情況中,不限定每一維數(shù)值所占的比特?cái)?shù),也不限定所有維度所占的比特?cái)?shù)均相同。

存儲(chǔ)系統(tǒng)中存儲(chǔ)有第一統(tǒng)計(jì)表,第一統(tǒng)計(jì)表包含有第一索引指紋所代表的多個(gè)指紋在N個(gè)區(qū)間的數(shù)值的統(tǒng)計(jì)信息。圖8為一種第一統(tǒng)計(jì)表的示意圖,不妨設(shè)第一索引指紋所代表的3個(gè)指紋分別為01020504H、01030504H、02030102H,每個(gè)指紋劃分為4維,以01025004H為例,其四個(gè)指紋維度的值分別為1、2、5、4。第一統(tǒng)計(jì)表記錄了每個(gè)維度中可能的數(shù)值在第一索引指紋所代表的多個(gè)指紋中相應(yīng)維度中的出現(xiàn)頻次,例如,數(shù)值“1”在第一維中出現(xiàn)的頻次2,數(shù)值“2”在第一維中出現(xiàn)的頻次1,數(shù)值“3”、“4”、“5”在第一維中出現(xiàn)的頻次均為0。

第一概率的確定方式包括:根據(jù)第一統(tǒng)計(jì)表確定ai在第一索引指紋所代表的多個(gè)指紋的第i區(qū)間的數(shù)值中的出現(xiàn)頻次ti,其中,ai為待存儲(chǔ)數(shù)據(jù)塊的指紋的第i個(gè)區(qū)間的數(shù)值,i的取值范圍為1至N;根據(jù)獲得的t1至tN中的最小值確定第一概率。

具體的,在前述存儲(chǔ)系統(tǒng)20中,第一統(tǒng)計(jì)表可以存儲(chǔ)在保存第一指紋表的輔助存儲(chǔ)器213上,第一概率由該輔助存儲(chǔ)器213通過自身的處理單元214所確定。例如,不妨設(shè)待存儲(chǔ)數(shù)據(jù)塊的指紋為01020404H,該指紋在四個(gè)指紋維度中的數(shù)值分別為1、2、4、4。計(jì)算在圖5所示的表塊中檢索到該待檢索指紋的概率指標(biāo)的方式為:在表中第一維度中查找數(shù)值1的頻次為2,在第二維度查找數(shù)值2的頻次為1,在第三維度查找數(shù)值4的頻次為0,在第四維度中查找數(shù)值4的頻次為2,則概率指標(biāo)為頻次中的最小值0。

在前述存儲(chǔ)系統(tǒng)30中,第一統(tǒng)計(jì)表可以存儲(chǔ)在保存第一指紋表的存儲(chǔ)器 32中,第一概率由該存儲(chǔ)器通過其處理單元321所確定,具體確定方法與上述處理單元214根據(jù)第一統(tǒng)計(jì)表確定第一概率的方式相同。

實(shí)際情況中,第二概率也可以采用上述方式,利用指紋的統(tǒng)計(jì)表來進(jìn)行確定,本發(fā)明實(shí)施例在此不再重復(fù)。

上述技術(shù)方案中,通過第一統(tǒng)計(jì)表來確定在第一索引指紋代表的多個(gè)指紋中檢索到待存儲(chǔ)數(shù)據(jù)塊的指紋的第一概率,其實(shí)現(xiàn)方式簡(jiǎn)單,運(yùn)算量小,耗時(shí)較少,且結(jié)果準(zhǔn)確。

可選的,作為另一實(shí)施例,存儲(chǔ)系統(tǒng)中存儲(chǔ)有第一統(tǒng)計(jì)表,圖9為另一種第一統(tǒng)計(jì)表的示意圖,第一統(tǒng)計(jì)表包含第一索引指紋所代表的多個(gè)指紋的第一區(qū)間的數(shù)值的統(tǒng)計(jì)信息,以及第一索引指紋所代表的多個(gè)指紋的第二區(qū)間的數(shù)值的統(tǒng)計(jì)信息,第一區(qū)間為各指紋的第h位至第i位的區(qū)間,第二區(qū)間為各指紋的第j位至第k位的區(qū)間,其中,h、i、j、k均為自然數(shù),h的值不大于i的值,j的值不大于k的值,第一區(qū)間和第二區(qū)間不重疊。

第一概率的確定方式包括:根據(jù)第一統(tǒng)計(jì)表確定a在第一索引指紋所代表的多個(gè)指紋的第一區(qū)間的數(shù)值中的出現(xiàn)頻次t1以及b在第一索引指紋所代表的多個(gè)指紋的第二區(qū)間的數(shù)值中出現(xiàn)的頻次t2,其中,a為待存儲(chǔ)數(shù)據(jù)塊的指紋的第h位至第i位的數(shù)值,b為待存儲(chǔ)數(shù)據(jù)塊的指紋的第j位至第k位的數(shù)值;根據(jù)t1和t2中的最小值確定第一概率。

實(shí)際情況中,確定第一概率的作用主要為從第一指紋集合中排除一部分索引指紋,這些被排除的索引指紋代表的多個(gè)指紋中包含與待存儲(chǔ)數(shù)據(jù)塊的指紋相同的指紋的概率為0。本發(fā)明實(shí)施例中,參照?qǐng)D9,第一統(tǒng)計(jì)表中只包含指紋的部分維度的統(tǒng)計(jì)信息,沿用第一索引指紋代表01020504H、01030504H、02030102H這3個(gè)指紋的例子,第一統(tǒng)計(jì)表中可以只保存第一維以及第三維的統(tǒng)計(jì)信息,不妨設(shè)待存儲(chǔ)數(shù)據(jù)塊的指紋為01020404H,其第三維為“4”,根據(jù)圖9的第一統(tǒng)計(jì)表可以確定在第三維出現(xiàn)“4”的頻次為0,表明在第一索引指紋代表的多個(gè)指紋中不包含待存儲(chǔ)數(shù)據(jù)塊的指紋。同理,本實(shí)施例中的第一 統(tǒng)計(jì)表可以保存在存儲(chǔ)系統(tǒng)20的輔助存儲(chǔ)器213之中,則第一概率由輔助存儲(chǔ)器213根據(jù)其自身的處理單元214所確定。第一統(tǒng)計(jì)表也可以保存在存儲(chǔ)系統(tǒng)30中的存儲(chǔ)器32之中,則第一概率由存儲(chǔ)器32自身的處理單元321所確定。

上述技術(shù)方案中,通過指紋的部分維度的統(tǒng)計(jì)信息來確定在第一索引指紋代表的多個(gè)指紋中檢索到待存儲(chǔ)數(shù)據(jù)塊的指紋的第一概率,以從第一指紋集合中剔除部分對(duì)應(yīng)的概率值為0的索引指紋,減少指紋比對(duì)時(shí)的數(shù)據(jù)搬運(yùn)量,而且其實(shí)現(xiàn)方式簡(jiǎn)單,運(yùn)算量小,耗時(shí)較少。

可選的,作為另一實(shí)施例,在第一指紋集合為空集合時(shí),備份服務(wù)器21或備份服務(wù)器31確定待存儲(chǔ)數(shù)據(jù)塊為新數(shù)據(jù)。

可選的,作為另一實(shí)施例,在預(yù)設(shè)閾值為0時(shí),在第二指紋集合為空集合時(shí),備份服務(wù)器21或備份服務(wù)器31確定待存儲(chǔ)數(shù)據(jù)塊為新數(shù)據(jù)。

可選的,作為另一實(shí)施例,備份服務(wù)器在執(zhí)行步驟101之前,還包括如下步驟:對(duì)待存儲(chǔ)數(shù)據(jù)塊的指紋進(jìn)行指紋過濾,并確定通過指紋過濾無法判斷待存儲(chǔ)數(shù)據(jù)塊的指紋是否為重復(fù)指紋。

具體的,備份服務(wù)器在從指紋表中檢索待存儲(chǔ)數(shù)據(jù)塊的指紋之前,可以根據(jù)指紋過濾技術(shù)對(duì)待檢索指紋進(jìn)行預(yù)判,預(yù)判的結(jié)果包括三種,其一,確定指紋表中存在待存儲(chǔ)數(shù)據(jù)塊的指紋,待存儲(chǔ)數(shù)據(jù)塊為重復(fù)數(shù)據(jù);其二,確定指紋表中不包含待存儲(chǔ)數(shù)據(jù)塊的指紋,待存儲(chǔ)數(shù)據(jù)塊為新數(shù)據(jù);其三,無法斷言指紋表中是否包含待存儲(chǔ)數(shù)據(jù)塊的指紋,只有在這種情況下,備份服務(wù)器才執(zhí)行步驟101~步驟104。

具體實(shí)施時(shí),可以采用布隆過濾器(Bloom Filter),或者局部性保持(英文:Locality Preserved Caching;簡(jiǎn)稱:LPC)技術(shù)等指紋過濾技術(shù),也可以采用兩種或以上的指紋過濾技術(shù)的結(jié)合,例如,先采用布隆過濾器對(duì)指紋進(jìn)行過濾,如果布隆過濾器無法判斷待存儲(chǔ)數(shù)據(jù)塊的指紋是否為重復(fù)指紋,則進(jìn)一步采用LPC技術(shù)進(jìn)行過濾。指紋過濾技術(shù)的具體實(shí)現(xiàn)方式請(qǐng)參照現(xiàn)有技術(shù),本 發(fā)明實(shí)施例不予詳述。

上述技術(shù)方案中備份服務(wù)器先通過指紋過濾技術(shù)對(duì)待存儲(chǔ)數(shù)據(jù)塊的指紋進(jìn)行預(yù)判,只有在不能預(yù)判待檢索指紋的情況下,才執(zhí)行步驟101~步驟104。通過指紋過濾技術(shù)能夠大幅縮短部分指紋的比對(duì)耗時(shí),提高備份服務(wù)器的性能。

可選的,在存儲(chǔ)系統(tǒng)20中,指紋表的維護(hù)方式可以為:在內(nèi)存212中實(shí)時(shí)創(chuàng)建新的指紋表,當(dāng)確定出當(dāng)前存儲(chǔ)的指紋表中不包含待存儲(chǔ)數(shù)據(jù)塊的指紋時(shí),確定待存儲(chǔ)數(shù)據(jù)塊為新數(shù)據(jù),并將其指紋添加到內(nèi)存實(shí)施創(chuàng)建的指紋表中,當(dāng)內(nèi)存中的指紋表的指紋數(shù)達(dá)到設(shè)定值后,將該指紋表存到輔助存儲(chǔ)器213上。另外,將該指紋表對(duì)應(yīng)的每個(gè)索引指紋添加到索引指紋表之中。再者,將該指紋表對(duì)應(yīng)的每個(gè)索引指紋對(duì)應(yīng)的多個(gè)指紋的維度值的統(tǒng)計(jì)表存到輔助存儲(chǔ)器213上。

在采用上述方式維護(hù)指紋表時(shí),備份服務(wù)器在進(jìn)行指紋比對(duì)時(shí),首先在內(nèi)存中在創(chuàng)建的指紋表中進(jìn)行比對(duì),比對(duì)結(jié)果不能確定待存儲(chǔ)數(shù)據(jù)塊是否為重復(fù)指紋時(shí),才執(zhí)行步驟101~步驟104,在存儲(chǔ)在內(nèi)存之外的指紋表中進(jìn)行指紋比對(duì)。

可選的,在存儲(chǔ)系統(tǒng)30中,指紋表的維護(hù)方式可以為:在確定待存儲(chǔ)數(shù)據(jù)塊為新數(shù)據(jù)時(shí),在保存該數(shù)據(jù)塊的存儲(chǔ)器32的指紋表中添加該數(shù)據(jù)塊的指紋,然后,更新該指紋表的統(tǒng)計(jì)表。

需要說明的是,以上處理器211、處理器311、處理單元214以及處理單元321,可以是一個(gè)獨(dú)立的處理器,也可以是多個(gè)處理元件的統(tǒng)稱。例如,處理器211、處理器311、處理單元214以及處理單元321可以是中央處理器(英文:Central Processing Unit;簡(jiǎn)稱:CPU),也可以是特定集成電路(英文:Application Specific Intergrated Circuit;簡(jiǎn)稱:ASIC),或者是被配置成實(shí)施本發(fā)明實(shí)施例的一個(gè)或多個(gè)集成電路,例如:一個(gè)或多個(gè)微處理器(英文:digital singnal processor;簡(jiǎn)稱:DSP),或,一個(gè)或者多個(gè)現(xiàn)場(chǎng)可編程門陣列(英文: Field Programmable Gate Array;簡(jiǎn)稱:FPGA)。

基于相同的發(fā)明構(gòu)思,本發(fā)明實(shí)施例提供一種備份服務(wù)器40,應(yīng)用于存儲(chǔ)系統(tǒng)中,該存儲(chǔ)系統(tǒng)包括備份服務(wù)器以及多個(gè)存儲(chǔ)器,存儲(chǔ)系統(tǒng)中存儲(chǔ)有多個(gè)指紋表,多個(gè)指紋表中記錄有已存儲(chǔ)于多個(gè)存儲(chǔ)器中的數(shù)據(jù)塊的指紋。圖10為備份服務(wù)器40的結(jié)構(gòu)示意框圖,備份服務(wù)器40包括:

確定模塊41,用于根據(jù)指紋索引表中的索引指紋以及待存儲(chǔ)數(shù)據(jù)塊的指紋確定第一指紋集合,其中,第一指紋集合中包含有第一索引指紋、第二索引指紋,第一索引指紋用于代表第一指紋表中的多個(gè)指紋,第二索引指紋用于代表第二指紋表中的多個(gè)指紋,待存儲(chǔ)數(shù)據(jù)塊的指紋屬于第一索引指紋所代表的多個(gè)指紋以及第二索引指紋所代表的多個(gè)指紋的指紋范圍;

獲得模塊42,用于根據(jù)第一索引指紋獲得第一指紋表中包含有與待存儲(chǔ)數(shù)據(jù)塊的指紋相同的指紋的第一概率,并根據(jù)第二索引指紋獲得第二指紋表中包含有與待存儲(chǔ)數(shù)據(jù)塊的指紋相同的指紋的第二概率,其中,第一概率是根據(jù)第一索引指紋代表的多個(gè)指紋確定的,第二概率是根據(jù)第二索引指紋代表的多個(gè)指紋確定的;

確定模塊41,還用于根據(jù)第一概率和第二概率確定第二指紋集合,其中,第二指紋集合中至少包含有第一索引指紋,根據(jù)第一索引指紋確定的第一概率不小于預(yù)設(shè)閾值;

處理模塊43,用于獲得第一索引指紋所代表的多個(gè)指紋與待存儲(chǔ)數(shù)據(jù)塊的指紋的匹配結(jié)果。

可選的,本發(fā)明實(shí)施例中,第一指紋表存儲(chǔ)在多個(gè)存儲(chǔ)器中的第一存儲(chǔ)器中,第二指紋表存儲(chǔ)在多個(gè)存儲(chǔ)器中的第二存儲(chǔ)器中;

獲得模塊42具體用于:將待存儲(chǔ)數(shù)據(jù)塊的指紋以及第一索引指紋發(fā)送至第一存儲(chǔ)器;并接收第一存儲(chǔ)器返回的第一概率,第一概率用于表示在第一索引指紋所代表的多個(gè)指紋中包含有與待存儲(chǔ)數(shù)據(jù)塊的指紋相同的指紋的概率;以及

將待存儲(chǔ)數(shù)據(jù)塊的指紋以及第二索引指紋發(fā)送至第二存儲(chǔ)器;并接收第二存儲(chǔ)器返回的第二概率,第二概率用于表示在第二索引指紋所代表的多個(gè)指紋中包含有與待存儲(chǔ)數(shù)據(jù)塊的指紋相同的指紋的概率。

可選的,本發(fā)明實(shí)施例中,備份服務(wù)器40還包括:

輔助存儲(chǔ)器,用于存儲(chǔ)第一指紋表以及第二指紋表;

獲得模塊42具體用于:將待存儲(chǔ)數(shù)據(jù)塊的指紋以及第一索引指紋、第二索引指紋發(fā)送至輔助存儲(chǔ)器;接收輔助存儲(chǔ)器返回的在第一索引指紋所代表的多個(gè)指紋中包含有與待存儲(chǔ)數(shù)據(jù)塊的指紋相同的指紋的第一概率,以及在第二索引指紋所代表的多個(gè)指紋中包含有與待存儲(chǔ)數(shù)據(jù)塊的指紋相同的指紋的第二概率。

可選的,本發(fā)明實(shí)施例中,輔助存儲(chǔ)器還用于存儲(chǔ)第一統(tǒng)計(jì)表,第一統(tǒng)計(jì)表包含第一索引指紋所代表的多個(gè)指紋的第一區(qū)間的數(shù)值的統(tǒng)計(jì)信息,以及第一索引指紋所代表的多個(gè)指紋的第二區(qū)間的數(shù)值的統(tǒng)計(jì)信息,第一區(qū)間為各指紋的第h位至第i位的區(qū)間,第二區(qū)間為各指紋的第j位至第k位的區(qū)間,其中,h、i、j、k均為自然數(shù),h的值不大于i的值,j的值不大于k的值,第一區(qū)間和第二區(qū)間不重疊;

輔助存儲(chǔ)器還用于:根據(jù)第一統(tǒng)計(jì)表確定a在第一索引指紋所代表的多個(gè)指紋的第一區(qū)間的數(shù)值中的出現(xiàn)頻次t1以及b在第一索引指紋所代表的多個(gè)指紋的第二區(qū)間的數(shù)值中出現(xiàn)的頻次t2,其中,a為待存儲(chǔ)數(shù)據(jù)塊的指紋的第h位至第i位的數(shù)值,b為待存儲(chǔ)數(shù)據(jù)塊的指紋的第j位至第k位的數(shù)值;并根據(jù)t1和t2中的最小值確定第一概率。

可選的,本發(fā)明實(shí)施例中,第一指紋表中的每個(gè)指紋包含M位,每個(gè)M位指紋包含N個(gè)區(qū)間,N個(gè)區(qū)間中的每個(gè)區(qū)間包括M位中連續(xù)的S位,N個(gè)區(qū)間中任意兩個(gè)區(qū)間不重疊,N個(gè)區(qū)間的位數(shù)之和為M,N為大于或者等于2的自然數(shù),S為自然數(shù);輔助存儲(chǔ)器中還用于存儲(chǔ)第一統(tǒng)計(jì)表,第一統(tǒng)計(jì)表包含第一索引指紋所代表的多個(gè)指紋的N個(gè)區(qū)間的數(shù)值的統(tǒng)計(jì)信息;

輔助存儲(chǔ)器還用于:根據(jù)第一統(tǒng)計(jì)表確定ai在第一索引指紋所代表的多個(gè)指紋的第i區(qū)間的數(shù)值中的出現(xiàn)頻次ti,其中,ai為待存儲(chǔ)數(shù)據(jù)塊的指紋的第i區(qū)間的數(shù)值,i的取值范圍為1至N,并根據(jù)所t1至tN中的最小值確定第一概率。

本實(shí)施例中的備份服務(wù)器40與圖3對(duì)應(yīng)的數(shù)據(jù)處理方法是基于同一發(fā)明構(gòu)思下的兩個(gè)方面,在前面已經(jīng)對(duì)方法的實(shí)施過程作了詳細(xì)的描述,所以本領(lǐng)域技術(shù)人員可根據(jù)前述描述清楚地了解本實(shí)施例中的備份服務(wù)器的40結(jié)構(gòu)及實(shí)施過程,為了說明書的簡(jiǎn)潔,在此就不再贅述了。

基于相同的發(fā)明構(gòu)思,本發(fā)明實(shí)施例中提供一種存儲(chǔ)系統(tǒng),包括備份服務(wù)器以及多個(gè)存儲(chǔ)器,存儲(chǔ)系統(tǒng)中存儲(chǔ)有多個(gè)指紋表,多個(gè)指紋表中記錄有已存儲(chǔ)于多個(gè)存儲(chǔ)器中的數(shù)據(jù)塊的指紋。

該備份服務(wù)器用于:

根據(jù)指紋索引表中的索引指紋以及待存儲(chǔ)數(shù)據(jù)塊的指紋確定第一指紋集合,其中,第一指紋集合中包含有第一索引指紋、第二索引指紋,第一索引指紋用于代表第一指紋表中的多個(gè)指紋,第二索引指紋用于代表第二指紋表中的多個(gè)指紋,待存儲(chǔ)數(shù)據(jù)塊的指紋屬于第一索引指紋所代表的多個(gè)指紋以及第二索引指紋所代表的多個(gè)指紋的指紋范圍;

根據(jù)第一索引指紋獲得第一指紋表中包含有與待存儲(chǔ)數(shù)據(jù)塊的指紋相同的指紋的第一概率,并根據(jù)第二索引指紋獲得第二指紋表中包含有與待存儲(chǔ)數(shù)據(jù)塊的指紋相同的指紋的第二概率,其中,第一概率是根據(jù)第一索引指紋代表的多個(gè)指紋確定的,第二概率是根據(jù)第二索引指紋代表的多個(gè)指紋確定的;

根據(jù)第一概率和第二概率確定第二指紋集合,其中,第二指紋集合中至少包含有第一索引指紋,根據(jù)第一索引指紋確定的第一概率不小于預(yù)設(shè)閾值;

獲得第一索引指紋所代表的多個(gè)指紋與待存儲(chǔ)數(shù)據(jù)塊的指紋的匹配結(jié)果。

可選的,本發(fā)明實(shí)施例中,第一指紋表存儲(chǔ)在多個(gè)存儲(chǔ)器中的第一存儲(chǔ)器中,第二指紋表存儲(chǔ)在多個(gè)存儲(chǔ)器中的第二存儲(chǔ)器中;備份服務(wù)器具體用于:

將待存儲(chǔ)數(shù)據(jù)塊的指紋以及第一索引指紋發(fā)送至第一存儲(chǔ)器;以及接收第一存儲(chǔ)器返回的第一概率,第一概率用于表示在第一索引指紋所代表的多個(gè)指紋中包含有與待存儲(chǔ)數(shù)據(jù)塊的指紋相同的指紋的概率;

將待存儲(chǔ)數(shù)據(jù)塊的指紋以及第二索引指紋發(fā)送至第二存儲(chǔ)器;以及接收第二存儲(chǔ)器返回的第一概率,第一概率用于表示在第二索引指紋所代表的多個(gè)指紋中包含有與待存儲(chǔ)數(shù)據(jù)塊的指紋相同的指紋的概率;

第一存儲(chǔ)器具體用于:接收備份服務(wù)器發(fā)送的第一索引指紋以及待存儲(chǔ)數(shù)據(jù)塊的指紋,并確定在第一索引指紋代表的多個(gè)指紋中包含與待存儲(chǔ)數(shù)據(jù)塊的指紋相同的指紋的第一概率,并將第一概率發(fā)送至備份服務(wù)器;

第二存儲(chǔ)器具體用于:接收備份服務(wù)器發(fā)送的第二索引指紋以及待存儲(chǔ)數(shù)據(jù)塊的指紋,并確定在第二索引指紋代表的多個(gè)指紋中包含與待存儲(chǔ)數(shù)據(jù)塊的指紋相同的指紋的第二概率,并將第二概率發(fā)送至備份服務(wù)器。

可選的,本發(fā)明實(shí)施例中,第一存儲(chǔ)器上存儲(chǔ)有第一統(tǒng)計(jì)表,第一統(tǒng)計(jì)表包含第一索引指紋所代表的多個(gè)指紋的第一區(qū)間的數(shù)值的統(tǒng)計(jì)信息,以及第一索引指紋所代表的多個(gè)指紋的第二區(qū)間的數(shù)值的統(tǒng)計(jì)信息,第一區(qū)間為各指紋的第h位至第i位的區(qū)間,第二區(qū)間為各指紋的第j位至第k位的區(qū)間,其中,h、i、j、k均為自然數(shù),h的值不大于i的值,j的值不大于k的值,第一區(qū)間和第二區(qū)間不重疊;

第一存儲(chǔ)器具體用于:

根據(jù)第一統(tǒng)計(jì)表確定a在第一索引指紋所代表的多個(gè)指紋的第一區(qū)間的數(shù)值中的出現(xiàn)頻次t1以及b在第一索引指紋所代表的多個(gè)指紋的第二區(qū)間的數(shù)值中出現(xiàn)的頻次t2,其中,a為待存儲(chǔ)數(shù)據(jù)塊的指紋的第h位至第i位的數(shù)值,b為待存儲(chǔ)數(shù)據(jù)塊的指紋的第j位至第k位的數(shù)值;

根據(jù)t1和t2中的最小值確定第一概率。

可選的,本發(fā)明實(shí)施例中,第一指紋表中的每個(gè)指紋包含M位,每個(gè)M位指紋包含N個(gè)區(qū)間,N個(gè)區(qū)間中的每個(gè)區(qū)間包括M位中連續(xù)的S位,N個(gè) 區(qū)間中任意兩個(gè)區(qū)間不重疊,N個(gè)區(qū)間的位數(shù)之和為M,N為大于或者等于2的自然數(shù),S為自然數(shù);第一存儲(chǔ)器上存儲(chǔ)有第一統(tǒng)計(jì)表,第一統(tǒng)計(jì)表包含第一索引指紋所代表的多個(gè)指紋的N個(gè)區(qū)間的數(shù)值的統(tǒng)計(jì)信息;

第一存儲(chǔ)器具體用于:根據(jù)第一統(tǒng)計(jì)表確定ai在第一索引指紋所代表的多個(gè)指紋的第i區(qū)間的數(shù)值中的出現(xiàn)頻次ti,其中,ai為待存儲(chǔ)數(shù)據(jù)塊的指紋的第i區(qū)間的數(shù)值,i的取值范圍為1至N;

根據(jù)所t1至tN中的最小值確定第一概率。

本實(shí)施例中的存儲(chǔ)系統(tǒng)與圖3對(duì)應(yīng)的數(shù)據(jù)處理方法是基于同一發(fā)明構(gòu)思下的兩個(gè)方面,在前面已經(jīng)對(duì)方法的實(shí)施過程作了詳細(xì)的描述,所以本領(lǐng)域技術(shù)人員可根據(jù)前述描述清楚地了解本實(shí)施例中的存儲(chǔ)系統(tǒng)的結(jié)構(gòu)及實(shí)施過程,為了說明書的簡(jiǎn)潔,在此就不再贅述了。

本發(fā)明實(shí)施例中提供的一個(gè)或多個(gè)技術(shù)方案,至少具有如下技術(shù)效果或優(yōu)點(diǎn):

上述技術(shù)方案中,備份服務(wù)器通過指紋索引表在每個(gè)指紋表中確定出一個(gè)索引指紋代表的多個(gè)指紋,該索引指紋代表的多個(gè)指紋的指紋范圍包括待存儲(chǔ)數(shù)據(jù)塊的指紋,然后基于從每個(gè)指紋表中確定出的多個(gè)指紋進(jìn)行下一步的指紋比對(duì)操作,減少了指紋搬運(yùn)的工作量。不僅如此,針對(duì)每個(gè)指紋表計(jì)算在其(確定出的多個(gè)指紋)中檢索到待存儲(chǔ)數(shù)據(jù)塊的指紋的概率,然后在概率不小于預(yù)設(shè)閾值的指紋表的確定出的多個(gè)指紋中進(jìn)行指紋比對(duì),減少指紋比對(duì)時(shí)指紋的搬運(yùn)量,減少指紋比對(duì)的耗時(shí),亦即減少確定待存儲(chǔ)數(shù)據(jù)塊是否為重復(fù)數(shù)據(jù)塊的時(shí)間,提高存儲(chǔ)數(shù)據(jù)的效率。

本領(lǐng)域內(nèi)的技術(shù)人員應(yīng)明白,本發(fā)明的說明書和權(quán)利要求書及上述附圖中的術(shù)語“第一”、“第二”、“第三”“第四”等(如果存在)是用于區(qū)別類似的對(duì)象,而不必用于描述特定的順序或先后次序。應(yīng)該理解這樣使用的數(shù)據(jù)在適當(dāng)情況下可以互換,以便這里描述的本發(fā)明的實(shí)施例例如能夠以除了在這里圖示或描述的那些以外的順序?qū)嵤?。此外,術(shù)語“包括”和“具有”以及他們的任何變 形,意圖在于覆蓋不排他的包含,例如,包含了一系列步驟或單元的過程、方法、系統(tǒng)、產(chǎn)品或設(shè)備不必限于清楚地列出的那些步驟或單元,而是可包括沒有清楚地列出的或?qū)τ谶@些過程、方法、產(chǎn)品或設(shè)備固有的其它步驟或單元。

本發(fā)明實(shí)施例還提供一種數(shù)據(jù)處理的計(jì)算機(jī)程序產(chǎn)品,包括存儲(chǔ)了程序代碼的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),所述程序代碼包括的指令用于執(zhí)行前述任意一個(gè)方法實(shí)施例所述的方法流程。本領(lǐng)域普通技術(shù)人員可以理解,前述的存儲(chǔ)介質(zhì)包括:U盤、移動(dòng)硬盤、磁碟、光盤、隨機(jī)存儲(chǔ)器(Random-Access Memory,RAM)、固態(tài)硬盤(Solid State Disk,SSD)或者非易失性存儲(chǔ)器(non-volatile memory)等各種可以存儲(chǔ)程序代碼的非短暫性的(non-transitory)機(jī)器可讀介質(zhì)。

需要說明的是,本申請(qǐng)所提供的實(shí)施例僅僅是示意性的。所屬領(lǐng)域的技術(shù)人員可以清楚地了解到,為了描述的方便和簡(jiǎn)潔,在上述實(shí)施例中,對(duì)各個(gè)實(shí)施例的描述都各有側(cè)重,某個(gè)實(shí)施例中沒有詳述的部分,可以參見其他實(shí)施例的相關(guān)描述。在本發(fā)明實(shí)施例、權(quán)利要求以及附圖中揭示的特征可以獨(dú)立存在也可以組合存在。在本發(fā)明實(shí)施例中以硬件形式描述的特征可以通過軟件來執(zhí)行,反之亦然。在此不做限定。

當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
杭锦后旗| 敖汉旗| 读书| 威远县| 秦皇岛市| 乐业县| 车致| 雷波县| 鄂伦春自治旗| 化德县| 黄陵县| 雷山县| 青河县| 英超| 衡东县| 延寿县| 平果县| 车险| 金乡县| 昌都县| 沙田区| 中方县| 宾川县| 望奎县| 庆安县| 和田市| 伊吾县| 盱眙县| 庄河市| 康平县| 綦江县| 正宁县| 永济市| 河津市| 永定县| 大厂| 大埔县| 哈巴河县| 洪江市| 扬中市| 陇川县|