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

一種去除重復(fù)數(shù)據(jù)的方法、裝置及系統(tǒng)的制作方法

文檔序號:6491192閱讀:214來源:國知局
一種去除重復(fù)數(shù)據(jù)的方法、裝置及系統(tǒng)的制作方法
【專利摘要】本發(fā)明公開了一種去除重復(fù)數(shù)據(jù)的方法及設(shè)備,屬于通信領(lǐng)域。所述方法包括:根據(jù)待存儲的文件分片的索引值獲取用于存儲所述待存儲的文件分片的索引值的索引服務(wù)器;如果所述索引服務(wù)器包括所述待存儲的文件分片的索引值,則在所述索引服務(wù)器中增加所述待存儲的文件分片的引用次數(shù);如果所述索引服務(wù)器不包括所述待存儲的文件分片的索引值,則將所述待存儲的文件分片存儲在存儲服務(wù)器中,獲取所述待存儲的文件分片的引用次數(shù)和存儲路徑,將所述待存儲的文件分片的索引值、存儲路徑和引用次數(shù)存儲在所述索引服務(wù)器中。所述設(shè)備包括:第一獲取模塊、第一增加模塊和第一存儲模塊。本發(fā)明能夠提高備份數(shù)據(jù)的性能。
【專利說明】一種去除重復(fù)數(shù)據(jù)的方法、裝置及系統(tǒng)
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及通信領(lǐng)域,特別涉及一種去除重復(fù)數(shù)據(jù)的方法、裝置及系統(tǒng)。
【背景技術(shù)】
[0002]在互聯(lián)網(wǎng)服務(wù)后臺,需要將互聯(lián)網(wǎng)服務(wù)產(chǎn)生的數(shù)據(jù)備份在備份系統(tǒng)中,互聯(lián)網(wǎng)服務(wù)常常會產(chǎn)生重復(fù)數(shù)據(jù),此時需要去除產(chǎn)生的重復(fù)數(shù)據(jù),以在備份系統(tǒng)中存放一份數(shù)據(jù),減少重復(fù)數(shù)據(jù)使用的存儲容量,提高存儲效率。
[0003]目前現(xiàn)有技術(shù)提供了一種去除重復(fù)數(shù)據(jù)的方法,包括:服務(wù)器接收終端需要存儲的文件,將該文件分成多個數(shù)據(jù)塊,獲取數(shù)據(jù)塊的索引值,如果備份系統(tǒng)中沒有存儲該數(shù)據(jù)塊,則將該數(shù)據(jù)塊存儲在備份系統(tǒng)中,設(shè)置該數(shù)據(jù)塊的引用次數(shù),將該數(shù)據(jù)塊的索引值、存儲路徑和引用次數(shù)的對應(yīng)關(guān)系存儲在服務(wù)器的內(nèi)存內(nèi)的索引表中;如果備份系統(tǒng)中已存儲該數(shù)據(jù)塊,則在索引表中增加該數(shù)據(jù)塊的引用次數(shù),如此實現(xiàn)去除重復(fù)數(shù)據(jù)。
[0004]在實現(xiàn)本發(fā)明的過程中,發(fā)明人發(fā)現(xiàn)現(xiàn)有技術(shù)至少存在以下問題:
[0005]隨著互聯(lián)網(wǎng)服務(wù)產(chǎn)生的數(shù)據(jù)越來越大,使得索引表的容量也越來越大,當(dāng)索引表的容量超過服務(wù)器內(nèi)存大小時,索引表中的部分內(nèi)容將被移入服務(wù)器的磁盤中,使得服務(wù)器備份數(shù)據(jù)的性能急速下降。

【發(fā)明內(nèi)容】

