麻豆精品无码国产在线播放,国产亚洲精品成人AA片新蒲金,国模无码大尺度一区二区三区,神马免费午夜福利剧场

一種ip硬盤及其數(shù)據(jù)處理方法

文檔序號:6621472閱讀:162來源:國知局
一種ip硬盤及其數(shù)據(jù)處理方法
【專利摘要】本發(fā)明實施例提供了一種網(wǎng)絡(luò)互連協(xié)議IP硬盤及其數(shù)據(jù)處理方法,所述IP硬盤中預(yù)設(shè)有第一布隆過濾器;該方法包括:所述IP硬盤獲得第一數(shù)值Value;所述IP硬盤獲得所述第一Value對應(yīng)的第一哈希值;所述IP硬盤判斷所述第一布隆過濾器中與所述第一哈希值對應(yīng)的二進制位的數(shù)值是否為1;若所述第一布隆過濾器中與所述第一哈希值對應(yīng)的二進制位的數(shù)值為1,所述IP硬盤判斷所述第一Value是否為重復(fù)數(shù)據(jù);若所述第一Value為重復(fù)數(shù)據(jù),所述IP硬盤對所述第一Value執(zhí)行重復(fù)數(shù)據(jù)的刪除操作。根據(jù)本發(fā)明實施例提供的技術(shù)方案,IP硬盤可以實現(xiàn)主動刪除重復(fù)數(shù)據(jù),節(jié)省存儲空間。
【專利說明】一種IP硬盤及其數(shù)據(jù)處理方法 【【技術(shù)領(lǐng)域】】
[0001] 本發(fā)明涉及存儲【技術(shù)領(lǐng)域】,尤其涉及一種IP硬盤及其數(shù)據(jù)處理方法。 【【背景技術(shù)】】
[0002] 目前,有一種基于鍵-值(Key-Value)的硬盤,如網(wǎng)絡(luò)互連協(xié)議(Internet Protocol, IP)硬盤,與傳統(tǒng)硬盤通過小型計算機系統(tǒng)接口(Small Computer System Interface,SCSI)與主機進行通信的方式不同,這種硬盤采用以太網(wǎng)口與外部設(shè)備進行通 信,而且這種硬盤是一種自包含硬盤,可以沒有主機對其進行控制,可以自發(fā)完成數(shù)據(jù)的讀 /寫操作,而傳統(tǒng)硬盤必須連接到主機并在主機的控制下進行相應(yīng)的讀寫操作。
[0003] 目前,IP硬盤沒有刪除重復(fù)數(shù)據(jù)的功能,導致IP硬盤中會存儲重復(fù)的數(shù)據(jù),浪費 IP硬盤的存儲空間。 【
【發(fā)明內(nèi)容】

