一種提高重復(fù)數(shù)據(jù)刪除備份系統(tǒng)恢復(fù)性能的數(shù)據(jù)布局方法
【專利摘要】本發(fā)明提出一種基于數(shù)據(jù)塊存儲地址的數(shù)據(jù)布局方法,用于提高重復(fù)數(shù)據(jù)刪除備份系統(tǒng)的恢復(fù)性能。該方法充分考慮每個數(shù)據(jù)塊的具體存儲位置,并結(jié)合磁盤的帶寬和尋道時間,在備份時計算數(shù)據(jù)的恢復(fù)速度,若恢復(fù)速度滿足用戶需求,則認(rèn)為對應(yīng)的數(shù)據(jù)不是數(shù)據(jù)碎片,反之則是數(shù)據(jù)碎片。與已有方法不同的是,該方法是一種基于數(shù)據(jù)塊存儲地址的數(shù)據(jù)布局方法,碎片識別時使用更加細(xì)粒度的碎片識別方式,能精確定位每一個碎片。通過這種方法,可以獲得比其他方法更高的重刪率和數(shù)據(jù)恢復(fù)性能。
【專利說明】
-種提高重復(fù)數(shù)據(jù)刪除備份系統(tǒng)恢復(fù)性能的數(shù)據(jù)布局方法
技術(shù)領(lǐng)域
[0001] 本發(fā)明屬于計算機(jī)信息存儲技術(shù)領(lǐng)域,設(shè)及一種提高重復(fù)數(shù)據(jù)刪除備份系統(tǒng)恢復(fù) 性能的,基于數(shù)據(jù)塊存儲地址的數(shù)據(jù)布局方法。
【背景技術(shù)】
[0002] 隨著信息時代的來臨,數(shù)據(jù)呈現(xiàn)爆炸式地增長,IDC預(yù)測到2020年將會產(chǎn)生44ZB的 數(shù)據(jù)。備份系統(tǒng)需要存儲的備份數(shù)據(jù)越來越多,如何利用有限的存儲資源,高效地存儲PB級 甚至邸級的數(shù)據(jù)是亟待解決的問題。重復(fù)數(shù)據(jù)刪除技術(shù)是一種通過大規(guī)模消除冗余數(shù)據(jù), 降低數(shù)據(jù)存儲成本的重要技術(shù)。重復(fù)數(shù)據(jù)刪除技術(shù)常用于數(shù)據(jù)備份系統(tǒng)中,用來刪除備份 系統(tǒng)中重復(fù)存儲的數(shù)據(jù)塊,W節(jié)約存儲空間。不過,該技術(shù)雖然能夠節(jié)約存儲成本,但其在 重復(fù)數(shù)據(jù)塊被刪除之后,邏輯上連續(xù)的數(shù)據(jù)塊在物理空間上被分散存儲,導(dǎo)致在恢復(fù)數(shù)據(jù) 的過程中需要大量的數(shù)據(jù)塊隨機(jī)讀取操作和磁盤尋道操作,使恢復(fù)性能嚴(yán)重降低。例如,在 重復(fù)數(shù)據(jù)塊被刪除之后,組成一個文件的N個連續(xù)的數(shù)據(jù)塊很可能存儲在N個不同的地方, 數(shù)據(jù)恢復(fù)時讀取運(yùn)個文件需要腳欠的磁盤隨機(jī)讀取操作,導(dǎo)致該文件的讀取性能非常低。運(yùn) 些在邏輯上連續(xù)但物理空間上不連續(xù)的數(shù)據(jù)塊被稱為數(shù)據(jù)碎片,數(shù)據(jù)碎片是導(dǎo)致數(shù)據(jù)恢復(fù) 性能嚴(yán)重降低的最主要的原因。
[0003] 解決碎片的主要思想是改變數(shù)據(jù)的布局,具體方法是重寫適量的碎片數(shù)據(jù),使大 部分邏輯上連續(xù)的數(shù)據(jù)塊在物理存儲空間上也連續(xù),從而減少碎片的數(shù)量。W犧牲少量存 儲空間為代價,換取恢復(fù)性能的提升。目前,主流識別碎片的方法是W固定大小的連續(xù)物理 空間為基本識別單位(容器),碎片識別程序檢測每個容器內(nèi)的有效數(shù)據(jù)量,即恢復(fù)或讀取 某個數(shù)據(jù)對象(數(shù)據(jù)對象可W指一個備份文件或一個備份數(shù)據(jù)流)時需要從該容器中讀取 的數(shù)據(jù)量,若該容器內(nèi)的有效數(shù)據(jù)量達(dá)到一定的闊值,則認(rèn)為在此次數(shù)據(jù)讀取或恢復(fù)過程 中,該容器內(nèi)的有效數(shù)據(jù)不是數(shù)據(jù)碎片,反之是則被認(rèn)定為數(shù)據(jù)碎片,例如帽子算法(CAP, the ca郵ing algorithm)和基于上下文重寫算法(CBR,The Context-Based Rewriting algorithm)等。雖然通過重寫該類碎片能夠在一定程度上提升數(shù)據(jù)恢復(fù)性能,但是運(yùn)種碎 片識別方法只關(guān)注容器中有效數(shù)據(jù)塊的總量,不考慮每個有效數(shù)據(jù)塊的具體存儲地址,無 法精確定位數(shù)據(jù)碎片,導(dǎo)致重寫過多的數(shù)據(jù),并且恢復(fù)性能得不到有效的提升。
[0004] 針對已有解決方案存在的問題,我們提出一種全新的用于提高重復(fù)數(shù)據(jù)刪除備份 系統(tǒng)恢復(fù)性能的數(shù)據(jù)布局方法。該方法充分考慮每個數(shù)據(jù)塊的具體存儲位置,并結(jié)合磁盤 的帶寬和尋道時間,在備份時計算數(shù)據(jù)的恢復(fù)速度,若恢復(fù)速度滿足用戶需求,則認(rèn)為對應(yīng) 的數(shù)據(jù)不是數(shù)據(jù)碎片,反之則是數(shù)據(jù)碎片。與已有方法不同的是,該方法是一種基于數(shù)據(jù)塊 存儲地址的數(shù)據(jù)布局方法,碎片識別時使用更加細(xì)粒度的碎片識別方式,不再使用固定大 小的容器,不再忽視容器內(nèi)部數(shù)據(jù)塊的數(shù)據(jù)布局,精確定位每一個碎片。通過運(yùn)種方法,可 W獲得比其他方法更高的重刪率和數(shù)據(jù)恢復(fù)性能。
【發(fā)明內(nèi)容】
[0005] 本發(fā)明提出一種基于數(shù)據(jù)塊存儲地址的數(shù)據(jù)布局方法,用于提高重復(fù)數(shù)據(jù)刪除備 份系統(tǒng)的恢復(fù)性能。該方法充分考慮每個數(shù)據(jù)塊的具體存儲位置,并結(jié)合磁盤的帶寬和尋 道時間,在備份時計算數(shù)據(jù)的恢復(fù)速度,若恢復(fù)速度滿足用戶需求,則認(rèn)為對應(yīng)的數(shù)據(jù)不是 數(shù)據(jù)碎片,反之則是數(shù)據(jù)碎片。與已有方法不同的是,該方法是一種基于數(shù)據(jù)塊存儲地址的 數(shù)據(jù)布局方法,碎片識別時使用更加細(xì)粒度的碎片識別方式,能精確定位每一個碎片。通過 運(yùn)種方法,可W獲得比其他方法更高的重刪率和數(shù)據(jù)恢復(fù)性能。
[0006] 本發(fā)明的核屯、思想之一是數(shù)據(jù)碎片識別。碎片識別的基本單位為數(shù)據(jù)組。每個數(shù) 據(jù)組由一定量的存儲地址相鄰的數(shù)據(jù)塊組成。若在一個組中,恢復(fù)或讀取某個數(shù)據(jù)集對象 (數(shù)據(jù)對象可W指一個備份文件或一個備份數(shù)據(jù)流)時,該組內(nèi)的有效數(shù)據(jù)塊的傳輸速度低 于用戶所期望的傳輸速度,則該組內(nèi)的有效數(shù)據(jù)塊被認(rèn)定為數(shù)據(jù)碎片,反之,則該組內(nèi)的有 效數(shù)據(jù)塊不是數(shù)據(jù)碎片。如公式1所示,不等號左側(cè)是有效數(shù)據(jù)傳輸速度,右側(cè)為用戶所期 望的傳輸速度。若滿足公式1,則說明有效數(shù)據(jù)的傳輸速度高于或等于用戶期望速度,組內(nèi) 的有效數(shù)據(jù)塊不是數(shù)據(jù)碎片。
[0007]
[000引在上述公式1中,不等號左側(cè)的分子X指有效數(shù)據(jù)塊的總大小,分母t+y/B表示讀取 該有效數(shù)據(jù)所需要的傳輸時間,x/(t+y/B)則表示有效數(shù)據(jù)X的傳輸速度,其中t表示磁盤尋 道時間,y表示讀取該有效數(shù)據(jù)X所需讀取的數(shù)據(jù)總量,即有效數(shù)據(jù)塊的最小存儲地址和最 大存儲地址之間所存儲的數(shù)據(jù)量總和;不等號右側(cè)的分子B表示磁盤帶寬(即磁盤的傳輸速 度),分母η用于限定用戶期望的數(shù)據(jù)讀取速度,B/n表示用戶期望有效數(shù)據(jù)的讀取速度為磁 盤最大傳輸速度的1/n倍。因此,公式1表示用戶期望有效數(shù)據(jù)的讀取速度至少為磁盤最大 傳輸速度的1/η倍。
[0009] 本發(fā)明核屯、思想之二是數(shù)據(jù)塊分組。首先把有效數(shù)據(jù)塊按照存儲地址進(jìn)行排序, 然后把相鄰的存儲地址間隔小于分組闊值(gap)的數(shù)據(jù)塊分為一個組,而相鄰的存儲地址 間隔大于或等于分組闊值的數(shù)據(jù)塊則被分到兩個不同的組。分組闊值的定義如公式2所示, 其中g(shù)ap為分組闊值,gap表示滿足公式1的有效數(shù)據(jù)X的最小值。
[0010]
[00川上述公式袖公式1推導(dǎo)得出。在公示1中,nx別t+y,因為y>x,所Wx別t/(n-l)。
[0012] 本發(fā)明的一種基于數(shù)據(jù)塊存儲地址的數(shù)據(jù)布局方法,主要包括四個模塊:數(shù)據(jù)分 塊與指紋管理模塊、組劃分模塊、碎片識別模塊、數(shù)據(jù)刪除與存儲模塊。數(shù)據(jù)分塊與指紋管 理模塊主要對備份數(shù)據(jù)集采用數(shù)據(jù)塊變長算法進(jìn)行不定長分塊,W及采用哈希函數(shù)計算每 個數(shù)據(jù)塊的指紋,并對整個備份數(shù)據(jù)集的數(shù)據(jù)塊指紋進(jìn)行管理,該模塊維護(hù)一個指紋查找 表用于判斷某個數(shù)據(jù)塊是否為重復(fù)數(shù)據(jù)塊,指紋查找表的每一項包括數(shù)據(jù)塊的指紋和該數(shù) 據(jù)塊的存儲地址。組劃分模塊和碎片識別模塊用來進(jìn)行數(shù)據(jù)布局的相關(guān)操作,其中組劃分 模塊主要使用公式2對數(shù)據(jù)進(jìn)行分組操作,碎片識別模塊主要使用公式1判斷待識別組中的 數(shù)據(jù)是否為碎片數(shù)據(jù)。數(shù)據(jù)刪除與存儲模塊主要用于刪除非碎片的重復(fù)數(shù)據(jù)塊,存儲新數(shù) 據(jù)塊和碎片數(shù)據(jù)塊。
[0013] 數(shù)據(jù)布局的主要流程為:
[0014] (1)數(shù)據(jù)分塊與指紋管理模塊對需要備份的數(shù)據(jù)集使用數(shù)據(jù)塊變長算法進(jìn)行不定 長分塊,然后采用哈希算法計算每個數(shù)據(jù)塊的指紋,如采用RabinFingerprint算法進(jìn)行數(shù) 據(jù)分塊,采用SHA-1哈希算法計算每個數(shù)據(jù)塊的指紋。
[0015] (2)數(shù)據(jù)分塊與指紋管理模塊在指紋查找表中查詢步驟(1)中計算得到的數(shù)據(jù)塊 指紋,若不存在該指紋,則標(biāo)記對應(yīng)的數(shù)據(jù)塊為新數(shù)據(jù)塊;反之若存在該指紋,則說明對應(yīng) 的數(shù)據(jù)塊已經(jīng)被存儲過,標(biāo)記該數(shù)據(jù)塊為重復(fù)數(shù)據(jù)塊,并記錄該數(shù)據(jù)塊的存儲地址。
[0016] (3)組劃分模塊對步驟(2)得到的重復(fù)數(shù)據(jù)塊根據(jù)公式2進(jìn)行分組操作,即把運(yùn)些 重復(fù)數(shù)據(jù)塊按照數(shù)據(jù)塊的存儲地址進(jìn)行排序,將相鄰的存儲地址間隔小于分組闊值(gap) 的數(shù)據(jù)塊分為一個組,而相鄰的存儲地址間隔大于或等于分組闊值的數(shù)據(jù)塊則被分到兩個 不同的組。
[0017] (4)碎片識別模塊根據(jù)公式1對步驟(3)所得到的每個組進(jìn)行碎片識別。若組內(nèi)數(shù) 據(jù)是碎片,將該組中的數(shù)據(jù)塊標(biāo)記為碎片數(shù)據(jù)塊。否則,則將該組中的數(shù)據(jù)塊標(biāo)記為非碎片 數(shù)據(jù)塊。
[0018] (5)數(shù)據(jù)刪除和存儲模塊刪除步驟(4)中識別出的非碎片數(shù)據(jù)塊,存儲步驟(4)中 識別出的碎片數(shù)據(jù)塊W及步驟(2)中標(biāo)記出的新數(shù)據(jù)塊并記錄該數(shù)據(jù)塊的存儲地址。
[0019] (6)數(shù)據(jù)分塊與指紋管理模塊根據(jù)新數(shù)據(jù)塊W及碎片數(shù)據(jù)塊在步驟(5)獲得的存 儲地址更新指紋查找表。
[0020] 本發(fā)明具有如下的特點(diǎn):
[0021] (1)本發(fā)明相比已有的數(shù)據(jù)布局方法,使用數(shù)據(jù)塊存儲地址進(jìn)行數(shù)據(jù)布局,碎片識 別時使用更加細(xì)粒度的碎片識別方式,能精確定位每一個數(shù)據(jù)碎片,實現(xiàn)更精細(xì)化的碎片 管理,獲得更高的重刪率和更好的恢復(fù)性能。
[0022] (2)本發(fā)明所能獲得的重刪率和恢復(fù)性能是可配置的。根據(jù)不同的使用場景,不同 的性能需求,可通過調(diào)整公式2中的相關(guān)參數(shù),獲得用戶理想中的恢復(fù)速度。例如,若存儲空 間比較緊缺,則可W增大公式2中的η值,W降低少量恢復(fù)性能為代價獲得更高的重刪率,節(jié) 約存儲空間;若存儲空間比較充足,則可W減小公式2的η值,W犧牲較小的重刪率為代價, 獲得更好的恢復(fù)性能。
[0023] 綜上所述,本發(fā)明是一種用于提高重復(fù)數(shù)據(jù)刪除系統(tǒng)恢復(fù)性能的基于數(shù)據(jù)塊存儲 地址的數(shù)據(jù)布局方法。該方法利用存儲地址進(jìn)行分組并進(jìn)行碎片識別,實現(xiàn)了更加精細(xì)化 地管理,與已有的數(shù)據(jù)布局解決方法相比擁有更高重刪率和恢復(fù)性能。同時,本發(fā)明還能針 對不同的使用場景,通過調(diào)整參數(shù)獲得與場景相適應(yīng)的重刪率和恢復(fù)性能。
【附圖說明】
[0024] 圖1為碎片識別示意圖
[0025] 圖2為分組示意圖
[0026] 圖3為模塊結(jié)構(gòu)示意圖
[0027] 圖4為數(shù)據(jù)布局流程圖
【具體實施方式】
[0028] 圖1為本發(fā)明的碎片識別示意圖。碎片識別的基本單位為數(shù)據(jù)組。每個數(shù)據(jù)組由一 定量的存儲地址相鄰的數(shù)據(jù)塊組成。若在一個組中,恢復(fù)或讀取某個數(shù)據(jù)集對象(數(shù)據(jù)對象 可W指一個備份文件或一個備份數(shù)據(jù)流)時,該組內(nèi)的有效數(shù)據(jù)塊的傳輸速度低于用戶所 期望的傳輸速度,則該組內(nèi)的有效數(shù)據(jù)塊被認(rèn)定為數(shù)據(jù)碎片,反之,則該組內(nèi)的有效數(shù)據(jù)塊 不是數(shù)據(jù)碎片。圖1中陰影部分之和是組內(nèi)有效數(shù)據(jù)塊的總大小X,包括Xl、x2、x3、x4,x = xl +x2+x3+x4"y表示讀取有效數(shù)據(jù)X所需要讀取的數(shù)據(jù)總量,即有效數(shù)據(jù)塊的最小存儲地址和 最大存儲地址之間所存儲的數(shù)據(jù)量總和。
[0029] 圖2為本發(fā)明的分組示意圖。首先把有效數(shù)據(jù)塊按照存儲地址進(jìn)行排序,然后把相 鄰的存儲地址間隔小于分組闊值(gap)的數(shù)據(jù)塊分為一個組,而相鄰的存儲地址間隔大于 或等于分組闊值的數(shù)據(jù)塊則被分到兩個不同的組。
[0030] 圖3為本發(fā)明的模塊結(jié)構(gòu)示意圖。本發(fā)明的一種基于數(shù)據(jù)存儲地址的數(shù)據(jù)布局方 法包括四個模塊,數(shù)據(jù)分塊與指紋管理模塊110、組劃分模塊120、碎片識別模塊130、數(shù)據(jù)刪 除與存儲模塊140。數(shù)據(jù)分塊與指紋管理模塊110主要對備份數(shù)據(jù)集采用數(shù)據(jù)塊變長算法進(jìn) 行不定長分塊,W及采用哈希函數(shù)計算每個數(shù)據(jù)塊的指紋,并對整個備份數(shù)據(jù)集的數(shù)據(jù)塊 指紋進(jìn)行管理,該模塊維護(hù)一個指紋查找表用于判斷某個數(shù)據(jù)塊是否為重復(fù)數(shù)據(jù)塊,指紋 查找表的每一項包括數(shù)據(jù)塊的指紋和該數(shù)據(jù)塊的存儲地址。組劃分模塊120和碎片識別模 塊130用來進(jìn)行數(shù)據(jù)布局的相關(guān)操作,其中組劃分模塊120主要使用公式2對數(shù)據(jù)進(jìn)行分組 操作,碎片識別模塊130主要使用公式1判斷待識別組中的數(shù)據(jù)是否為碎片數(shù)據(jù)。數(shù)據(jù)刪除 與存儲模塊140主要用于刪除非碎片的重復(fù)數(shù)據(jù)塊,存儲新數(shù)據(jù)塊和碎片數(shù)據(jù)塊。
[0031] 圖4為本發(fā)明的數(shù)據(jù)布局流程圖,具體步驟如下:
[0032] (1)數(shù)據(jù)分塊與指紋管理模塊110對需要備份的數(shù)據(jù)集使用數(shù)據(jù)塊變長算法進(jìn)行 不定長分塊,然后采用哈希算法計算每個數(shù)據(jù)塊的指紋,如采用RabinFingerprint算法進(jìn) 行數(shù)據(jù)分塊,采用SHA-1哈希算法計算每個數(shù)據(jù)塊的指紋。
[0033] (2)數(shù)據(jù)分塊與指紋管理模塊110在指紋查找表中查詢步驟(1)中計算得到的數(shù)據(jù) 塊指紋,若不存在該指紋,則標(biāo)記對應(yīng)的數(shù)據(jù)塊為新數(shù)據(jù)塊;反之若存在該指紋,則說明對 應(yīng)的數(shù)據(jù)塊已經(jīng)被存儲過,標(biāo)記該數(shù)據(jù)塊為重復(fù)數(shù)據(jù)塊,并記錄該數(shù)據(jù)塊的存儲地址。
[0034] (3)組劃分模塊120對步驟(2)得到的重復(fù)數(shù)據(jù)塊根據(jù)公式2進(jìn)行分組操作,即把運(yùn) 些重復(fù)數(shù)據(jù)塊按照數(shù)據(jù)塊的存儲地址進(jìn)行排序,將相鄰的存儲地址間隔小于分組闊值 (gap)的數(shù)據(jù)塊分為一個組,而相鄰的存儲地址間隔大于或等于分組闊值的數(shù)據(jù)塊則被分 到兩個不同的組。
[0035] (4)碎片識別模塊130根據(jù)公式1對步驟(3)所得到的每個組進(jìn)行碎片識別。若組內(nèi) 數(shù)據(jù)是碎片,將該組中的數(shù)據(jù)塊標(biāo)記為碎片數(shù)據(jù)塊。否則,則將該組中的數(shù)據(jù)塊標(biāo)記為非碎 片數(shù)據(jù)塊。
[0036] (5)數(shù)據(jù)刪除和存儲模塊140刪除步驟(4)中識別出的非碎片數(shù)據(jù)塊,存儲步驟(4) 中識別出的碎片數(shù)據(jù)塊W及步驟(2)中標(biāo)記出的新數(shù)據(jù)塊并記錄該數(shù)據(jù)塊的存儲地址。
[0037] (6)數(shù)據(jù)分塊與指紋管理模塊110根據(jù)新數(shù)據(jù)塊W及碎片數(shù)據(jù)塊在步驟(5)獲得的 存儲地址更新指紋查找表。
【主權(quán)項】
1. 本發(fā)明一種提高重復(fù)數(shù)據(jù)刪除備份系統(tǒng)恢復(fù)性能的基于數(shù)據(jù)塊存儲地址的數(shù)據(jù)布 局方法,具體步驟為: (1) 對需要備份的數(shù)據(jù)集使用數(shù)據(jù)塊變長算法進(jìn)行不定長分塊,然后采用哈希算法計 算每個數(shù)據(jù)塊的指紋。 (2) 在指紋查找表中查詢步驟(1)中計算得到的數(shù)據(jù)塊指紋,若不存在該指紋,則標(biāo)記 對應(yīng)的數(shù)據(jù)塊為新數(shù)據(jù)塊;反之若存在該指紋,則說明對應(yīng)的數(shù)據(jù)塊已經(jīng)被存儲過,標(biāo)記該 數(shù)據(jù)塊為重復(fù)數(shù)據(jù)塊,并記錄該數(shù)據(jù)塊的存儲地址。 (3) 對步驟(2)得到的重復(fù)數(shù)據(jù)塊進(jìn)行分組操作,即把這些重復(fù)數(shù)據(jù)塊按照數(shù)據(jù)塊的存 儲地址進(jìn)行排序,將相鄰的存儲地址間隔小于分組閾值的數(shù)據(jù)塊分為一個組,而相鄰的存 儲地址間隔大于或等于分組閾值的數(shù)據(jù)塊則被分到兩個不同的組。 (4) 對步驟(3)所得到的每個組進(jìn)行碎片識別。若在一個組中,恢復(fù)或讀取某個數(shù)據(jù)集 對象(數(shù)據(jù)對象可以指一個備份文件或一個備份數(shù)據(jù)流)時,該組內(nèi)的有效數(shù)據(jù)塊的傳輸速 度低于用戶所期望的傳輸速度,則該組內(nèi)的有效數(shù)據(jù)塊被標(biāo)記為數(shù)據(jù)碎片,反之,則該組內(nèi) 的有效數(shù)據(jù)塊被標(biāo)記為非碎片數(shù)據(jù)塊。 (5) 刪除步驟(4)中識別出的非碎片數(shù)據(jù)塊,存儲步驟(4)中識別出的碎片數(shù)據(jù)塊以及 步驟(2)中標(biāo)記出的新數(shù)據(jù)塊并記錄該數(shù)據(jù)塊的存儲地址。 (6) 根據(jù)新數(shù)據(jù)塊以及碎片數(shù)據(jù)塊在步驟(5)獲得的存儲地址更新指紋查找表。2. 根據(jù)權(quán)利要求1所述的數(shù)據(jù)布局方法,其特征在于: (1) 本發(fā)明一種基于數(shù)據(jù)塊存儲地址的碎片識別方法,具體為:碎片識別的基本單位為 數(shù)據(jù)組,每個數(shù)據(jù)組由一定量的存儲地址相鄰的數(shù)據(jù)塊組成。若在一個組中,恢復(fù)或讀取某 個數(shù)據(jù)集對象(數(shù)據(jù)對象可以指一個備份文件或一個備份數(shù)據(jù)流)時,該組內(nèi)的有效數(shù)據(jù)塊 的傳輸速度低于用戶所期望的傳輸速度,則該組內(nèi)的有效數(shù)據(jù)塊被認(rèn)定為數(shù)據(jù)碎片,反之, 則該組內(nèi)的有效數(shù)據(jù)塊不是數(shù)據(jù)碎片。如公式1所示,不等號左側(cè)是有效數(shù)據(jù)傳輸速度,右 側(cè)為用戶所期望的傳輸速度。若滿足公式1,則說明有效數(shù)據(jù)的傳輸速度高于或等于用戶期 望速度,組內(nèi)的有效數(shù)據(jù)塊不是數(shù)據(jù)碎片。在上述公式1中,不等號左側(cè)的分子X指有效數(shù)據(jù)塊的總大小,分母t+y/B表示讀取該有 效數(shù)據(jù)所需要的傳輸時間,x/(t+y/B)則表示有效數(shù)據(jù)X的傳輸速度,其中t表示磁盤尋道時 間,y表示讀取該有效數(shù)據(jù)X所需讀取的數(shù)據(jù)總量,即有效數(shù)據(jù)塊的最小存儲地址和最大存 儲地址之間所存儲的數(shù)據(jù)量總和;不等號右側(cè)的分子B表示磁盤帶寬(即磁盤的傳輸速度), 分母η用于限定用戶期望的數(shù)據(jù)讀取速度,B/n表示用戶期望有效數(shù)據(jù)的讀取速度為磁盤最 大傳輸速度的1/n倍。因此,公式1表示用戶期望有效數(shù)據(jù)的讀取速度至少為磁盤最大傳輸 速度的1/η倍。 (2) 本發(fā)明一種基于數(shù)據(jù)塊存儲地址的數(shù)據(jù)分組方法,具體為:首先把有效數(shù)據(jù)塊按照 存儲地址進(jìn)行排序,然后把相鄰的存儲地址間隔小于分組閾值(gap)的數(shù)據(jù)塊分為一個組, 而相鄰的存儲地址間隔大于或等于分組閾值的數(shù)據(jù)塊則被分到兩個不同的組。分組閾值的 定義如公式2所示,其中g(shù)ap為分組閾值,gap表示滿足公式1的有效數(shù)據(jù)X的最小值。上述公式2由公式1推導(dǎo)得出。在公示1中,nx彡Bt+y,因為y彡x,所以x彡Bt/(n-l)。
【文檔編號】G06F11/14GK106066818SQ201610351498
【公開日】2016年11月2日
【申請日】2016年5月25日 公開號201610351498.5, CN 106066818 A, CN 106066818A, CN 201610351498, CN-A-106066818, CN106066818 A, CN106066818A, CN201610351498, CN201610351498.5
【發(fā)明人】譚玉娟, 文艦, 晏志超
【申請人】重慶大學(xué)