[0006]為了提高備份數(shù)據(jù)的性能,本發(fā)明提供了一種去除重復(fù)數(shù)據(jù)的方法、裝置及系統(tǒng)。所述技術(shù)方案如下:
[0007]一種去除重復(fù)數(shù)據(jù)的方法,所述方法包括:
[0008]根據(jù)待存儲的文件分片的索引值獲取用于存儲所述待存儲的文件分片的索引值的索引服務(wù)器;
[0009]如果所述索引服務(wù)器包括所述待存儲的文件分片的索引值,則在所述索引服務(wù)器中增加所述待存儲的文件分片的引用次數(shù);
[0010]如果所述索引服務(wù)器不包括所述待存儲的文件分片的索引值,則將所述待存儲的文件分片存儲在存儲服務(wù)器中,獲取所述待存儲的文件分片的引用次數(shù)和存儲路徑,將所述待存儲的文件分片的索引值、存儲路徑和引用次數(shù)存儲在所述索引服務(wù)器中。
[0011]所述根據(jù)待存儲的文件分片的索引值獲取用于存儲所述待存儲的文件分片的索引值的索引服務(wù)器,包括:
[0012]根據(jù)索引服務(wù)器的個數(shù)對所述待存儲的文件分片的索引值進(jìn)行取模運(yùn)算得到索引服務(wù)器的標(biāo)識;
[0013]確定所述索引服務(wù)器的標(biāo)識對應(yīng)的索引服務(wù)器為用于存儲所述待存儲的文件分片的索引值的索引服務(wù)器。
[0014]所述將所述待存儲的文件分片存儲在存儲服務(wù)器中,獲取所述待存儲的文件分片的引用次數(shù)和存儲路徑,將所述待存儲的文件分片的索引值、存儲路徑和引用次數(shù)存儲在所述索引服務(wù)器中,包括:
[0015]將所述待存儲的文件分片存儲在存儲服務(wù)器中;
[0016]獲取所述待存儲的文件分片的存儲路徑;
[0017]設(shè)置所述待存儲的文件分片的引用次數(shù)的初值;
[0018]將所述待存儲的文件分片的索引值、存儲路徑和引用次數(shù)的對應(yīng)關(guān)系存儲在所述索引服務(wù)器包括的索引表中。
[0019]所述在所述索引服務(wù)器中增加所述待存儲的文件分片的引用次數(shù)之前,還包括:
[0020]判斷所述索引服務(wù)器是否包括所述所述待存儲的文件分片的索引值。
[0021]所述根據(jù)所述待存儲的文件分片的索引值判斷所述索引服務(wù)器是否包括所述所述待存儲的文件分片的索引值,包括:
[0022]根據(jù)所述待存儲的文件分片的索引值,查找所述索引服務(wù)器中包括的索引表,所述索引表用于存儲文件分片的索引值、存儲路徑與引用次數(shù)的對應(yīng)關(guān)系;
[0023]如果查找出對應(yīng)的存儲路徑和引用次數(shù),則判斷出所述索引服務(wù)器包括所述所述待存儲的文件分片的索引值;
[0024]如果沒有查找出對應(yīng)的存儲路徑和引用次數(shù),則判斷出所述索引服務(wù)器不包括所述所述待存儲的文件分片的索引值。
[0025]所述根據(jù)待存儲的文件分片的索引值獲取用于存儲所述待存儲的文件分片的索引值的索引服務(wù)器之前,還包括:
[0026]對需要存儲的文件進(jìn)行分片得到待存儲的文件分片;
[0027]根據(jù)所述待存儲的文件分片的內(nèi)容獲取所述待存儲的文件分片的索引值。
[0028]所述方法還包括:
[0029]根據(jù)待刪除的文件分片的索引值獲取用于存儲所述待刪除的文件分片的索引的索引服務(wù)器,在所述索引服務(wù)器包括的索引表中減少所述待刪除的文件分片的引用次數(shù),所述索引表用于存儲文件分片的索引值、存儲路徑與引用次數(shù)的對應(yīng)關(guān)系。
[0030]所述在所述索引服務(wù)器減少所述待刪除的文件分片的引用次數(shù)之后,還包括:
[0031]如果所述待刪除的文件分片的引用次數(shù)為零,則根據(jù)所述待刪除的文件分片的索引值,從所述索引服務(wù)器包括的索引表中獲取所述待刪除的文件的存儲路徑,根據(jù)所述待刪除的文件分片的存儲路徑刪除所述待刪除的文件分片。
[0032]一種去除重復(fù)數(shù)據(jù)的裝置,所述裝置包括:
[0033]第一獲取模塊,用于根據(jù)待存儲的文件分片的索引值獲取用于存儲所述待存儲的文件分片的索引值的索引服務(wù)器;
[0034]第一增加模塊,用于如果所述索引服務(wù)器包括所述待存儲的文件分片的索引值,則在所述索引服務(wù)器中增加所述待存儲的文件分片的引用次數(shù);
[0035]第一存儲模塊,用于如果所述索引服務(wù)器不包括所述待存儲的文件分片的索引值,則將所述待存儲的文件分片存儲在存儲服務(wù)器中,獲取所述待存儲的文件分片的引用次數(shù)和存儲路徑,將所述待存儲的文件分片的索引值、存儲路徑和引用次數(shù)存儲在所述索引服務(wù)器中。
[0036]所述第一獲取模塊包括:
[0037]運(yùn)算單元,用于根據(jù)索引服務(wù)器的個數(shù)對所述待存儲的文件分片的索引值進(jìn)行取模運(yùn)算得到索引服務(wù)器的標(biāo)識;
[0038]確定單元,用于確定所述索引服務(wù)器的標(biāo)識對應(yīng)的索引服務(wù)器為用于存儲所述待存儲的文件分片的索引值的索引服務(wù)器。
[0039]所述第一存儲模塊包括:
[0040]第一存儲單元,用于將所述待存儲的文件分片存儲在存儲服務(wù)器中;
[0041]獲取單元,用于獲取所述待存儲的文件分片的存儲路徑;
[0042]設(shè)置單元,用于設(shè)置所述待存儲的文件分片的引用次數(shù)的初值;
[0043]第二存儲單元,用于將所述待存儲的文件分片的索引值、存儲路徑和引用次數(shù)的對應(yīng)關(guān)系存儲在所述索引服務(wù)器包括的索引表中。
[0044]所述裝置還包括:
[0045]判斷模塊,用于判斷所述索引服務(wù)器是否包括所述所述待存儲的文件分片的索引值。
[0046]所述判斷模塊包括:
[0047]查找單元,用于根據(jù)所述待存儲的文件分片的索引值,查找所述索引服務(wù)器中包括的索引表,所述索引表用于存儲文件分片的索引值、存儲路徑與引用次數(shù)的對應(yīng)關(guān)系;
[0048]第一判斷單元,用于如果查找出對應(yīng)的存儲路徑和引用次數(shù),則判斷出所述索引服務(wù)器包括所述所述待存儲的文件分片的索引值;
[0049]第二判斷單元,用于如果沒有查找出對應(yīng)的存儲路徑和引用次數(shù),則判斷出所述索引服務(wù)器不包括所述所述待存儲的文件分片的索引值。
[0050]所述裝置還包括:
[0051]分片模塊,用于對需要存儲的文件進(jìn)行分片得到待存儲的文件分片;
[0052]第二獲取模塊,用于根據(jù)所述待存儲的文件分片的內(nèi)容獲取所述待存儲的文件分片的索引值。
[0053]所述裝置還包括:
[0054]減少模塊,用于根據(jù)待刪除的文件分片的索引值獲取用于存儲所述待刪除的文件分片的索引的索引服務(wù)器,在所述索引服務(wù)器包括的索引表中減少所述待刪除的文件分片的引用次數(shù),所述索引表用于存儲文件分片的索引值、存儲路徑與引用次數(shù)的對應(yīng)關(guān)系。
[0055]所述裝置還包括:
[0056]刪除模塊,用于如果所述待刪除的文件分片的引用次數(shù)為零,則根據(jù)所述待刪除的文件分片的索引值,從所述索引服務(wù)器包括的索引表中獲取所述待刪除的文件的存儲路徑,根據(jù)所述待刪除的文件分片的存儲路徑刪除所述待刪除的文件分片。
[0057]—種去除重復(fù)數(shù)據(jù)的系統(tǒng),所述系統(tǒng)包括預(yù)上傳服務(wù)器,索引服務(wù)器和存儲服務(wù)器;
[0058]所述預(yù)上傳服務(wù)器,用于根據(jù)待存儲的文件分片的索引值獲取用于存儲所述待存儲的文件分片的索引值的索引服務(wù)器,如果所述索引服務(wù)器包括所述待存儲的文件分片的索引值,則發(fā)送增加請求給所述索引服務(wù)器,所述增加請求攜帶所述待存儲的文件分片的索引值,如果所述索引服務(wù)器不包括所述待存儲的文件分片的索引值,則將所述待存儲的文件分片發(fā)送給所述存儲服務(wù)器,接收所述存儲服務(wù)器發(fā)送的存儲所述待存儲的文件分片的存儲地址,獲取所述待存儲的文件分片的引用次數(shù),將所述待存儲的文件分片的索引值、存儲路徑和引用次數(shù)發(fā)送給所述索引服務(wù)器中;
[0059]所述索引服務(wù)器,用于如果自身包括所述待存儲的文件分片的索引值,則接收所述增加請求。根據(jù)所述增加請求攜帶的所述待存儲的文件分片的索引值增加所述待存儲的文件分片的引用次數(shù),如果自身不包括所述待存儲的文件分片的索引值,則接收所述待存儲的文件分片的索引值、存儲路徑和引用次數(shù),并存儲所述待存儲的文件分片的索引值、存儲路徑和引用次數(shù)的對應(yīng)關(guān)系;
[0060]所述存儲服務(wù)器,用于如果所述索引服務(wù)器不包括所述待存儲的文件分片的索引值,則接收所述待存儲的文件分片,存儲所述待存儲的文件分片,發(fā)送存儲所述待存儲的文件分片的存儲路徑給所述預(yù)上傳服務(wù)器。
[0061]所述預(yù)上傳服務(wù)器,用于根據(jù)索引服務(wù)器的個數(shù)對所述待存儲的文件分片的索引值進(jìn)行取模運(yùn)算得到索引服務(wù)器的標(biāo)識,確定所述索引服務(wù)器的標(biāo)識對應(yīng)的索引服務(wù)器為用于存儲所述待存儲的文件分片的索引值的索引服務(wù)器。
[0062]所述預(yù)上傳服務(wù)器,用于將所述待存儲的文件分片發(fā)送給所述存儲服務(wù)器,接收所述存儲服務(wù)器發(fā)送的存儲所述待存儲的文件分片的存儲地址,設(shè)置所述待存儲的文件分片的引用次數(shù)的初值,將所述待存儲的文件分片的索引值、存儲路徑和引用次數(shù)發(fā)送給所述索引服務(wù)器中。
[0063]所述預(yù)上傳服務(wù)器,還用于判斷所述索引服務(wù)器是否包括所述所述待存儲的文件分片的索引值。
[0064]所述預(yù)上傳服務(wù)器,用于根據(jù)所述待存儲的文件分片的索引值,查找所述索引服務(wù)器中包括的索引表,所述索引表用于存儲文件分片的索引值、存儲路徑與引用次數(shù)的對應(yīng)關(guān)系,如果查找出對應(yīng)的存儲路徑和引用次數(shù),則判斷出所述索引服務(wù)器包括所述所述待存儲的文件分片的索引值,如果沒有查找出對應(yīng)的存儲路徑和引用次數(shù),則判斷出所述索引服務(wù)器不包括所述所述待存儲的文件分片的索引值。
[0065]所述預(yù)上傳服務(wù)器,還用于對需要存儲的文件進(jìn)行分片得到待存儲的文件分片,根據(jù)所述待存儲的文件分片的內(nèi)容獲取所述待存儲的文件分片的索引值。
[0066]所述預(yù)上傳服務(wù)器,還用于根據(jù)待刪除的文件分片的索引值獲取用于存儲所述待刪除的文件分片的索引的索引服務(wù)器,在所述索引服務(wù)器包括的索引表中減少所述待刪除的文件分片的引用次數(shù),所述索引表用于存儲文件分片的索引值、存儲路徑與引用次數(shù)的對應(yīng)關(guān)系。
[0067]所述預(yù)上傳服務(wù)器,還用于如果所述待刪除的文件分片的引用次數(shù)為零,則根據(jù)所述待刪除的文件分片的索引值,從所述索引服務(wù)器包括的索引表中獲取所述待刪除的文件的存儲路徑,根據(jù)所述待刪除的文件分片的存儲路徑刪除所述待刪除的文件分片。
[0068]在本發(fā)明實施例中,根據(jù)待存儲的文件分片的索引值獲取用于存儲待存儲的文件分片的索引值的索引服務(wù)器,如果索引服務(wù)器包括待存儲的文件分片的索引值,則在索引服務(wù)器中增加待存儲的文件分片的引用次數(shù),如果索引服務(wù)器不包括待存儲的文件分片的索引值,則將待存儲的文件分片存儲在存儲服務(wù)器中,獲取待存儲的文件分片的引用次數(shù)和存儲路徑,將待存儲的文件分片的索引值、存儲路徑和引用次數(shù)存儲在索引服務(wù)器中,如此可以使用多個索引服務(wù)器器來存儲索引表,避免使用一臺服務(wù)器來存儲索引表而導(dǎo)致索引表的部分內(nèi)容被移入服務(wù)器的磁盤,從而提高備份數(shù)據(jù)的性能。【專利附圖】