[0004] 有鑒于此,本發(fā)明實施例提供了一種IP硬盤及其數(shù)據(jù)處理方法,IP硬盤可以實現(xiàn) 主動刪除重復(fù)數(shù)據(jù),節(jié)省存儲空間。
[0005] 第一方面,本發(fā)明實施例提供了一種IP硬盤的數(shù)據(jù)處理方法,所述IP硬盤中預(yù)設(shè) 有第一布隆過濾器;包括:
[0006] 所述IP硬盤獲得第一數(shù)值Value ;
[0007] 所述IP硬盤獲得所述第一 Value對應(yīng)的第一哈希值;
[0008] 所述IP硬盤判斷所述第一布隆過濾器中與所述第一哈希值對應(yīng)的二進制位的數(shù) 值是否為1 ;
[0009] 若所述第一布隆過濾器中與所述第一哈希值對應(yīng)的二進制位的數(shù)值為1,所述IP 硬盤判斷所述第一 Value是否為重復(fù)數(shù)據(jù);
[0010] 若所述第一 Value為重復(fù)數(shù)據(jù),所述IP硬盤對所述第一 Value執(zhí)行重復(fù)數(shù)據(jù)的刪 除操作。
[0011] 在第一方面的第一種可能的實現(xiàn)方式中,所述IP硬盤獲得第一 Value,包括:
[0012] 所述IP硬盤依據(jù)所述IP硬盤中預(yù)先存儲的Value,獲得所述第一 Value ;或者,
[0013] 所述IP硬盤依據(jù)客戶端通過以太網(wǎng)口發(fā)送的Value,獲得所述第一 Value。
[0014] 結(jié)合第一方面或第一方面的第一種可能的實現(xiàn)方式,在第一方面的第二種可能的 實現(xiàn)方式中,所述IP硬盤中預(yù)設(shè)有第二布隆過濾器;所述IP硬盤存儲有P個第二Value,P 為大于或者等于1的整數(shù),所述IP硬盤判斷所述第一 Value是否為重復(fù)數(shù)據(jù),包括:
[0015] 所述IP硬盤獲得所述第一 Value對應(yīng)的第一指紋和每個所述第二Value對應(yīng)的 第二指紋;
[0016] 所述IP硬盤利用與所述第二布隆過濾器對應(yīng)的哈希算法,獲得所述第一指紋對 應(yīng)的第二哈希值和每個所述第二指紋對應(yīng)的第三哈希值,所述第二布隆過濾器的二進制位 的數(shù)目大于所述第一布隆過濾器的二進制位的數(shù)目;
[0017] 所述IP硬盤將所述第二布隆過濾器中每個所述第三哈希值對應(yīng)的二進制位的數(shù) 值置為1,以獲得第三布隆過濾器;
[0018] 所述IP硬盤獲得所述第三布隆過濾器中所述第二哈希值對應(yīng)的二進制位,若 所述第三布隆過濾器中所述第二哈希值對應(yīng)的二進制位的數(shù)值全部為1,確定所述第一 Value為重復(fù)數(shù)據(jù)。
[0019] 結(jié)合第一方面或第一方面的第一種可能的實現(xiàn)方式,在第一方面的第三種可能的 實現(xiàn)方式中,所述IP硬盤中預(yù)設(shè)有第二布隆過濾器;所述IP硬盤存儲有P個第二Value,P 為大于或者等于1的整數(shù),所述IP硬盤判斷所述第一 Value是否為重復(fù)數(shù)據(jù),包括:
[0020] 所述IP硬盤獲得所述第一 Value對應(yīng)的第三指紋和每個所述第二Value對應(yīng)的 第四指紋;
[0021] 所述IP硬盤將所述第三指紋和每個所述第四指紋分別拆分成R個第五指紋和R 個第六指紋,R = 2η,η為大于或者等于1的整數(shù);
[0022] 所述IP硬盤利用與所述第二布隆過濾器對應(yīng)的哈希算法,獲得所述R個第五指紋 對應(yīng)的R個第四哈希值和每個第六指紋對應(yīng)的R個第五哈希值;所述第二布隆過濾器的二 進制位的數(shù)目是所述第一布隆過濾器的二進制位的數(shù)目的R倍;
[0023] 所述IP硬盤將所述第二布隆過濾器中每個所述第五哈希值對應(yīng)的二進制位的數(shù) 值置為1,以獲得第三布隆過濾器;
[0024] 所述IP硬盤獲得所述第三布隆過濾器中R個所述第四哈希值對應(yīng)的二進制位,若 所述第三布隆過濾器中R個所述第四哈希值對應(yīng)的二進制位的數(shù)值全部為1,確定所述第 一 Value為重復(fù)數(shù)據(jù)。
[0025] 結(jié)合第一方面的第一種可能的實現(xiàn)方式,在第一方面的第四種可能的實現(xiàn)方式 中,所述IP硬盤對所述第一 Value執(zhí)行重復(fù)數(shù)據(jù)的刪除操作,包括:
[0026] IP硬盤刪除所述IP硬盤中所述第一 Value的存儲地址中存儲的所述第一 Value ;
[0027] IP硬盤獲得與所述第一 Value相同的第二Value對應(yīng)的Key ;
[0028] IP硬盤在所述IP硬盤中所述第一 Value的存儲地址中寫入所述第二Value對應(yīng) 的 Key。
[0029] 結(jié)合第一方面的第一種可能的實現(xiàn)方式,在第一方面的第五種可能的實現(xiàn)方式 中,所述IP硬盤對所述第一 Value執(zhí)行重復(fù)數(shù)據(jù)的刪除操作,包括:
[0030] IP硬盤獲得與所述第一 Value相同的第二Value對應(yīng)的Key ;
[0031] IP硬盤在所述IP硬盤中所述第一 Value在的存儲地址中寫入所述第二Value對 應(yīng)的Key。
[0032] 第二方面,本發(fā)明實施例提供了一種IP硬盤,所述IP硬盤中預(yù)設(shè)有第一布隆過濾 器;所述IP硬盤包括:
[0033] 獲取單元,用于獲得第一數(shù)值Value ;以及獲得所述第一 Value對應(yīng)的第一哈希 值;
[0034] 處理單元,用于判斷所述第一布隆過濾器中與所述獲取單元獲得的所述第一哈希 值對應(yīng)的二進制位的數(shù)值是否為1 ;若所述第一布隆過濾器中與所述第一哈希值對應(yīng)的二 進制位的數(shù)值為1,判斷所述第一 Value是否為重復(fù)數(shù)據(jù);
[0035] 執(zhí)行單元,用于若所述處理單元判定所述第一 Value為重復(fù)數(shù)據(jù),對所述第一 Value執(zhí)行重復(fù)數(shù)據(jù)的刪除操作。
[0036] 在第二方面的第一種可能的實現(xiàn)方式中,所述獲取單元具體用于:
[0037] 依據(jù)所述IP硬盤中預(yù)先存儲的Value,獲得所述第一 Value ;或者,
[0038] 依據(jù)客戶端通過以太網(wǎng)口發(fā)送的Value,獲得所述第一 Value。
[0039] 結(jié)合第二方面或第二方面的第一種可能的實現(xiàn)方式,在第二方面的第二種可能的 實現(xiàn)方式中,所述IP硬盤中預(yù)設(shè)有第二布隆過濾器;所述IP硬盤存儲有P個第二Value,P 為大于或者等于1的整數(shù),所述處理單元具體用于:
[0040] 獲得所述第一 Value對應(yīng)的第一指紋和每個所述第二Value對應(yīng)的第二指紋;
[0041] 利用與所述第二布隆過濾器對應(yīng)的哈希算法,獲得所述第一指紋對應(yīng)的第二哈希 值和每個所述第二指紋對應(yīng)的第三哈希值,所述第二布隆過濾器的二進制位的數(shù)目大于所 述第一布隆過濾器的二進制位的數(shù)目;
[0042] 將所述第二布隆過濾器中每個所述第三哈希值對應(yīng)的二進制位的數(shù)值置為1,以 獲得第三布隆過濾器;
[0043] 獲得所述第三布隆過濾器中所述第二哈希值對應(yīng)的二進制位,若所述第三布隆過 濾器中所述第二哈希值對應(yīng)的二進制位的數(shù)值全部為1,確定所述第一 Value為重復(fù)數(shù)據(jù)。
[0044] 結(jié)合第二方面或第二方面的第一種可能的實現(xiàn)方式,在第二方面的第三種可能的 實現(xiàn)方式中,所述IP硬盤中預(yù)設(shè)有第二布隆過濾器;所述IP硬盤存儲有P個第二Value,P 為大于或者等于1的整數(shù),所述處理單元具體用于:
[0045] 獲得所述第一 Value對應(yīng)的第三指紋和每個所述第二Value對應(yīng)的第四指紋;
[0046] 將所述第三指紋和每個所述第四指紋分別拆分成R個第五指紋和R個第六指紋, R = 2η, η為大于或者等于1的整數(shù);
[0047] 利用與所述第二布隆過濾器對應(yīng)的哈希算法,獲得所述R個第五指紋對應(yīng)的R個 第四哈希值和每個第六指紋對應(yīng)的R個第五哈希值;所述第二布隆過濾器的二進制位的數(shù) 目是所述第一布隆過濾器的二進制位的數(shù)目的R倍;
[0048] 將所述第二布隆過濾器中每個所述第五哈希值對應(yīng)的二進制位的數(shù)值置為1,以 獲得第三布隆過濾器;
[0049] 獲得所述第三布隆過濾器中R個所述第四哈希值對應(yīng)的二進制位,若所述第三布 隆過濾器中R個所述第四哈希值對應(yīng)的二進制位的數(shù)值全部為1,確定所述第一 Value為重 復(fù)數(shù)據(jù)。
[0050] 結(jié)合第二方面的第一種可能的實現(xiàn)方式,在第二方面的第四種可能的實現(xiàn)方式 中,所述執(zhí)行單元具體用于:
[0051] 刪除所述IP硬盤中所述第一 Value的存儲地址中存儲的所述第一 Value ;
[0052] 獲得與所述第一 Value相同的第二Value對應(yīng)的Key ;
[0053] 在所述IP硬盤中所述第一 Value的存儲地址中寫入所述第二Value對應(yīng)的Key。
[0054] 結(jié)合第二方面的第一種可能的實現(xiàn)方式,在第二方面的第五種可能的實現(xiàn)方式 中,所述執(zhí)行單元具體用于:
[0055] 獲得與所述第一 Value相同的第二Value對應(yīng)的Key ;
[0056] 在所述IP硬盤中所述第一 Value在的存儲地址中寫入所述第二Value對應(yīng)的 Key。
[0057] 由以上技術(shù)方案可以看出,本發(fā)明實施例具有以下有益效果:
[0058] IP硬盤能夠利用布隆過濾器判斷Value是否屬于重復(fù)數(shù)據(jù),并在判定Value為重 復(fù)數(shù)據(jù)時對Value執(zhí)行刪除操作,因此,IP硬盤可以自行主動刪除重復(fù)數(shù)據(jù),從而可以節(jié)省 IP硬盤的存儲空間。 【【專利附圖】