【附圖說明】
[0069]圖1是本發(fā)明實施例1提供的一種去除重復(fù)數(shù)據(jù)的方法流程圖;
[0070]圖2是本發(fā)明實施例2提供的一種去除重復(fù)數(shù)據(jù)的方法流程圖;
[0071]圖3是本發(fā)明實施例2提供的一種備份系統(tǒng)結(jié)構(gòu)示意圖;
[0072]圖4是本發(fā)明實施例2提供的一種刪除待刪除的文件分片的流程圖;
[0073]圖5是本發(fā)明實施例3提供的一種備份系統(tǒng)結(jié)構(gòu)示意圖;
[0074]圖6是本發(fā)明實施例3提供的一種去除重復(fù)數(shù)據(jù)的方法流程圖;
[0075]圖7是本發(fā)明實施例3提供的一種備份系統(tǒng)的示例結(jié)構(gòu)示意圖;
[0076]圖8是本發(fā)明實施例3提供的一種文件和索引表結(jié)構(gòu)不意圖;
[0077]圖9是本發(fā)明實施例4提供的一種去除重復(fù)數(shù)據(jù)的裝置結(jié)構(gòu)示意圖;
[0078]圖10是本發(fā)明實施例5提供的一種去除重復(fù)數(shù)據(jù)的系統(tǒng)結(jié)構(gòu)示意圖。
【具體實施方式】
[0079]為使本發(fā)明的目的、技術(shù)方案和優(yōu)點更加清楚,下面將結(jié)合附圖對本發(fā)明實施方式作進(jìn)一步地詳細(xì)描述。
[0080]實施例1
[0081]如圖1所示,本發(fā)明實施例提供了一種去除重復(fù)數(shù)據(jù)的方法,包括:
[0082]步驟101:根據(jù)待存儲的文件分片的索引值獲取用于存儲待存儲的文件分片的索引值的索引服務(wù)器;
[0083]步驟102:如果索引服務(wù)器包括待存儲的文件分片的索引值,則在索引服務(wù)器中增加待存儲的文件分片的引用次數(shù);
[0084]步驟103:如果索引服務(wù)器不包括待存儲的文件分片的索引值,則將待存儲的文件分片存儲在存儲服務(wù)器中,獲取待存儲的文件分片的引用次數(shù)和存儲路徑,將待存儲的文件分片的索引值、存儲路徑和引用次數(shù)存儲在索引服務(wù)器中。
[0085]在本發(fā)明實施例中,根據(jù)待存儲的文件分片的索引值獲取用于存儲待存儲的文件分片的索引值的索引服務(wù)器,如果索引服務(wù)器包括待存儲的文件分片的索引值,則在索引服務(wù)器中增加待存儲的文件分片的引用次數(shù),如果索引服務(wù)器不包括待存儲的文件分片的索引值,則將待存儲的文件分片存儲在存儲服務(wù)器中,獲取待存儲的文件分片的引用次數(shù)和存儲路徑,將待存儲的文件分片的索引值、存儲路徑和引用次數(shù)存儲在索引服務(wù)器中,如此可以使用多個索引服務(wù)器器來存儲索引表,避免使用一臺服務(wù)器來存儲索引表而導(dǎo)致索引表的部分內(nèi)容被移入服務(wù)器的磁盤,從而提高備份數(shù)據(jù)的性能。
[0086]實施例2
[0087]如圖2所示,本發(fā)明實施例提供了一種去除重復(fù)數(shù)據(jù)的方法,包括:
[0088]步驟201:預(yù)上傳服務(wù)器對需要存儲的文件進(jìn)行分片得到待存儲的文件分片,獲取待存儲的文件分片的索引值;
[0089]具體地,預(yù)上傳服務(wù)器對需要存儲的文件進(jìn)行分片,得到需要存儲的文件包括的一個或多個待存儲的文件分片,對于任一個待存儲的文件分片,根據(jù)待存儲的文件分片的內(nèi)容獲取待存儲的文件分片的索引值。[0090]其中,根據(jù)待存儲的文件分片的內(nèi)容獲取待存儲的文件分片的索引值,可以具體為:
[0091]根據(jù)待存儲的文件分片的內(nèi)容,通過現(xiàn)有的MD5(Message Digest Algorithm5,信息摘要算法5)算法計算出待存儲的文件分片的MD5值,將計算的MD5值確定為待存儲的文件分片的索引值;或者,
[0092]根據(jù)待存儲的文件分片的內(nèi)容,通過現(xiàn)有的計算散列值算法計算出待存儲的文件分片的散列值,將計算的散列值確定為待存儲的文件分片的索引值。
[0093]其中,本實施例應(yīng)用于如圖3所示的備份系統(tǒng),該備份系統(tǒng)包括預(yù)上傳服務(wù)器、多個索引服務(wù)器以及多個存儲服務(wù)器;預(yù)上傳服務(wù)器可以接收互聯(lián)網(wǎng)服務(wù)產(chǎn)生的需要存儲的文件,索引服務(wù)器內(nèi)包括索引表,索引表用于存儲文件分片的索引值、存儲路徑與引用次數(shù)的對應(yīng)關(guān)系,以及存儲服務(wù)器用于存儲文件分片。
[0094]進(jìn)一步地,將需要存儲的文件的文件標(biāo)識與待存儲的文件分片的索引值存儲在文件標(biāo)識與索引值的對應(yīng)關(guān)系中。
[0095]步驟202:預(yù)上傳服務(wù)器根據(jù)待存儲的文件分片的索引值獲取用于存儲待存儲的文件分片的索值的索引服務(wù)器;
[0096]具體地,預(yù)上傳服務(wù)器根據(jù)備份系統(tǒng)包括的索引服務(wù)器的個數(shù),對待存儲的文件分片的索引值進(jìn)行取模運(yùn)算,得到索引服務(wù)器的標(biāo)識,將該索引服務(wù)器的標(biāo)識對應(yīng)的索引服務(wù)器確定為用于存儲待存儲的文件分片的索引值的索引服務(wù)器。
[0097]步驟203:預(yù)上傳服務(wù)器根據(jù)待存儲的文件分片的索引值,判斷該索引服務(wù)器包括的索引表中是否存在待存儲的文件分片的索引值,如果存在,則執(zhí)行204,如果不存在,則執(zhí)行步驟205 ;
[0098]具體地,預(yù)上傳服務(wù)器根據(jù)待存儲的文件分片的索引值,查找該索引服務(wù)器包括的索引表,如果查找出對應(yīng)的存儲路徑和引用次數(shù),則判斷出該索引服務(wù)器包括的索引表中存在待存儲的文件分片的索引值,如果沒有查找出對應(yīng)的存儲路徑和引用次數(shù),則判斷出該索引服務(wù)器包括的索引表中不存在待存儲的文件分片的索引值。
[0099]其中,待存儲的文件分片的引用次數(shù)用于表示在備份系統(tǒng)中包括待存儲的文件分片的文件的文件個數(shù)等于待存儲的文件分片的引用次數(shù)。
[0100]步驟204:預(yù)上傳服務(wù)器在該索引服務(wù)器包括的索引表中增加待存儲的文件分片的引用次數(shù),結(jié)束操作;
[0101]具體地,預(yù)上傳服務(wù)器增加從該索引服務(wù)器包括的索引表中查找的待存儲的文件分片的引用次數(shù)。
[0102]其中,增加待存儲的文件分片的引用次數(shù),可以具體為:對待存儲的文件分片的引用次數(shù)增加I或2等值。
[0103]步驟205:預(yù)上傳服務(wù)器將待存儲的文件分片存儲在備份系統(tǒng)包括的存儲服務(wù)器中,獲取待存儲的文件分片的存儲路徑;
[0104]其中,在本實施例中,備份系統(tǒng)的存儲服務(wù)器包括的存儲空間事先被劃分成多個存儲區(qū)域,且每個存儲區(qū)域用區(qū)域標(biāo)識來唯一地標(biāo)識。
[0105]預(yù)上傳服務(wù)器從備份系統(tǒng)的存儲服務(wù)器包括的存儲區(qū)域中選擇一個存儲區(qū)域,將待存儲的文件分片存儲在選擇的存儲區(qū)域中;然后,預(yù)上傳服務(wù)器再獲取待存儲的文件分片的存儲路徑,該存儲路徑至少包括選擇的存儲區(qū)域的區(qū)域標(biāo)識和待存儲的文件分片在選擇的存儲區(qū)域中的存儲位置。
[0106]步驟206:預(yù)上傳服務(wù)器設(shè)置待存儲的文件分片的引用次數(shù)的初值,將待存儲的文件分片的索引值、存儲路徑和引用次數(shù)的對應(yīng)關(guān)系存儲在該索引服務(wù)器包括的索引表中,結(jié)束操作。
[0107]其中,預(yù)上傳服務(wù)器設(shè)置待存儲的文件分片的引用次數(shù)的初值,可以具體為:將待存儲的文件分片的引用次數(shù)的初值設(shè)置為I或2等值。
[0108]其中,對于需要存儲的文件包括的其他每個待存儲的文件分片,按上述相同的方法,對其他每個待存儲的文件分片進(jìn)行備份。
[0109]進(jìn)一步地,參見圖4,預(yù)上傳服務(wù)器接收互聯(lián)網(wǎng)服務(wù)需要刪除的文件的文件標(biāo)識,根據(jù)需要刪除的文件的文件標(biāo)識,刪除需要刪除的文件;其中,預(yù)上傳服務(wù)器通過如下(O- (6)的步驟來刪除需要刪除的文件,包括:
[0110](I):預(yù)上傳服務(wù)器根據(jù)需要刪除的文件的文件標(biāo)識,獲取需要刪除的文件包括的待刪除的文件分片的索引值;
[0111]具體地,預(yù)上傳服務(wù)器根據(jù)需要刪除的文件的文件標(biāo)識,從已存儲的文件標(biāo)識與索引值的對應(yīng)關(guān)系中獲取需要刪除的文件包括的待刪除的文件分片的索引值。
[0112]其中,對于需要刪除的文件包括的任一個待刪除的文件分片,執(zhí)行如下操作:
[0113](2):預(yù)上傳服務(wù)器根據(jù)待刪除的文件分片的索引值獲取用于存儲待刪除的文件分片的索引值的索引服務(wù)器;
[0114]具體地,預(yù)上傳服務(wù)器根據(jù)備份系統(tǒng)包括的索引服務(wù)器的個數(shù),對待刪除的文件分片的索引值進(jìn)行取模運(yùn)算得到索引服務(wù)器的標(biāo)識,確定該索引服務(wù)器的標(biāo)識對應(yīng)的索引服務(wù)器為用于存儲待刪除的文件分片的索引值的索引服務(wù)器。
[0115](3):預(yù)上傳服務(wù)器在該索引務(wù)器包括的索引表中減少待刪除的文件分片的引用次數(shù),以實現(xiàn)刪除需要刪除的文件包括的待刪除的文件分片;
[0116]具體地,預(yù)上傳服務(wù)器根據(jù)待刪除的文件分片的索引值,從該索引服務(wù)器包括的索引表中查找待刪除的文件分片的引用次數(shù),減少待刪除的文件分片的引用次數(shù)。
[0117](4):預(yù)上傳服務(wù)器對待刪除的文件分片的引用次數(shù)進(jìn)行判斷,如果待刪除的文件分片的引用次數(shù)為零,則執(zhí)行步驟(5);
[0118]其中,如果待刪除的文件分片的引用次數(shù)為零,則表示包括待刪除的文件分片的所有文件將從備份系統(tǒng)中全部刪除;此時需要從該索引服務(wù)器包括的過些表中刪除包括待刪除的文件分片的索引值的對應(yīng)關(guān)系,以及從備份系統(tǒng)的存儲服務(wù)器中刪除待刪除的文件分片。
[0119]其中,如果待刪除的文件分片的引用次數(shù)不為零,則不需要對待刪除的文件分片執(zhí)行如下(5)和(6)兩步驟。
[0120](5):預(yù)上傳服務(wù)器獲取待刪除的文件分片的存儲路徑,根據(jù)待刪除的文件分片的存儲路徑刪除待刪除的文件分片;
[0121]具體地,預(yù)上傳服務(wù)器根據(jù)待刪除的文件分片的索引值,從該索引服務(wù)器包括的索引表中獲取待刪除的文件分片的存儲路徑,根據(jù)待刪除的文件分片的存儲路徑刪除待刪除的文件分片。[0122]其中,待存儲路徑至少包括存儲待刪除的文件分片的存儲區(qū)域的區(qū)域標(biāo)識和在該存儲區(qū)域中存儲待刪除的文件分片的存儲位置。
[0123]相應(yīng)地,預(yù)上傳服務(wù)器根據(jù)待刪除的文件分片的存儲路徑刪除待刪除的文件分片,可以具體為:
[0124]根據(jù)存儲待刪除的文件分片的存儲區(qū)域的區(qū)域標(biāo)識定位出對應(yīng)的存儲區(qū)域,根據(jù)在該存儲區(qū)域中存儲待刪除的文件分片的存儲位置將待刪除的文件分片從該存儲區(qū)域中刪除。
[0125](6):預(yù)上傳服務(wù)器將包括待刪除的文件分片的索引值的對應(yīng)關(guān)系從該索引服務(wù)器包括的索引表中刪除。
[0126]在本發(fā)明實施例中,根據(jù)待存儲的文件分片的索引值獲取用于存儲待存儲的文件分片的索引值的索引服務(wù)器,如果索引服務(wù)器包括待存儲的文件分片的索引值,則在索引服務(wù)器中增加待存儲的文件分片的引用次數(shù),如果索引服務(wù)器不包括待存儲的文件分片的索引值,則存儲待存儲的文件分片,獲取待存儲的文件分片的引用次數(shù)和存儲路徑,將待存儲的文件分片的索引值、存儲路徑和引用次數(shù)存儲在索引服務(wù)器中,如此可以使用多個索引服務(wù)器器來存儲索引表,避免使用一臺服務(wù)器來存儲索引表而導(dǎo)致索引表的部分內(nèi)容被移入服務(wù)器的磁盤,從而提高備份數(shù)據(jù)的性能。
[0127]實施例3
[0128]本發(fā)明實施例提供了一種去除重復(fù)數(shù)據(jù)的方法。
[0129]其中,目前的互聯(lián)網(wǎng)擁有大量的用戶,用戶每天通過web產(chǎn)生大量的文件需要進(jìn)行處理,參見圖5,本發(fā)明實施例應(yīng)用的系統(tǒng)架構(gòu),該系統(tǒng)架構(gòu)包括預(yù)上傳服務(wù)器、索引服務(wù)器和存儲服務(wù)器,
[0130]其中,在圖6所示的備份系統(tǒng)中,本發(fā)明實施例提供的方法對騰訊公司眾多互聯(lián)網(wǎng)業(yè)務(wù)所產(chǎn)生的UGC (User Generated Content)數(shù)據(jù)進(jìn)行存儲和管理,預(yù)上傳服務(wù)器接收到來自web的文件數(shù)據(jù)請求以后,通過索引服務(wù)器查找到已有文件的存儲路徑或者為新文件分配存儲路徑,然后預(yù)存?zhèn)鞣?wù)器在獲取到文件存儲路徑以后,就可以直接往存儲服務(wù)器上以并發(fā)形式的讀寫數(shù)據(jù)。在實際的部署中,預(yù)上傳服務(wù)器,索引服務(wù)器和存儲服務(wù)器可以根據(jù)實際業(yè)務(wù)數(shù)據(jù)的負(fù)載情況動態(tài)擴(kuò)展機(jī)器的數(shù)量。每一類的服務(wù)器之間是對等的關(guān)系,但是都會有一個Master Server用于請求的分發(fā)和維護(hù)服務(wù)器之間的負(fù)載平衡?;谶@種開放的且極具擴(kuò)展性的架構(gòu),消除了數(shù)據(jù)排重過程中計算、索引、和存儲每一個環(huán)節(jié)的性能瓶頸,可以應(yīng)用于海量互聯(lián)網(wǎng)文件數(shù)據(jù)的實時排重。
[0131]其中,文件I和文件2都為用戶通過web產(chǎn)生的文件,并采用本發(fā)明實施例提供的方法來對文件I和文件2進(jìn)行處理。參見圖6,該方法包括:
[0132]步驟301:預(yù)上傳服務(wù)器對文件I進(jìn)行分片得到文件I包括的待存儲的文件分片
1、2、3、4……N,分別獲取文件I包括的待存儲的文件分片1、2、3、4……N的索引值;
[0133]其中,預(yù)上傳服務(wù)器根據(jù)待存儲的文件分片I的內(nèi)容獲取待存儲的文件分片I的索引值為MD5-1,根據(jù)待存儲的文件分片2的內(nèi)容獲取待存儲的文件分片2的索引值為MD5-5,根據(jù)待存儲的文件分片3的內(nèi)容獲取待存儲的文件分片3的索引值為MD5-4,根據(jù)待存儲的文件分片4的內(nèi)容獲取待 存儲的文件分片4的索引值為MD5-2,……以及根據(jù)待存儲有文件分片N的內(nèi)容獲取待存儲的文件分片N的索引值為MD5-N。[0134]步驟302:對于文件I中的一個待存儲的文件分片1,預(yù)上傳服務(wù)器根據(jù)待存儲的文件分片1,獲取用于存儲待存儲的文件分片I的索引值的索引服務(wù)器I;
[0135]具體地,預(yù)上傳服務(wù)器根據(jù)索引服務(wù)器的個數(shù),對待存儲的文件分片I的索引值MD5-1進(jìn)行取模運(yùn)算,得到索引服務(wù)器的標(biāo)識ID1,將該索引服務(wù)器的標(biāo)識IDl對應(yīng)的索引服務(wù)器I確定為用于存儲待存儲的文件分片的索引值的索引服務(wù)器。
[0136]其中,對于文件待存儲的文件分片2、3、4......N分別按待存儲的文件分片I 一樣,
分別得到用于存儲待存儲的文件分片2、3、4……N的索引服務(wù)器,假設(shè)在本發(fā)明實施例中,得到用于存儲待存儲的文件分片2、3、4……N的索引服務(wù)器都為索引服務(wù)器I。
[0137]步驟303:預(yù)上傳服務(wù)器根據(jù)待存儲的文件分片I的索引值MD5-1,判斷索引服務(wù)器I包括的索引表1中是否存在待存儲的文件分片I的索引值MD5-1,假設(shè)判斷出不存在,則執(zhí)行步驟304 ;
[0138]具體地,預(yù)上傳服務(wù)器根據(jù)待存儲的文件分片I的索引值MD5-1,查找索引服務(wù)器I包括的索引表1,且從索引表1沒有查找出對應(yīng)的存儲路徑和引用次數(shù),然后據(jù)此判斷出索引服務(wù)器I中不存在待存儲的文件分片I的索引值MD5-1。
[0139]其中,假設(shè)每臺索引服務(wù)器的最大處理能力為I萬條索引記錄,這樣的話預(yù)上傳服務(wù)器將全局的索引表以I萬條記錄作為劃分依據(jù),按文件分片的索引值大小的順序分分配給每個索引服務(wù)器。參見圖6,三萬條索引記錄被分配給三臺索引服務(wù)器,三臺索引服務(wù)器可以并行的處理預(yù)上傳服務(wù)器的索引查詢請求,其中,參見圖6,該三臺索引服務(wù)器分別為索引服務(wù)器1、2和3,且每個索引服務(wù)器中包括一個索引表,索引服務(wù)器I中包括索引表1,索引服務(wù)器2中包括索引表2,以及索引服務(wù)器3中包括索引表3。
`[0140]步驟304:預(yù)上傳服務(wù)器將待存儲的文件分片I存儲在存儲服務(wù)器中,獲取存儲待存儲的文件分片I的存儲路徑,該存儲路徑包括待存儲的文件分片I所在存儲區(qū)域的標(biāo)識為2和待存儲的文件分片I在該存儲區(qū)域的存儲位置為245 ;
[0141]步驟305:預(yù)上傳服務(wù)器設(shè)置待存儲的文件分片I的引用次數(shù)的初值為1,將待存儲的文件分片的索引值MD5-1、存儲路徑和引用次數(shù)I存儲在索引服務(wù)器的索引表1中;
[0142]其中,參見7,將將待存儲的文件分片的索引值MD5-1、存儲路徑和引用次數(shù)I存儲在索引服務(wù)器的索引表1中,在索引表1中Key為索引文件分片的索引值,Value包括文件分片的存儲區(qū)域的標(biāo)識和存儲位置以及引用次數(shù),其中,chid為存儲區(qū)域的標(biāo)識,fid為存儲位置,ref_count為文件分片的引用次數(shù)。
[0143]其中,圖7是對單個索引服務(wù)器上的分片排重索引的管理,索引表中每條記錄都是一對(key,value), Key值為分片的索引值,該索引值為MD5散列值,Value則保存了用于查找分片物理存儲路徑的chunk id和fid,以及用于標(biāo)識相同分片的應(yīng)用計數(shù)ref_count。圖中文件I和文件2有兩個相同的分片,分片的散列值分別指向索引表中的(md5_2, (332,20,2))和(md5_4, (15,2,2))兩條記錄。
[0144]步驟306:對于文件I包括的待存儲的文件分片4,預(yù)上傳服務(wù)器根據(jù)待存儲的文件分片4的索引值MD5-2,判斷索引服務(wù)器I包括的索引表1中是否存在待存儲的文件分片4的索引值MD5-2,假設(shè)判斷出存在,則執(zhí)行步驟307 ;
[0145]步驟307:預(yù)上傳服務(wù)器在索引服務(wù)器中的索引表1中增加待上傳的文件分片4的引用次數(shù)。[0146]其中,參見圖7,在索引服務(wù)器中的索引表1中增加待上傳的文件分片4的引用次數(shù),增加后的引用次數(shù)為2。
[0147]其中,對文件I包括的其他的文件分片2、3......N,同文件分片I和4 一樣執(zhí)行上
述302至307流程,得到的結(jié)果參見圖7。
[0148]其中,對于文件2,預(yù)上傳服務(wù)器對文件2進(jìn)行分片得到文件2包括的待存儲的文件分片1、2、3、4……M,根據(jù)文件2包括的待存儲的文件分片I的內(nèi)容獲取待存儲的文件分片I的索引值為MD5-3,根據(jù)待存儲的文件分片2的內(nèi)容獲取待存儲的文件分片2的索引值為MD5-9,根據(jù)待存儲的文件分片3的內(nèi)容獲取待存儲的文件分片3的索引值為MD5-4,根據(jù)待存儲的文件分片4的內(nèi)容獲取待存儲的文件分片4的索引值為MD5-2,……以及根據(jù)待存儲有文件分片M的內(nèi)容獲取待存儲的文件分片M的索引值為MD5-M ;然后對于文件2包括的任一個待存儲的文件分片按文件I包括的待存儲的文件分片I和4 一樣執(zhí)行上述步驟302至307的流程,得到的結(jié)果參見圖7。
[0149]實施例4
[0150]如圖8所示,本發(fā)明實施例提供了一種去除重復(fù)數(shù)據(jù)的裝置,包括:
[0151]第一獲取模塊401,用于根據(jù)待存儲的文件分片的索引值獲取用于存儲所述待存儲的文件分片的索引值的索引服務(wù)器;
[0152]第一增加模塊402,用于如果所述索引服務(wù)器包括所述待存儲的文件分片的索引值,則在所述索引服務(wù)器中增加所述待存儲的文件分片的引用次數(shù);
[0153]第一存儲模塊403,用于如果所述索引服務(wù)器不包括所述待存儲的文件分片的索引值,則將所述待存儲的文件分片存儲在存儲服務(wù)器中,獲取所述待存儲的文件分片的引用次數(shù)和存儲路徑,將所述待 存儲的文件分片的索引值、存儲路徑和引用次數(shù)存儲在所述索引服務(wù)器中。
[0154]其中,第一獲取模塊401包括:
[0155]運(yùn)算單元,用于根據(jù)索引服務(wù)器的個數(shù)對所述待存儲的文件分片的索引值進(jìn)行取模運(yùn)算得到索引服務(wù)器的標(biāo)識;
[0156]確定單元,用于確定所述索引服務(wù)器的標(biāo)識對應(yīng)的索引服務(wù)器為用于存儲所述待存儲的文件分片的索引值的索引服務(wù)器。
[0157]其中,第一存儲模塊403包括:
[0158]第一存儲單元,用于將所述待存儲的文件分片存儲在存儲服務(wù)器中;
[0159]獲取單元,用于獲取所述待存儲的文件分片的存儲路徑;
[0160]設(shè)置單元,用于設(shè)置所述待存儲的文件分片的引用次數(shù)的初值;
[0161]第二存儲單元,用于將所述待存儲的文件分片的索引值、存儲路徑和引用次數(shù)的對應(yīng)關(guān)系存儲在所述索引服務(wù)器包括的索引表中。
[0162]進(jìn)一步地,所述裝置還包括:
[0163]判斷模塊,用于判斷所述索引服務(wù)器是否包括所述所述待存儲的文件分片的索引值。
[0164]其中,所述判斷模塊包括:
[0165]查找單元,用于根據(jù)所述待存儲的文件分片的索引值,查找所述索引服務(wù)器中包括的索引表,所述索引表用于存儲文件分片的索引值、存儲路徑與引用次數(shù)的對應(yīng)關(guān)系;[0166]第一判斷單元,用于如果查找出對應(yīng)的存儲路徑和引用次數(shù),則判斷出所述索引服務(wù)器包括所述所述待存儲的文件分片的索引值;
[0167]第二判斷單元,用于如果沒有查找出對應(yīng)的存儲路徑和引用次數(shù),則判斷出所述索引服務(wù)器不包括所述所述待存儲的文件分片的索引值。
[0168]進(jìn)一步地,所述裝置還包括:
[0169]分片模塊,用于對需要存儲的文件進(jìn)行分片得到待存儲的文件分片;
[0170]第二獲取模塊,用于根據(jù)所述待存儲的文件分片的內(nèi)容獲取所述待存儲的文件分片的索引值。
[0171]進(jìn)一步地,所述裝置還包括:
[0172]減少模塊,用于根據(jù)待刪除的文件分片的索引值獲取用于存儲所述待刪除的文件分片的索引的索引服務(wù)器,在所述索引服務(wù)器包括的索引表中減少所述待刪除的文件分片的引用次數(shù),所述索引表用于存儲文件分片的索引值、存儲路徑與引用次數(shù)的對應(yīng)關(guān)系。
[0173]進(jìn)一步地,所述裝置還包括:
[0174]刪除模塊,用于如果所述待刪除的文件分片的引用次數(shù)為零,則根據(jù)所述待刪除的文件分片的索引值,從所述索引服務(wù)器包括的索引表中獲取所述待刪除的文件的存儲路徑,根據(jù)所述待刪除的文件分片的存儲路徑刪除所述待刪除的文件分片。
[0175]在本發(fā)明實施例中,根據(jù)待存儲的文件分片的索引值獲取用于存儲待存儲的文件分片的索引值的索引服務(wù)器,如果索引服務(wù)器包括待存儲的文件分片的索引值,則在索引服務(wù)器中增加待存儲的文件分片的引用次數(shù),如果索引服務(wù)器不包括待存儲的文件分片的索引值,則將待存儲的文件分片存儲在存儲服務(wù)器中,獲取待存儲的文件分片的引用次數(shù)和存儲路徑,將待存儲的文件分片的索引值、存儲路徑和引用次數(shù)存儲在索引服務(wù)器中,如此可以使用多個索引服務(wù)器器來存儲索引表,避免使用一臺服務(wù)器來存儲索引表而導(dǎo)致索引表的部分內(nèi)容被移入服務(wù)器的磁盤,從而提高備份數(shù)據(jù)的性能。
[0176]實施例5
[0177]如圖9所示,本發(fā)明實施例提供了一種去除重復(fù)數(shù)據(jù)的系統(tǒng),包括:
[0178]預(yù)上傳服務(wù)器501,索引服務(wù)器502和存儲服務(wù)器503 ;
[0179]所述預(yù)上傳服務(wù)器501,用于根據(jù)待存儲的文件分片的索引值獲取用于存儲所述待存儲的文件分片的索引值的索引服務(wù)器,如果所述索引服務(wù)器包括所述待存儲的文件分片的索引值,則發(fā)送增加請求給所述索引服務(wù)器,所述增加請求攜帶所述待存儲的文件分片的索引值,如果所述索引服務(wù)器不包括所述待存儲的文件分片的索引值,則將所述待存儲的文件分片發(fā)送給所述存儲服務(wù)器,接收所述存儲服務(wù)器發(fā)送的存儲所述待存儲的文件分片的存儲地址,獲取所述待存儲的文件分片的引用次數(shù),將所述待存儲的文件分片的索引值、存儲路徑和弓I用次數(shù)發(fā)送給所述索引服務(wù)器中;
[0180]所述索引服務(wù)器502,用于如果自身包括所述待存儲的文件分片的索引值,則接收所述增加請求。根據(jù)所述增加請求攜帶的所述待存儲的文件分片的索引值增加所述待存儲的文件分片的引用次數(shù),如果自身不包括所述待存儲的文件分片的索引值,則接收所述待存儲的文件分片的索引值、存儲路徑和引用次數(shù),并存儲所述待存儲的文件分片的索引值、存儲路徑和引用次數(shù)的對應(yīng)關(guān)系;
[0181]所述存儲服務(wù)器503,用于如果所述索引服務(wù)器不包括所述待存儲的文件分片的索引值,則接收所述待存儲的文件分片,存儲所述待存儲的文件分片,發(fā)送存儲所述待存儲的文件分片的存儲路徑給所述預(yù)上傳服務(wù)器。
[0182]其中,所述預(yù)上傳服務(wù)器501,用于根據(jù)索引服務(wù)器的個數(shù)對所述待存儲的文件分片的索引值進(jìn)行取模運(yùn)算得到索引服務(wù)器的標(biāo)識,確定所述索引服務(wù)器的標(biāo)識對應(yīng)的索引服務(wù)器為用于存儲所述待存儲的文件分片的索引值的索引服務(wù)器。
[0183]其中,所述預(yù)上傳服務(wù)器501,用于將所述待存儲的文件分片發(fā)送給所述存儲服務(wù)器,接收所述存儲服務(wù)器發(fā)送的存儲所述待存儲的文件分片的存儲地址,設(shè)置所述待存儲的文件分片的引用次數(shù)的初值,將所述待存儲的文件分片的索引值、存儲路徑和引用次數(shù)發(fā)送給所述索引服務(wù)器中。
[0184]其中,所述預(yù)上傳服務(wù)器501,還用于判斷所述索引服務(wù)器是否包括所述所述待存儲的文件分片的索引值。
[0185]其中,所述預(yù)上傳服務(wù)器501,用于根據(jù)所述待存儲的文件分片的索引值,查找所述索引服務(wù)器中包括的索引表,所述索引表用于存儲文件分片的索引值、存儲路徑與引用次數(shù)的對應(yīng)關(guān)系,如果查找出對應(yīng)的存儲路徑和引用次數(shù),則判斷出所述索引服務(wù)器包括所述所述待存儲的文件分片的索引值,如果沒有查找出對應(yīng)的存儲路徑和引用次數(shù),則判斷出所述索引服務(wù)器不包括所述所述待存儲的文件分片的索引值。
[0186]其中,所述預(yù)上傳服務(wù)器501,還用于對需要存儲的文件進(jìn)行分片得到待存儲的文件分片,根據(jù)所述待存儲的文件分片的內(nèi)容獲取所述待存儲的文件分片的索引值。
[0187]其中,所述預(yù)上傳服務(wù)器501,還用于根據(jù)待刪除的文件分片的索引值獲取用于存儲所述待刪除的文件分片的索引的索引服務(wù)器,在所述索引服務(wù)器包括的索引表中減少所述待刪除的文件分片的引用次數(shù),所述索引表用于存儲文件分片的索引值、存儲路徑與引用次數(shù)的對應(yīng)關(guān)系。
[0188]其中,所述預(yù)上傳服務(wù)器501,還用于如果所述待刪除的文件分片的引用次數(shù)為零,則根據(jù)所述待刪除的文件分片的索引值,從所述索引服務(wù)器包括的索引表中獲取所述待刪除的文件的存儲路徑,根據(jù)所述待刪除的文件分片的存儲路徑刪除所述待刪除的文件分片。
[0189]在本發(fā)明實施例中,根據(jù)待存儲的文件分片的索引值獲取用于存儲待存儲的文件分片的索引值的索引服務(wù)器,如果索引服務(wù)器包括待存儲的文件分片的索引值,則在索引服務(wù)器中增加待存儲的文件分片的引用次數(shù),如果索引服務(wù)器不包括待存儲的文件分片的索引值,則將待存儲的文件分片存儲在存儲服務(wù)器中,獲取待存儲的文件分片的引用次數(shù)和存儲路徑,將待存儲的文件分片的索引值、存儲路徑和引用次數(shù)存儲在索引服務(wù)器中,如此可以使用多個索引服務(wù)器器來存儲索引表,避免使用一臺服務(wù)器來存儲索引表而導(dǎo)致索引表的部分內(nèi)容被移入服務(wù)器的磁盤,從而提高備份數(shù)據(jù)的性能。
[0190]本領(lǐng)域普通技術(shù)人員可以理解實現(xiàn)上述實施例的全部或部分步驟可以通過硬件來完成,也可以通過程序來指令相關(guān)的硬件完成,所述的程序可以存儲于一種計算機(jī)可讀存儲介質(zhì)中,上述提到的存儲介質(zhì)可以是只讀存儲器,磁盤或光盤等。
[0191]以上所述僅為本發(fā)明的較佳實施例,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
【權(quán)利要求】
1.一種去除重復(fù)數(shù)據(jù)的方法,其特征在于,所述方法包括: 根據(jù)待存儲的文件分片的索引值獲取用于存儲所述待存儲的文件分片的索引值的索引服務(wù)器; 如果所述索引服務(wù)器包括所述待存儲的文件分片的索引值,則在所述索引服務(wù)器中增加所述待存儲的文件分片的引用次數(shù); 如果所述索引服務(wù)器不包括所述待存儲的文件分片的索引值,則將所述待存儲的文件分片存儲在存儲服務(wù)器中,獲取所述待存儲的文件分片的引用次數(shù)和存儲路徑,將所述待存儲的文件分片的索引值、存儲路徑和引用次數(shù)存儲在所述索引服務(wù)器中。
2.如權(quán)利要求1所述的方法,其特征在于,所述根據(jù)待存儲的文件分片的索引值獲取用于存儲所述待存儲的文件分片的索引值的索引服務(wù)器,包括: 根據(jù)索引服務(wù)器的個數(shù)對所述待存儲的文件分片的索引值進(jìn)行取模運(yùn)算得到索引服務(wù)器的標(biāo)識; 確定所述索引服務(wù)器的標(biāo)識對應(yīng)的索引服務(wù)器為用于存儲所述待存儲的文件分片的索引值的索引服務(wù)器。
3.如權(quán)利要求1所述的方法,其特征在于,所述將所述待存儲的文件分片存儲在存儲服務(wù)器中,獲取所述待存儲的文件分片的引用次數(shù)和存儲路徑,將所述待存儲的文件分片的索引值、存儲路徑和引用次數(shù)存儲在所述索引服務(wù)器中,包括: 將所述待存儲的文件分片存儲在存儲服務(wù)器中; 獲取所述待存儲的文件分片的存儲路徑;· 設(shè)置所述待存儲的文件分片的引用次數(shù)的初值; 將所述待存儲的文件分片的索引值、存儲路徑和引用次數(shù)的對應(yīng)關(guān)系存儲在所述索引服務(wù)器包括的索引表中。
4.如權(quán)利要求1所述的方法,其特征在于,所述在所述索引服務(wù)器中增加所述待存儲的文件分片的引用次數(shù)之前,還包括: 判斷所述索引服務(wù)器是否包括所述所述待存儲的文件分片的索引值。
5.如權(quán)利要求4所述的方法,其特征在于,所述根據(jù)所述待存儲的文件分片的索引值判斷所述索引服務(wù)器是否包括所述所述待存儲的文件分片的索引值,包括: 根據(jù)所述待存儲的文件分片的索引值,查找所述索引服務(wù)器中包括的索引表,所述索引表用于存儲文件分片的索引值、存儲路徑與引用次數(shù)的對應(yīng)關(guān)系; 如果查找出對應(yīng)的存儲路徑和引用次數(shù),則判斷出所述索引服務(wù)器包括所述所述待存儲的文件分片的索引值; 如果沒有查找出對應(yīng)的存儲路徑和引用次數(shù),則判斷出所述索引服務(wù)器不包括所述所述待存儲的文件分片的索引值。
6.如權(quán)利要求1所述的方法,其特征在于,所述根據(jù)待存儲的文件分片的索引值獲取用于存儲所述待存儲的文件分片的索引值的索引服務(wù)器之前,還包括: 對需要存儲的文件進(jìn)行分片得到待存儲的文件分片; 根據(jù)所述待存儲的文件分片的內(nèi)容獲取所述待存儲的文件分片的索引值。
7.如權(quán)利要求1至6任一項權(quán)利要求所述的方法,其特征在于,所述方法還包括: 根據(jù)待刪除的文件分片的索引值獲取用于存儲所述待刪除的文件分片的索引的索引服務(wù)器,在所述索引服務(wù)器包括的索引表中減少所述待刪除的文件分片的引用次數(shù),所述索引表用于存儲文件分片的索引值、存儲路徑與引用次數(shù)的對應(yīng)關(guān)系。
8.如權(quán)利要求7所述的方法,其特征在于,所述在所述索引服務(wù)器減少所述待刪除的文件分片的引用次數(shù)之后,還包括: 如果所述待刪除的文件分片的引用次數(shù)為零,則根據(jù)所述待刪除的文件分片的索引值,從所述索引服務(wù)器包括的索引表中獲取所述待刪除的文件的存儲路徑,根據(jù)所述待刪除的文件分片的存儲路徑刪除所述待刪除的文件分片。
9.一種去除重復(fù)數(shù)據(jù)的裝置,其特征在于,所述裝置包括: 第一獲取模塊,用于根據(jù)待存儲的文件分片的索引值獲取用于存儲所述待存儲的文件分片的索引值的索引服務(wù)器; 第一增加模塊,用于如果所述索引服務(wù)器包括所述待存儲的文件分片的索引值,則在所述索引服務(wù)器中增加所述待存儲的文件分片的引用次數(shù); 第一存儲模塊,用于如果所述索引服務(wù)器不包括所述待存儲的文件分片的索引值,則將所述待存儲的文件分片存儲在存儲服務(wù)器中,獲取所述待存儲的文件分片的引用次數(shù)和存儲路徑,將所述待存儲的文件分片的索引值、存儲路徑和引用次數(shù)存儲在所述索引服務(wù)器中。
10.如權(quán)利要求9所述的裝置,其特征在于,所述第一獲取模塊包括: 運(yùn)算單元,用于根據(jù)索引服務(wù)器的個數(shù)對所述待存儲的文件分片的索引值進(jìn)行取模運(yùn)算得到索引服務(wù)器的標(biāo)識; 確定單元,用于確定所述索引服務(wù)器的標(biāo)識對應(yīng)的索引服務(wù)器為用于存儲所述待存儲的文件分片的索引值的索引服務(wù)器。
11.如權(quán)利要求9所述的裝置,其特征在于,所述第一存儲模塊包括: 第一存儲單元,用于將所述待存儲的文件分片存儲在存儲服務(wù)器中; 獲取單元,用于獲取所述待存儲的文件分片的存儲路徑; 設(shè)置單元,用于設(shè)置所述待存儲的文件分片的引用次數(shù)的初值; 第二存儲單元,用于將所述待存儲的文件分片的索引值、存儲路徑和引用次數(shù)的對應(yīng)關(guān)系存儲在所述索引服務(wù)器包括的索引表中。
12.如權(quán)利要求9所述的裝置,其特征在于,所述裝置還包括: 判斷模塊,用于判斷所述索引服務(wù)器是否包括所述所述待存儲的文件分片的索引值。
13.如權(quán)利要求12所述的裝置,其特征在于,所述判斷模塊包括: 查找單元,用于根據(jù)所述待存儲的文件分片的索引值,查找所述索引服務(wù)器中包括的索引表,所述索引表用于存儲文件分片的索引值、存儲路徑與引用次數(shù)的對應(yīng)關(guān)系; 第一判斷單元,用于如果查找出對應(yīng)的存儲路徑和引用次數(shù),則判斷出所述索引服務(wù)器包括所述所述待存儲的文件分片的索引值; 第二判斷單元,用于如果沒有查找出對應(yīng)的存儲路徑和引用次數(shù),則判斷出所述索引服務(wù)器不包括所述所述待存儲的文件分片的索引值。
14.如權(quán)利要 求9所述的裝置,其特征在于,所述裝置還包括: 分片模塊,用于對需要存儲的文件進(jìn)行分片得到待存儲的文件分片; 第二獲取模塊,用于根據(jù)所述待存儲的文件分片的內(nèi)容獲取所述待存儲的文件分片的索引值。
15.如權(quán)利要求9至14任一項權(quán)利要求所述的裝置,其特征在于,所述裝置還包括: 減少模塊,用于根據(jù)待刪除的文件分片的索引值獲取用于存儲所述待刪除的文件分片的索引的索引服務(wù)器,在所述索引服務(wù)器包括的索引表中減少所述待刪除的文件分片的引用次數(shù),所述索引表用于存儲文件分片的索引值、存儲路徑與引用次數(shù)的對應(yīng)關(guān)系。
16.如權(quán)利要求15所述的裝置,其特征在于,所述裝置還包括: 刪除模塊,用于如果所述待刪除的文件分片的引用次數(shù)為零,則根據(jù)所述待刪除的文件分片的索引值,從所述索引服務(wù)器包括的索引表中獲取所述待刪除的文件的存儲路徑,根據(jù)所述待刪除的文件分片的存儲路徑刪除所述待刪除的文件分片。
17.—種去除重復(fù)數(shù)據(jù)的系統(tǒng),其特征在于,所述系統(tǒng)包括預(yù)上傳服務(wù)器,索引服務(wù)器和存儲服務(wù)器;所述預(yù)上傳服務(wù)器,用于根據(jù)待存儲的文件分片的索引值獲取用于存儲所述待存儲的文件分片的索引值的索引服務(wù)器,如果所述索引服務(wù)器包括所述待存儲的文件分片的索引值,則發(fā)送增加請求給所述索引服務(wù)器,所述增加請求攜帶所述待存儲的文件分片的索引值,如果所述索引服務(wù)器不包括所述待存儲的文件分片的索引值,則將所述待存儲的文件分片發(fā)送給所述存儲服務(wù)器,接收所述存儲服務(wù)器發(fā)送的存儲所述待存儲的文件分片的存儲地址,獲取所述待存儲的文件分片的引用次數(shù),將所述待存儲的文件分片的索引值、存儲路徑和引用次數(shù)發(fā)送給所述索引服務(wù)器中; 所述索引服務(wù)器,用于如果自身包括所述待存儲的文件分片的索引值,則接收所述增加請求。根據(jù)所述增加 請求攜帶的所述待存儲的文件分片的索引值增加所述待存儲的文件分片的引用次數(shù),如果自身不包括所述待存儲的文件分片的索引值,則接收所述待存儲的文件分片的索引值、存儲路徑和引用次數(shù),并存儲所述待存儲的文件分片的索引值、存儲路徑和引用次數(shù)的對應(yīng)關(guān)系; 所述存儲服務(wù)器,用于如果所述索引服務(wù)器不包括所述待存儲的文件分片的索引值,則接收所述待存儲的文件分片,存儲所述待存儲的文件分片,發(fā)送存儲所述待存儲的文件分片的存儲路徑給所述預(yù)上傳服務(wù)器。
18.如權(quán)利要求17所述的系統(tǒng),其特征在于, 所述預(yù)上傳服務(wù)器,用于根據(jù)索引服務(wù)器的個數(shù)對所述待存儲的文件分片的索引值進(jìn)行取模運(yùn)算得到索引服務(wù)器的標(biāo)識,確定所述索引服務(wù)器的標(biāo)識對應(yīng)的索引服務(wù)器為用于存儲所述待存儲的文件分片的索引值的索引服務(wù)器。
19.如權(quán)利要求17所述的系統(tǒng),其特征在于, 所述預(yù)上傳服務(wù)器,用于將所述待存儲的文件分片發(fā)送給所述存儲服務(wù)器,接收所述存儲服務(wù)器發(fā)送的存儲所述待存儲的文件分片的存儲地址,設(shè)置所述待存儲的文件分片的引用次數(shù)的初值,將所述待存儲的文件分片的索引值、存儲路徑和引用次數(shù)發(fā)送給所述索引服務(wù)器中。
20.如權(quán)利要求17所述的系統(tǒng),其特征在于,所述預(yù)上傳服務(wù)器,還用于判斷所述索引服務(wù)器是否包括所述所述待存儲的文件分片的索引值。
21.如權(quán)利要求20所述的系統(tǒng),其特征在于,所述預(yù)上傳服務(wù)器,用于根據(jù)所述待存儲的文件分片的索引值,查找所述索引服務(wù)器中包括的索引表,所述索引表用于存儲文件分片的索引值、存儲路徑與引用次數(shù)的對應(yīng)關(guān)系,如果查找出對應(yīng)的存儲路徑和引用次數(shù),則判斷出所述索引服務(wù)器包括所述所述待存儲的文件分片的索引值,如果沒有查找出對應(yīng)的存儲路徑和引用次數(shù),則判斷出所述索引服務(wù)器不包括所述所述待存儲的文件分片的索引值。
22.如權(quán)利要求17所述的系統(tǒng),其特征在于,所述預(yù)上傳服務(wù)器,還用于對需要存儲的文件進(jìn)行分片得到待存儲的文件分片,根據(jù)所述待存儲的文件分片的內(nèi)容獲取所述待存儲的文件分片的索引值。
23.如權(quán)利要求17至22任一項權(quán)利要求所述的系統(tǒng),其特征在于, 所述預(yù)上傳服務(wù)器,還用于根據(jù)待刪除的文件分片的索引值獲取用于存儲所述待刪除的文件分片的索引的索引服務(wù)器,在所述索引服務(wù)器包括的索引表中減少所述待刪除的文件分片的引用次數(shù),所述索引表用于存儲文件分片的索引值、存儲路徑與引用次數(shù)的對應(yīng)關(guān)系。
24.如權(quán)利要求23所述的系統(tǒng),其特征在于, 所述預(yù)上傳服務(wù)器,還用于如果所述待刪除的文件分片的引用次數(shù)為零,則根據(jù)所述待刪除的文件分片的索引值,從所述索引服務(wù)器包括的索引表中獲取所述待刪除的文件的存儲路徑,根據(jù)所述待刪除 的文件分片的存儲路徑刪除所述待刪除的文件分片。
【文檔編號】G06F17/30GK103823807SQ201210464977
【公開日】2014年5月28日 申請日期:2012年11月16日 優(yōu)先權(quán)日:2012年11月16日
【發(fā)明者】婁繼冰, 李博, 黃偉 申請人:深圳市騰訊計算機(jī)系統(tǒng)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
伊春市| 兴业县| 海南省| 南昌市| 曲周县| 安塞县| 墨江| 城步| 阿坝县| 称多县| 饶河县| 壶关县| 永定县| 教育| 长兴县| 三河市| 商城县| 区。| 冕宁县| 会理县| 陆河县| 黄大仙区| 台中县| 中江县| 屏山县| 顺义区| 古丈县| 平定县| 舞阳县| 怀柔区| 柳林县| 科技| 洞头县| 基隆市| 确山县| 德惠市| 唐河县| 枣庄市| 那曲县| 泸水县| 洞口县|