【附圖說明】】
[0059] 為了更清楚地說明本發(fā)明實施例的技術(shù)方案,下面將對實施例中所需要使用的附 圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域 普通技術(shù)人員來講,在不付出創(chuàng)造性勞動性的前提下,還可以根據(jù)這些附圖獲得其它的附 圖。
[0060] 圖1是現(xiàn)有技術(shù)中客戶端與IP硬盤的通信示意圖;
[0061] 圖2是本發(fā)明實施例所提供的IP硬盤的數(shù)據(jù)處理方法的流程示意圖;
[0062] 圖3是本發(fā)明實施例中第一布隆過濾器的示意圖;
[0063] 圖4是本發(fā)明實施例中第二布隆過濾器的示意圖;
[0064] 圖5是本發(fā)明實施例中布隆過濾器的計數(shù)器的示意圖;
[0065] 圖6是本發(fā)明實施例所提供的IP硬盤的功能方塊圖;
[0066] 圖7是本發(fā)明實施例所提供的IP硬盤的結(jié)構(gòu)示意圖。 【【具體實施方式】】
[0067] 為了更好的理解本發(fā)明的技術(shù)方案,下面結(jié)合附圖對本發(fā)明實施例進行詳細描 述。
[0068] 應(yīng)當明確,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;?于本發(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其 它實施例,都屬于本發(fā)明保護的范圍。
[0069] 本發(fā)明實施例給出一種IP硬盤的數(shù)據(jù)處理方法,請參考圖2,其為本發(fā)明實施例 所提供的IP硬盤的數(shù)據(jù)處理方法的流程示意圖,如圖所示,該方法包括以下步驟:
[0070] 步驟201,IP硬盤獲得第一數(shù)值Value。
[0071] 具體的,IP硬盤中會存儲大量的Value,然而,這些Value中可能會存在相同的 Value,為了節(jié)省IP硬盤的存儲空間,需要對IP硬盤中的重復(fù)的Value進行刪除,因此IP 硬盤需要找到重復(fù)的Value。例如,IP硬盤可以對最近一個周期內(nèi)存儲的Value遍歷,依次 判斷遍歷到的Value是否與IP硬盤中存儲的其他Value相同;再例如,IP硬盤也可以在每 次接收到的Value時,就判斷IP硬盤中已經(jīng)存儲的Value中是否存在與該接收到的Value 相同的Value。其中,IP硬盤對最近一個周期內(nèi)存儲的Value進行遍歷時,依次將遍歷到的 Value作為第一 Value,或者,IP硬盤將接收到的Value直接作為第一 Value。
[0072] 因此,所述IP硬盤可以依據(jù)所述IP硬盤中預(yù)先存儲的Value,獲得所述第一 Value ;或者,所述IP硬盤也可以依據(jù)客戶端通過以太網(wǎng)口發(fā)送的Value,獲得所述第一 Value。
[0073] 例如,IP硬盤可以依據(jù)所述IP硬盤中預(yù)先存儲的Value,獲得所述第一 Value的 方法可以包括:
[0074] 首先,IP硬盤接收客戶端通過以太網(wǎng)口發(fā)送的Μ個Key以及每個所述Key對應(yīng)的 Value,即IP硬盤可以接收客戶端提供的Μ個Key和Μ個Value, Key與Value是--對應(yīng) 的,其中,Μ為大于或者等于1的整數(shù)。然后,IP硬盤依據(jù)每個Key,獲得每個Key對應(yīng)的 Value的存儲地址;最后,IP硬盤將每個Value寫入IP硬盤中相應(yīng)的存儲地址,這樣IP硬 盤中就寫入Μ個Value,IP硬盤將已經(jīng)存儲的這Μ個Value依次作為所述第一 Value。
[0075] 其中,IP硬盤可以利用數(shù)據(jù)布局算法獲得每個Key對應(yīng)Value的存儲地址,例如, 數(shù)據(jù)布局算法可以是哈希算法。
[0076] 第一種方法相當于上述IP硬盤對最近一個周期內(nèi)存儲的Value進行遍歷,依次將 遍歷到的Value作為第一 Value,也就是說,IP硬盤查找是否存在重復(fù)Value的操作是周期 地進行,IP硬盤可以依據(jù)預(yù)設(shè)的周期,統(tǒng)一對最近一個周期內(nèi)存儲的Μ個Value進行逐一 判斷是否為重復(fù)數(shù)據(jù)。
[0077] 再例如,IP硬盤依據(jù)客戶端通過以太網(wǎng)口發(fā)送的Value,獲得所述第一 Value的方 法可以包括:
[0078] IP硬盤接收客戶端通過以太網(wǎng)口發(fā)送的Key和所述Key對應(yīng)的Value, IP硬盤直 接將接收到的Key對應(yīng)的Value作為所述第一 Value,以判斷IP硬盤已經(jīng)存儲的Value中 是否存在與該第一 Value相同的Value。
[0079] 第二種方法相當于上述IP硬盤直接將接收到的Value作為第一 Value,也就是說, IP硬盤在每次接收到客戶端提供的Key和對應(yīng)的Value時,就即時判斷IP硬盤中存儲的 Value中是否存在與接收到的Value相同的Value。
[0080] 步驟202, IP硬盤獲得所述第一 Value對應(yīng)的第一哈希值。
[0081] 具體的,IP硬盤中預(yù)先設(shè)置第一布隆過濾器(Bloom Filter),該第一布隆過濾器 中包括N個二進制位,N為大于或者等于1的整數(shù);依據(jù)第一布隆過濾器獲得對應(yīng)的K個哈 希算法,K為大于或者等于1的整數(shù)。例如,請參考圖3,其為本發(fā)明實施例中第一布隆過濾 器的示意圖,圖3所示意的第一布隆過濾器中包括6個二進制位,對應(yīng)的哈希算法可以是對 6取模。
[0082] IP硬盤在獲得第一 Value后,依據(jù)該第一 Value,獲得該第一 Value對應(yīng)的K個第 一指紋(Finger Print),然后依據(jù)每個第一指紋,并利用預(yù)設(shè)的第一布隆過濾器對應(yīng)的K 個哈希算法,計算對應(yīng)的第一哈希值,從而可以獲得第一 Value對應(yīng)的K個第一哈希值。
[0083] 優(yōu)選的,可以在將第一 Value寫入對應(yīng)的存儲地址之前,獲得該第一 Value對應(yīng)的 K個第一指紋,也可以在將第一 Value寫入對應(yīng)的存儲地址之后,獲得該第一 Value對應(yīng)的 K個第一指紋。
[0084] 優(yōu)選的,IP硬盤可以依據(jù)第一 Value,利用預(yù)設(shè)的指紋算法計算第一 Value對應(yīng) 的K個第一指紋,每個第一指紋對應(yīng)的指紋算法不同。其中,所述指紋算法可以包括:循 環(huán)冗余校驗碼(Cyclic Redundancy Check, CRC)、消息摘要算法第五版(Message Digest Algorithm_5,MD5)或者安全散列算法-1 (Secure Hash Algorithm-l,SHA_l)等。
[0085] 步驟203, IP硬盤判斷預(yù)設(shè)的第一布隆過濾器中與所述第一哈希值對應(yīng)的二進制 位的數(shù)值是否為1。
[0086] 具體的,IP硬盤中預(yù)先設(shè)置有第一布隆過濾器,IP硬盤可以將存儲的所有Value 對應(yīng)的指紋都映射到第一布隆過濾器的二進制位上,被映射到的二進制位的數(shù)值將由〇設(shè) 置為1,且數(shù)值已經(jīng)為1的二進制位如果再次被映射到,其數(shù)值保持為1 ;如此,當IP硬盤獲 得第一 Value對應(yīng)的K個第一哈希值后,就可以依據(jù)第一 Value對應(yīng)的K個第一哈希值,判 斷第一布隆過濾器中與K個第一哈希值對應(yīng)的K個二進制位的數(shù)值是否已經(jīng)全部是1。
[0087] 例如,如圖3所示,對于Valuel?Value M,分別有對應(yīng)的K個指紋Finger Printl[Valuel ?Value Μ]?Finger Print K[Valuel ?Value M],以及對應(yīng)的 K 個哈希 值 HI{Finger Printl[Valuel ?Value Μ]}?HK{Finger Print K[Valuel ?Value Μ]}, 依據(jù)這些哈希值,IP硬盤將第一布隆過濾器相應(yīng)的二進制位的數(shù)值置為1。
[0088] 如果第一布隆過濾器中與K個第一哈希值對應(yīng)的K個二進制位的數(shù)值已經(jīng)全部 是1,表示第一 Value可能是重復(fù)數(shù)據(jù),IP硬盤中可能已經(jīng)存儲與第一 Value相同的第二 Value ;但是,這里也只能認為第一 Value是可能的重復(fù)數(shù)據(jù),因為第一布隆過濾器中二進 制位的數(shù)目有限,而客戶端提供的Value的數(shù)目較多,從而導致會出現(xiàn)較小的重復(fù)數(shù)據(jù)的 誤判概率,因此,為了降低重復(fù)數(shù)據(jù)的誤判概率,IP硬盤在確定第一布隆過濾器中與K個第 一哈希值對應(yīng)的K個二進制位的數(shù)值已經(jīng)全部是1的情況下,并不直接判定第一 Value是 重復(fù)數(shù)據(jù),而是需要進一步的判斷,才能確定第一 Value是否為重復(fù)數(shù)據(jù),即執(zhí)行步驟204。
[0089] 相反的,如果第一布隆過濾器中與K個第一哈希值對應(yīng)的K個二進制位的數(shù)值不 全部是1,即第一布隆過濾器中與K個第一哈希值對應(yīng)的K個二進制位的數(shù)值存在至少一 個0,則IP硬盤可以直接確定第一 Value不是重復(fù)數(shù)據(jù),IP硬盤中不存在與第一 Value相 同的第二Value。另外,IP硬盤還需要將第一布隆過濾器中與K個第一哈希值對應(yīng)的數(shù)值 為0的二進制位的數(shù)值設(shè)置為1,然后執(zhí)行步驟201,IP硬盤繼續(xù)判斷下一個第一 Value是 否為可能的重復(fù)數(shù)據(jù)。
[0090] 例如,第一 Value對應(yīng)第一指紋等于8,哈希算法是對6取模,利用該哈希算法計 算第一指紋的第一哈希值,則第一哈希值等于2,則可以映射到第一布隆過濾器的6個二進 制位的第2個二進制位,若該第2個二進制位的數(shù)值是0,則將該第2個二進制位的數(shù)值由 〇改為1,若該第2個二進制位的數(shù)值已經(jīng)是1,則該第2個二進制位的數(shù)值保持為1。再例 如,若第一 Value對應(yīng)有3個第一指紋以及3個第一哈希值,依據(jù)3個第一哈希值映射到的 第一布隆過濾器的6個二進制位中第3、4和5個二進制位,若第3、4和5個二進制位的數(shù) 值已經(jīng)全部是1,則執(zhí)行步驟204,若第3、4和5個二進制位的數(shù)值不是全部是1,則執(zhí)行步 驟 201。
[0091] 步驟204,若所述第一布隆過濾器中與所述第一哈希值對應(yīng)的二進制位的數(shù)值為 1,IP硬盤判斷所述第一 Value是否為重復(fù)數(shù)據(jù)。
[0092] 具體的,當所述第一布隆過濾器中與所述第一哈希值對應(yīng)的二進制位的數(shù)值為1 時,表示第一 Value可能是重復(fù)數(shù)據(jù),為了降低IP硬盤對重復(fù)數(shù)據(jù)的誤判概率,需要進一步 判斷第一 Value是否為重復(fù)數(shù)據(jù),即判斷IP硬盤中是否存在與所述第一 Value相同的第二 Value。
[0093] 可以理解的,假設(shè)兩個Value在第一布隆過濾器中映射的二進制位完全相同的概 率是P,P較小,如P可以為〇. 1%,為了能夠進一步降低P,可以通過在IP硬盤的第一布隆 過濾器的基礎(chǔ)上,增加第一布隆過濾器的二進制位的數(shù)目來進一步降低P,或者,也可以在 IP硬盤中另外再設(shè)置一個布隆過濾器,可以將新設(shè)置的布隆過濾器稱為第二布隆過濾器。
[0094] IP硬盤中存儲有P個第二Value,P為大于或者等于1的整數(shù),其中,若硬盤是周 期判斷是否有重復(fù)數(shù)據(jù)的操作,該第二Value中可以包括除遍歷到的第一 Value外的其他 第一 Value,若IP硬盤是每次對收到的第一 Value進行判斷重復(fù)數(shù)據(jù)的操作,該第二Value 可以是IP硬盤中已經(jīng)存儲的所有Value。
[0095] 優(yōu)選的,IP硬盤判斷所述第一 Value是否為重復(fù)數(shù)據(jù)的方法可以包括以下兩種:
[0096] 第一種:首先,IP硬盤獲得所述第一 Value對應(yīng)的K個第一指紋以及P個第二 Value中每個第二Value對應(yīng)的K第二指紋,從而可以獲得P*K個第二指紋。
[0097] 然后,IP硬盤利用與第二布隆過濾器對應(yīng)的哈希算法,獲得每個第一指紋對應(yīng)的 第二哈希值和每個第二指紋對應(yīng)的第三哈希值,優(yōu)選的,第二布隆過濾器的二進制位的數(shù) 目大于所述第一布隆過濾器的二進制位的數(shù)目,即本方法中,僅通過增加布隆過濾器的二 進制位的數(shù)目來降低重復(fù)數(shù)據(jù)的誤判概率。
[0098] 接著,IP硬盤將所述第二布隆過濾器中每個所述第三哈希值對應(yīng)的二進制位的數(shù) 值置為1,以獲得第三布隆過濾器。
[0099] 最后,IP硬盤依據(jù)第二哈希值,獲得所述第三布隆過濾器中所述第二哈希值對應(yīng) 的二進制位,若所述第三布隆過濾器中,所述第二哈希值對應(yīng)的二進制位的數(shù)值已經(jīng)全部 為1,則IP硬盤確定所述第一 Value為重復(fù)數(shù)據(jù)。
[0100] 第二種:首先,IP硬盤獲得所述第一 Value對應(yīng)的第三指紋以及每個所述第二 Value對應(yīng)的第四指紋;并將所述第三指紋和每個所述第四指紋分別拆分成R個第五指紋 和R個第六指紋;其中,R = 2η,η為大于或者等于1的整數(shù)。
[0101] 然后,IP硬盤利用與預(yù)設(shè)的第二布隆過濾器對應(yīng)的哈希算法,獲得所述R個第五 指紋對應(yīng)的R個第四哈希值,以及每個第六指紋對應(yīng)的R個第五哈希值。優(yōu)選的,本方法中, 第二布隆過濾器的二進制位的數(shù)目是第一布隆過濾器的二進制位的數(shù)目的R倍。
[0102] 接著,IP硬盤將所述第二布隆過濾器中每個所述第五哈希值對應(yīng)的二進制位的數(shù) 值置為1,以獲得第三布隆過濾器。
[0103] 最后,IP硬盤依據(jù)R個第四哈希值,確定第三布隆過濾器中R個所述第四哈希值 對應(yīng)的二進制位,若第三布隆過濾器中,R個第四哈希值對應(yīng)的二進制位的數(shù)值已經(jīng)全部為 1,則IP硬盤確定所述第一 Value為重復(fù)數(shù)據(jù)。
[0104] 例如,請參考圖4,其為本發(fā)明實施例中第二布隆過濾器的示意圖,如圖所示,將圖 3中的K個指紋中每個指紋都拆分成2個指紋,得到2K個指紋,可以利用2K個不同的散列 函數(shù)計算該2K個指紋,然后再利用2K個哈希算法計算這些指紋對應(yīng)的哈希值,依據(jù)計算得 到的哈希值,將第二布隆過濾器中12個二進制位中相應(yīng)的二進制位的數(shù)值置為1。
[0105] 再例如,第一 Value對應(yīng)的第三指紋A1以及第二Value對應(yīng)的第四指紋A2,將第 三指紋A1拆分成2個第五指紋,即All和A12,將第四指紋A2拆分成2個第六指紋,即A21 和A22,然后利用第二布隆過濾器對應(yīng)的哈希算法,獲得A11、A12、A21和A22分別對應(yīng)的哈 希值,第二布隆過濾器中All和A12對應(yīng)的二進制位與A21和A22對應(yīng)的二進制位完全相 同的概率會呈指數(shù)級降低,如果第二布隆過濾器中Al 1和A12對應(yīng)的二進制位與A21和A22 對應(yīng)的二進制位還是完全相同,IP硬盤就可以確定第一 Value與第二Value是相同,第一 Value是重復(fù)數(shù)據(jù)。
[0106] 再例如,如果指紋都是8字節(jié),可以將指紋以4字節(jié)、2字節(jié)或1字節(jié)為單位進行拆 分,對應(yīng)的布隆過濾器的二進制位的數(shù)目分別是2R、4R、8R,其中R為大于或者等于1的整 數(shù),拆分單位越小,重復(fù)數(shù)據(jù)的誤判概率越低,布隆過濾器的二進制位的數(shù)目越多,重復(fù)數(shù) 據(jù)的誤判概率也是越低。
[0107] 需要說明的是,上述IP硬盤判斷所述第一 Value是否為重復(fù)數(shù)據(jù)的兩種方法,全 局指紋匹配會將輸入的指紋與已有的指紋中每個指紋逐個比對,若已有的指紋總數(shù)為S,則 平均比對次數(shù)為S/2。如果利用布隆過濾器,對于非重復(fù)指紋,可通過布隆過濾器對應(yīng)的哈 希算法實現(xiàn)指紋對比,可以迅速比對出重復(fù)的指紋,不用與已有的S個指紋進行一一對比, 從可以減少全局指紋匹配次數(shù)。
[0108] 步驟205,若所述第一 Value為重復(fù)數(shù)據(jù),IP硬盤對所述第一 Value執(zhí)行重復(fù)數(shù)據(jù) 的刪除操作。
[0109] 具體的,當判定第一 Value為重復(fù)數(shù)據(jù)時,IP硬盤可以對所述第一 Value執(zhí)行重 復(fù)數(shù)據(jù)的刪除操作。
[0110] 優(yōu)選的,IP硬盤對所述第一 Value執(zhí)行重復(fù)數(shù)據(jù)的刪除操作的方法包括以下兩 種:
[0111] 第一種:首先,刪除所述IP硬盤中所述第一 Value的存儲地址中存儲的所述第一 Value。然后,獲得與所述第一 Value相同的第二Value對應(yīng)的Key。最后,在所述IP硬盤 中所述第一 Value的存儲地址中寫入所述第二Value對應(yīng)的Key。也就是說,如果步驟201 利用第一種方法實現(xiàn),表示第一 Value已經(jīng)存儲在對應(yīng)的存儲地址中,那么對于是重復(fù)數(shù) 據(jù)的第一 Value需要先執(zhí)行刪除操作,再在第一 Value的存儲地址中寫入與第一 Value相 同的第二Value對應(yīng)的Key。
[0112] 例如,可以在IP硬盤中預(yù)先建立指紋索引〈指紋,Value,Key列表〉,如果發(fā)現(xiàn) Valuel是重復(fù)數(shù)據(jù),則對指紋索引進行遍歷,需要找到與Valuel相同的其他Value,并且該 其他Value對應(yīng)的指紋需要與Valuel對應(yīng)的指紋也相同,如果能夠找到,則將Valuel對應(yīng) 的Key保存在指紋索引〈指紋,Value,Key列表〉的Key列表中。
[0113] 第二種:首先,獲得與所述第一 Value相同的第二Value對應(yīng)的Key ;在所述IP硬 盤中所述第一 Value在的存儲地址中寫入所述第二Value對應(yīng)的Key。如果步驟201利用 第二種方法實現(xiàn),表示第一 Value是新接收到的Value,對于是重復(fù)數(shù)據(jù)的第一 Value不需 要進行存儲,直接丟棄該第一 Value,同時在第一 Value的存儲地址中寫入與第一 Value相 同的第二Value對應(yīng)的Key。
[0114] 可以理解的,由于第一 Value與第二Value相同,因此沒有必要重復(fù)保存相同的數(shù) 據(jù),為了節(jié)省IP硬盤的存儲空間,可以將第一 Value的存儲地址中存儲第二Value的Key, 這樣,當客戶端想要讀取該第一 Value時,IP硬盤依據(jù)客戶端提供的第一 Value的Key找 到第一 Value的存儲地址,然后在該存儲地址讀取到Key,依據(jù)該Key找到第二Value的存 儲地址,從而獲得第二Value,并將第二Value返回給客戶端,第一 Value的存儲地址中寫入 的Key起到指針作用。
[0115] 實施例
[0116] IP硬盤接收客戶端輸入的Key 1和對應(yīng)的Valuel,然后依據(jù)Valuel計算對應(yīng)的指 紋,如指紋1 =指紋算法(Valuel)。
[0117] IP硬盤依據(jù)指紋1,利用K個哈希算法計算指紋1的K個哈希值,依據(jù)K個哈希值, 將指紋1映射到布隆過濾器的二進制位上,被映射到得二進制位的數(shù)值由〇設(shè)置為1。
[0118] 另外,數(shù)值已經(jīng)為1的二進制位如果再次被映射到,其數(shù)值保持為1,但該二進制 位對應(yīng)的計數(shù)器的數(shù)值為2,請參考圖5,其為本發(fā)明實施例中布隆過濾器的計數(shù)器的示意 圖,如圖所示,計數(shù)器的數(shù)值表示該二進制位被映射到的次數(shù),需要刪除某指紋時,將對應(yīng) 的二進制位的計數(shù)器的數(shù)值減去該指紋映射到該二進制位的次數(shù)。
[0119] IP硬盤保存(指紋l、Valuel、計數(shù)器1),計數(shù)器1的數(shù)值表示(指紋l、Valuel) 被重復(fù)使用的次數(shù),當前計數(shù)器1的數(shù)值為1 ;如果計數(shù)值由1變?yōu)椹?則可以將該指紋與對 應(yīng)的Value刪除,同時在布隆過濾器中該指紋對應(yīng)的二進制位的計數(shù)值也相應(yīng)減少。
[0120] IP硬盤保存(Key 1、Value 1在IP硬盤的存儲地址)。
[0121] IP硬盤接收客戶端輸入的Key和對應(yīng)的Value2,然后依據(jù)Value2計算對應(yīng)的指 紋,如指紋2 =指紋算法(Value2)。
[0122] IP硬盤依據(jù)指紋2,利用K個哈希算法計算指紋2的K個哈希值,依據(jù)K個哈希值, 將指紋2映射到布隆過濾器的二進制位上,被映射到得二進制位的數(shù)值由0設(shè)置為1。
[0123] 如果指紋2映射到得二進制位已經(jīng)全部是1,表示Value2可能是重復(fù)數(shù)據(jù),則IP 硬盤將(指紋2、Value2)與已經(jīng)存入的(指紋l、Valuel)進行比較,如果比較結(jié)果是Value2 是重復(fù)數(shù)據(jù),則IP硬盤保存(Key2、Valuel在IP硬盤的存儲地址),同時,IP硬盤中保存 的(指紋1、Valuel、計數(shù)值1)中的計數(shù)值加1,表示被重復(fù)使用了 2次。如果比較結(jié)果是 Value2不是重復(fù)數(shù)據(jù),執(zhí)行非重復(fù)數(shù)據(jù)的處理流程,如將布隆過濾器中相應(yīng)的二進制位的 值置為1,且被映射到的二進制位的計數(shù)器的數(shù)值加1,然后保存(指紋2、Value2、計數(shù)器 2),計數(shù)器2表示(指紋2、Value2)被重復(fù)使用的次數(shù),當前計數(shù)器2的數(shù)值為1,最后IP 硬盤保存將(Key2、Value2在IP硬盤的存儲地址)。
[0124] 本發(fā)明實施例進一步給出實現(xiàn)上述方法實施例中各步驟及方法的裝置實施例。
[0125] 請參考圖6,其為本發(fā)明實施例所提供的IP硬盤的功能方塊圖,所述IP硬盤中預(yù) 設(shè)有第一布隆過濾器;如圖所示,該IP硬盤包括:
[0126] 獲取單元601,用于獲得第一數(shù)值Value ;以及獲得所述第一 Value對應(yīng)的第一哈 希值;
[0127] 處理單元602,用于判斷所述第一布隆過濾器中與所述獲取單元501獲得的所述 第一哈希值對應(yīng)的二進制位的數(shù)值是否為1 ;若所述第一布隆過濾器中與所述第一哈希值 對應(yīng)的二進制位的數(shù)值為1,判斷所述第一 Value是否為重復(fù)數(shù)據(jù);
[0128] 執(zhí)行單元603,用于若所述處理單元602判定所述第一 Value為重復(fù)數(shù)據(jù),對所述 第一 Value執(zhí)行重復(fù)數(shù)據(jù)的刪除操作。
[0129] 優(yōu)選的,所述獲取單元601具體用于:
[0130] 依據(jù)所述IP硬盤中預(yù)先存儲的Value,獲得所述第一 Value ;或者,
[0131] 依據(jù)客戶端通過以太網(wǎng)口發(fā)送的Value,獲得所述第一 Value。
[0132] 優(yōu)選的,所述IP硬盤中預(yù)設(shè)有第二布隆過濾器;所述IP硬盤存儲有P個第二 Value,P為大于或者等于1的整數(shù),所述處理單元602具體用于:
[0133] 獲得所述第一 Value對應(yīng)的第一指紋和每個所述第二Value對應(yīng)的第二指紋;
[0134] 利用與所述第二布隆過濾器對應(yīng)的哈希算法,獲得所述第一指紋對應(yīng)的第二哈希 值和每個所述第二指紋對應(yīng)的第三哈希值,所述第二布隆過濾器的二進制位的數(shù)目大于所 述第一布隆過濾器的二進制位的數(shù)目;
[0135] 將所述第二布隆過濾器中每個所述第三哈希值對應(yīng)的二進制位的數(shù)值置為1,以 獲得第三布隆過濾器;
[0136] 獲得所述第三布隆過濾器中所述第二哈希值對應(yīng)的二進制位,若所述第三布隆過 濾器中所述第二哈希值對應(yīng)的二進制位的數(shù)值全部為1,確定所述第一 Value為重復(fù)數(shù)據(jù)。
[0137] 優(yōu)選的,所述IP硬盤中預(yù)設(shè)有第二布隆過濾器;所述IP硬盤存儲有P個第二 Value,P為大于或者等于1的整數(shù),所述處理單元602具體用于:
[0138] 獲得所述第一 Value對應(yīng)的第三指紋和每個所述第二Value對應(yīng)的第四指紋;
[0139] 將所述第三指紋和每個所述第四指紋分別拆分成R個第五指紋和R個第六指紋, R = 2η, η為大于或者等于1的整數(shù);
[0140] 利用與所述第二布隆過濾器對應(yīng)的哈希算法,獲得所述R個第五指紋對應(yīng)的R個 第四哈希值和每個第六指紋對應(yīng)的R個第五哈希值;所述第二布隆過濾器的二進制位的數(shù) 目是所述第一布隆過濾器的二進制位的數(shù)目的R倍;
[0141] 將所述第二布隆過濾器中每個所述第五哈希值對應(yīng)的二進制位的數(shù)值置為1,以 獲得第三布隆過濾器;
[0142] 獲得所述第三布隆過濾器中R個所述第四哈希值對應(yīng)的二進制位,若所述第三布 隆過濾器中R個所述第四哈希值對應(yīng)的二進制位的數(shù)值全部為1,確定所述第一 Value為重 復(fù)數(shù)據(jù)。
[0143] 優(yōu)選的,所述執(zhí)行單元603具體用于:
[0144] 刪除所述IP硬盤中所述第一 Value的存儲地址中存儲的所述第一 Value ;
[0145] 獲得與所述第一 Value相同的第二Value對應(yīng)的Key ;
[0146] 在所述IP硬盤中所述第一 Value的存儲地址中寫入所述第二Value對應(yīng)的Key。
[0147] 優(yōu)選的,所述執(zhí)行單元603具體用于:
[0148] 獲得與所述第一 Value相同的第二Value對應(yīng)的Key ;
[0149] 在所述IP硬盤中所述第一 Value在的存儲地址中寫入所述第二Value對應(yīng)的 Key。
[0150] 請參考圖7,其為本發(fā)明實施例所提供的IP硬盤的結(jié)構(gòu)示意圖。如圖所示,該IP 硬盤包括:
[0151] 存儲器701,用于存儲一組或多組程序代碼;
[0152] 處理器702,與存儲器701耦合,用于調(diào)用存儲器701中存儲的程序代碼,以執(zhí)行 以下圖2所示的方法,具體包括:獲得第一數(shù)值Value ;以及獲得所述第一 Value對應(yīng)的第 一哈希值;判斷所述第一布隆過濾器中與所述第一哈希值對應(yīng)的二進制位的數(shù)值是否為 1 ;若所述第一布隆過濾器中與所述第一哈希值對應(yīng)的二進制位的數(shù)值為1,判斷所述第一 Value是否為重復(fù)數(shù)據(jù);若所述第一 Value為重復(fù)數(shù)據(jù),對所述第一 Value執(zhí)行重復(fù)數(shù)據(jù)的 刪除操作。
[0153] 由于本實施例中的處理器能夠執(zhí)行圖2所示的方法,本實施例未詳細描述的部 分,可參考對圖2的相關(guān)說明。
[0154] 本發(fā)明實施例的技術(shù)方案具有以下有益效果:
[0155] 1、IP硬盤能夠利用布隆過濾器判斷Value是否屬于重復(fù)數(shù)據(jù),并在判定Value為 重復(fù)數(shù)據(jù)時對Value執(zhí)行刪除操作,因此,IP硬盤可以自行主動刪除重復(fù)數(shù)據(jù),從而可以節(jié) 省IP硬盤的存儲空間。
[0156] 2、傳統(tǒng)技術(shù)中,由與硬盤連接的主機對硬盤中重復(fù)數(shù)據(jù)的進行判斷、刪除等操作, 或者由重刪服務(wù)器統(tǒng)一對若干硬盤進行重復(fù)數(shù)據(jù)的判斷、刪除等操作,重復(fù)數(shù)據(jù)的刪除操 作過渡集中于主機或者重刪服務(wù)器,處理效率比較低,存在處理瓶頸;本發(fā)明實施例提供的 技術(shù)方案中,由IP硬盤自己進行重復(fù)數(shù)據(jù)的判定、刪除等操作,實現(xiàn)分布式的重復(fù)數(shù)據(jù)的 處理,能夠及時進行重復(fù)數(shù)據(jù)的刪除,大大提高處理效率,提高IP硬盤性能和硬盤可靠性。
[0157] 3、本發(fā)明實施例中,IP硬盤對Value進行重復(fù)數(shù)據(jù)的多重判斷操作,能夠降低重 復(fù)數(shù)據(jù)的誤判概率,減少IP硬盤的誤刪除事件。
[0158] 以上所述僅為本發(fā)明的較佳實施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精 神和原則之內(nèi),所做的任何修改、等同替換、改進等,均應(yīng)包含在本發(fā)明保護的范圍之內(nèi)。
【權(quán)利要求】
1. 一種網(wǎng)絡(luò)互連協(xié)議IP硬盤的數(shù)據(jù)處理方法,其特征在于,所述IP硬盤中預(yù)設(shè)有第一 布隆過濾器;所述方法包括 : 所述IP硬盤獲得第一數(shù)值Value ; 所述IP硬盤獲得所述第一 Value對應(yīng)的第一哈希值; 所述IP硬盤判斷所述第一布隆過濾器中與所述第一哈希值對應(yīng)的二進制位的數(shù)值是 否為1 ; 若所述第一布隆過濾器中與所述第一哈希值對應(yīng)的二進制位的數(shù)值為1,所述IP硬盤 判斷所述第一 Value是否為重復(fù)數(shù)據(jù); 若所述第一 Value為重復(fù)數(shù)據(jù),所述IP硬盤對所述第一 Value執(zhí)行重復(fù)數(shù)據(jù)的刪除操 作。
2. 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述IP硬盤獲得第一 Value,包括: 所述IP硬盤依據(jù)所述IP硬盤中預(yù)先存儲的Value,獲得所述第一 Value ;或者, 所述IP硬盤依據(jù)客戶端通過以太網(wǎng)口發(fā)送的Value,獲得所述第一 Value。
3. 根據(jù)權(quán)利要求1或2所述的方法,其特征在于,所述IP硬盤中預(yù)設(shè)有第二布隆過濾 器;所述IP硬盤存儲有P個第二Value,P為大于或者等于1的整數(shù),所述IP硬盤判斷所述 第一 Value是否為重復(fù)數(shù)據(jù),包括: 所述IP硬盤獲得所述第一 Value對應(yīng)的第一指紋和每個所述第二Value對應(yīng)的第二 指紋; 所述IP硬盤利用與所述第二布隆過濾器對應(yīng)的哈希算法,獲得所述第一指紋對應(yīng)的 第二哈希值和每個所述第二指紋對應(yīng)的第三哈希值,所述第二布隆過濾器的二進制位的數(shù) 目大于所述第一布隆過濾器的二進制位的數(shù)目; 所述IP硬盤將所述第二布隆過濾器中每個所述第三哈希值對應(yīng)的二進制位的數(shù)值置 為1,以獲得第三布隆過濾器; 所述IP硬盤獲得所述第三布隆過濾器中所述第二哈希值對應(yīng)的二進制位,若所述第 三布隆過濾器中所述第二哈希值對應(yīng)的二進制位的數(shù)值全部為1,確定所述第一 Value為 重復(fù)數(shù)據(jù)。
4. 根據(jù)權(quán)利要求1或2所述的方法,其特征在于,所述IP硬盤中預(yù)設(shè)有第二布隆過濾 器;所述IP硬盤存儲有P個第二Value,P為大于或者等于1的整數(shù),所述IP硬盤判斷所述 第一 Value是否為重復(fù)數(shù)據(jù),包括: 所述IP硬盤獲得所述第一 Value對應(yīng)的第三指紋和每個所述第二Value對應(yīng)的第四 指紋; 所述IP硬盤將所述第三指紋和每個所述第四指紋分別拆分成R個第五指紋和R個第 六指紋,R = 2η,η為大于或者等于1的整數(shù); 所述IP硬盤利用與所述第二布隆過濾器對應(yīng)的哈希算法,獲得所述R個第五指紋對應(yīng) 的R個第四哈希值和每個第六指紋對應(yīng)的R個第五哈希值;所述第二布隆過濾器的二進制 位的數(shù)目是所述第一布隆過濾器的二進制位的數(shù)目的R倍; 所述IP硬盤將所述第二布隆過濾器中每個所述第五哈希值對應(yīng)的二進制位的數(shù)值置 為1,以獲得第三布隆過濾器; 所述IP硬盤獲得所述第三布隆過濾器中R個所述第四哈希值對應(yīng)的二進制位,若所 述第三布隆過濾器中R個所述第四哈希值對應(yīng)的二進制位的數(shù)值全部為1,確定所述第一 Value為重復(fù)數(shù)據(jù)。
5. 根據(jù)權(quán)利要求2所述的方法,其特征在于,所述IP硬盤對所述第一 Value執(zhí)行重復(fù) 數(shù)據(jù)的刪除操作,包括: IP硬盤刪除所述IP硬盤中所述第一 Value的存儲地址中存儲的所述第一 Value ; IP硬盤獲得與所述第一 Value相同的第二Value對應(yīng)的Key ; IP硬盤在所述IP硬盤中所述第一 Value的存儲地址中寫入所述第二Value對應(yīng)的 Key。
6. 根據(jù)權(quán)利要求2所述的方法,其特征在于,所述IP硬盤對所述第一 Value執(zhí)行重復(fù) 數(shù)據(jù)的刪除操作,包括: IP硬盤獲得與所述第一 Value相同的第二Value對應(yīng)的Key ; IP硬盤在所述IP硬盤中所述第一 Value在的存儲地址中寫入所述第二Value對應(yīng)的 Key。
7. -種IP硬盤,其特征在于,所述IP硬盤中預(yù)設(shè)有第一布隆過濾器;所述IP硬盤包 括: 獲取單元,用于獲得第一數(shù)值Value ;以及獲得所述第一 Value對應(yīng)的第一哈希值; 處理單元,用于判斷所述第一布隆過濾器中與所述獲取單元獲得的所述第一哈希值對 應(yīng)的二進制位的數(shù)值是否為1 ;若所述第一布隆過濾器中與所述第一哈希值對應(yīng)的二進制 位的數(shù)值為1,判斷所述第一 Value是否為重復(fù)數(shù)據(jù); 執(zhí)行單元,用于若所述處理單元判定所述第一 Value為重復(fù)數(shù)據(jù),對所述第一 Value執(zhí) 行重復(fù)數(shù)據(jù)的刪除操作。
8. 根據(jù)權(quán)利要求7所述的IP硬盤,其特征在于,所述獲取單元具體用于: 依據(jù)所述IP硬盤中預(yù)先存儲的Value,獲得所述第一 Value ;或者, 依據(jù)客戶端通過以太網(wǎng)口發(fā)送的Value,獲得所述第一 Value。
9. 根據(jù)權(quán)利要求7或8所述的IP硬盤,其特征在于,所述IP硬盤中預(yù)設(shè)有第二布隆過 濾器;所述IP硬盤存儲有P個第二Value,P為大于或者等于1的整數(shù),所述處理單元具體 用于: 獲得所述第一 Value對應(yīng)的第一指紋和每個所述第二Value對應(yīng)的第二指紋; 利用與所述第二布隆過濾器對應(yīng)的哈希算法,獲得所述第一指紋對應(yīng)的第二哈希值和 每個所述第二指紋對應(yīng)的第三哈希值,所述第二布隆過濾器的二進制位的數(shù)目大于所述第 一布隆過濾器的二進制位的數(shù)目; 將所述第二布隆過濾器中每個所述第三哈希值對應(yīng)的二進制位的數(shù)值置為1,以獲得 第三布隆過濾器; 獲得所述第三布隆過濾器中所述第二哈希值對應(yīng)的二進制位,若所述第三布隆過濾器 中所述第二哈希值對應(yīng)的二進制位的數(shù)值全部為1,確定所述第一 Value為重復(fù)數(shù)據(jù)。
10. 根據(jù)權(quán)利要求7至8所述的IP硬盤,其特征在于,所述IP硬盤中預(yù)設(shè)有第二布隆 過濾器;所述IP硬盤存儲有P個第二Value,P為大于或者等于1的整數(shù),所述處理單元具 體用于: 獲得所述第一 Value對應(yīng)的第三指紋和每個所述第二Value對應(yīng)的第四指紋; 將所述第三指紋和每個所述第四指紋分別拆分成R個第五指紋和R個第六指紋,R = 2η,η為大于或者等于1的整數(shù); 利用與所述第二布隆過濾器對應(yīng)的哈希算法,獲得所述R個第五指紋對應(yīng)的R個第四 哈希值和每個第六指紋對應(yīng)的R個第五哈希值;所述第二布隆過濾器的二進制位的數(shù)目是 所述第一布隆過濾器的二進制位的數(shù)目的R倍; 將所述第二布隆過濾器中每個所述第五哈希值對應(yīng)的二進制位的數(shù)值置為1,以獲得 第三布隆過濾器; 獲得所述第三布隆過濾器中R個所述第四哈希值對應(yīng)的二進制位,若所述第三布隆過 濾器中R個所述第四哈希值對應(yīng)的二進制位的數(shù)值全部為1,確定所述第一 Value為重復(fù)數(shù) 據(jù)。
11. 根據(jù)權(quán)利要求8所述的IP硬盤,其特征在于,所述執(zhí)行單元具體用于: 刪除所述IP硬盤中所述第一 Value的存儲地址中存儲的所述第一 Value ; 獲得與所述第一 Value相同的第二Value對應(yīng)的Key ; 在所述IP硬盤中所述第一 Value的存儲地址中寫入所述第二Value對應(yīng)的Key。
12. 根據(jù)權(quán)利要求8所述的IP硬盤,其特征在于,所述執(zhí)行單元具體用于: 獲得與所述第一 Value相同的第二Value對應(yīng)的Key ; 在所述IP硬盤中所述第一 Value在的存儲地址中寫入所述第二Value對應(yīng)的Key。
【文檔編號】G06F3/06GK104123102SQ201410362354
【公開日】2014年10月29日 申請日期:2014年7月25日 優(yōu)先權(quán)日:2014年7月25日
【發(fā)明者】雷曉松 申請人:華為技術(shù)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
主站蜘蛛池模板: 桑日县| 靖州| 瑞金市| 武威市| 铜梁县| 江阴市| 青阳县| 攀枝花市| 行唐县| 鄱阳县| 新乐市| 临沭县| 元朗区| 皮山县| 郑州市| 辽中县| 乐业县| 会同县| 潜山县| 布尔津县| 屏山县| 盐边县| 大连市| 龙海市| 皋兰县| 鄂温| 台北市| 阿尔山市| 阿勒泰市| 涿鹿县| 横山县| 开化县| 通城县| 中江县| 突泉县| 吉首市| 凉城县| 盐津县| 新蔡县| 当阳市| 昆山市|