動(dòng)態(tài)環(huán)境下的儲(chǔ)層結(jié)構(gòu)_第1頁(yè)
動(dòng)態(tài)環(huán)境下的儲(chǔ)層結(jié)構(gòu)_第2頁(yè)
動(dòng)態(tài)環(huán)境下的儲(chǔ)層結(jié)構(gòu)_第3頁(yè)
動(dòng)態(tài)環(huán)境下的儲(chǔ)層結(jié)構(gòu)_第4頁(yè)
動(dòng)態(tài)環(huán)境下的儲(chǔ)層結(jié)構(gòu)_第5頁(yè)
已閱讀5頁(yè),還剩2頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

動(dòng)態(tài)環(huán)境下的儲(chǔ)層結(jié)構(gòu)

1erid系統(tǒng)的進(jìn)化存儲(chǔ)系統(tǒng)數(shù)字信息的復(fù)雜性增加給網(wǎng)絡(luò)環(huán)境下的級(jí)別存儲(chǔ)系統(tǒng)帶來了一個(gè)重要問題:應(yīng)用存儲(chǔ)系統(tǒng)的容量和性能要求日益增加。隨著盤盤技術(shù)的快速發(fā)展,盤盤容量每年增加一次,訪問通道和旋轉(zhuǎn)速度的增加相對(duì)較小,每年為7%,單個(gè)磁盤容量的價(jià)格每年為40%。以上兩種情況共同作用導(dǎo)致存儲(chǔ)系統(tǒng)中的磁盤呈現(xiàn)3種形式的動(dòng)態(tài)變化:第一種,系統(tǒng)磁盤性能的提高,即系統(tǒng)中原有的舊磁盤發(fā)生故障,而系統(tǒng)原有型號(hào)的磁盤往往已退出市場(chǎng)或性價(jià)比太低不值得購(gòu)買,從而用容量大、速度高的新磁盤(為了敘述方便,如無特殊說明,本文用“同構(gòu)磁盤”表示與系統(tǒng)原有磁盤容量、性能相同的磁盤,用“異構(gòu)磁盤”表示與系統(tǒng)原有磁盤容量或/和性能不同的磁盤);第二種,系統(tǒng)磁盤數(shù)量的增加,即向系統(tǒng)添加(原有型號(hào)的)磁盤以滿足應(yīng)用對(duì)系統(tǒng)更大存儲(chǔ)容量的需求;第三種形式是前兩種形式的混合,磁盤數(shù)量增加的同時(shí)磁盤性能也提高,即向系統(tǒng)添加異構(gòu)磁盤。然而,盡管現(xiàn)有存儲(chǔ)系統(tǒng),如高性能磁盤陣列(RAID)、附網(wǎng)存儲(chǔ)(NetworkAttachedStorage,NAS)、存儲(chǔ)區(qū)域網(wǎng)(StorageAreaNetwork,SAN)的存儲(chǔ)容量和性能都在快速增長(zhǎng),這些存儲(chǔ)系統(tǒng)卻具有一個(gè)普遍存在的問題——系統(tǒng)整體結(jié)構(gòu)不能很好地適應(yīng)系統(tǒng)磁盤的動(dòng)態(tài)變化。對(duì)于第一種形式的磁盤動(dòng)態(tài)變化的情況,以RAID5技術(shù)為例,一旦某個(gè)磁盤出現(xiàn)故障,它會(huì)在一個(gè)新磁盤上重構(gòu)故障磁盤的數(shù)據(jù),由于磁盤技術(shù)的發(fā)展,新盤的容量和速度都有可能高于RAID中原有的舊盤,然而重構(gòu)后的RAID的整體性能并不會(huì)因此而提高;對(duì)于第二種形式的磁盤動(dòng)態(tài)變化即磁盤數(shù)量的增加,RAID5似乎可以通過簡(jiǎn)單地往陣列中增加并行磁盤來處理:一方面,磁盤數(shù)目的增加使得陣列在不增加冗余開銷的前提下擴(kuò)展存儲(chǔ)容量,另一方面,并行磁盤的增加意味著陣列帶寬的提高。然而,“向系統(tǒng)添加磁盤”本身也是個(gè)難題,當(dāng)前采用最多的處理方法是“暫停服務(wù)”——首先停止系統(tǒng)存取服務(wù),進(jìn)行數(shù)據(jù)備份,添加磁盤后重新裝載數(shù)據(jù),再繼續(xù)提供系統(tǒng)服務(wù)。這種暫停存儲(chǔ)系統(tǒng)服務(wù)的方法對(duì)于許多依賴于數(shù)據(jù)可用性或要求24×7h服務(wù)的系統(tǒng),如科學(xué)計(jì)算、電子商務(wù)等是不可接受的。我們認(rèn)為現(xiàn)有存儲(chǔ)系統(tǒng)整體結(jié)構(gòu)不能很好適應(yīng)系統(tǒng)磁盤動(dòng)態(tài)變化的主要原因在于其物理和邏輯的組織是一種靜態(tài)的結(jié)構(gòu),而靜態(tài)組織模型不能很好地刻畫處于不斷變化之中的系統(tǒng)。而我們提出的進(jìn)化存儲(chǔ)系統(tǒng)(EvolvingRAIDsystem,ERAID)是一個(gè)由軟硬構(gòu)件組成的動(dòng)態(tài)存儲(chǔ)系統(tǒng)。ERAID實(shí)時(shí)監(jiān)測(cè)工作構(gòu)件(或整體結(jié)構(gòu))狀態(tài),一旦發(fā)現(xiàn)工作構(gòu)件(或整體狀態(tài))處于不良狀態(tài)或有向更優(yōu)狀態(tài)遷移的可能,就用備用構(gòu)件(或新結(jié)構(gòu))構(gòu)造出一個(gè)具有同樣功能但處于更優(yōu)狀態(tài)的構(gòu)件代替之,從而使系統(tǒng)整體性能得到進(jìn)化。(構(gòu)件可以是磁盤、陣列、互連設(shè)備或某種功能的軟件。狀態(tài)可以是物理狀態(tài),也可以是數(shù)據(jù)分布狀態(tài)。)ERAID系統(tǒng)從整體上可以分為兩種類型的進(jìn)化,一是邏輯組織結(jié)構(gòu)進(jìn)化,即磁盤系統(tǒng)中數(shù)據(jù)的組織以及整個(gè)系統(tǒng)中各種不同屬性數(shù)據(jù)的分布可以隨著外在的數(shù)據(jù)流輸入輸出的變化而相應(yīng)改變,以期獲得最好的系統(tǒng)性能。二是物理進(jìn)化,即系統(tǒng)在保證系統(tǒng)內(nèi)部數(shù)據(jù)可用性的同時(shí),使系統(tǒng)整體性能隨部件性能的提高或部件數(shù)量的增加而提升。ERAID系統(tǒng)的邏輯組織結(jié)構(gòu)進(jìn)化,可參見相關(guān)論文。本文工作的重點(diǎn)是ERAID系統(tǒng)的物理進(jìn)化,主要研究系統(tǒng)在不停止服務(wù)的前提下實(shí)現(xiàn)構(gòu)件(主要是磁盤)的替換和添加,即ERAID系統(tǒng)如何適應(yīng)3種類型的磁盤動(dòng)態(tài)變化來實(shí)現(xiàn)系統(tǒng)的物理進(jìn)化。本文的內(nèi)容安排如下:第2節(jié)介紹與存儲(chǔ)系統(tǒng)中同構(gòu)磁盤的引入,以及與系統(tǒng)對(duì)異構(gòu)磁盤的利用相關(guān)的研究工作;第3節(jié)介紹ERAID的系統(tǒng)結(jié)構(gòu);第4節(jié)詳細(xì)描述了ERAID如何采用適應(yīng)系統(tǒng)磁盤動(dòng)態(tài)變化,實(shí)現(xiàn)系統(tǒng)物理進(jìn)化的策略;第5節(jié)用仿真實(shí)驗(yàn)對(duì)這些策略進(jìn)行了驗(yàn)證;最后總結(jié)全文。2異構(gòu)系統(tǒng)存儲(chǔ)的熱性能研究對(duì)于系統(tǒng)如何添加同構(gòu)磁盤,有的工作致力于研究“非限制性”的數(shù)據(jù)放置技術(shù),這些技術(shù)將數(shù)據(jù)隨機(jī)放置,使得添加磁盤以后系統(tǒng)重構(gòu)時(shí)所需要從舊磁盤遷移到新磁盤的數(shù)據(jù)盡量少,同時(shí)使得重構(gòu)后系統(tǒng)各磁盤的負(fù)載能夠平衡。有的工作的研究重點(diǎn)在于增加采用數(shù)據(jù)分條策略(限制性數(shù)據(jù)放置)的存儲(chǔ)系統(tǒng)的帶寬,這些工作主要是針對(duì)多媒體環(huán)境,并且并不能增加系統(tǒng)的存儲(chǔ)容量。AutoRAID是個(gè)多層次的存儲(chǔ)系統(tǒng):上層為RAID0,底層為RAID5,通過把更多的存儲(chǔ)空間設(shè)置為RAID0,AutoRAID能夠?qū)崿F(xiàn)系統(tǒng)容量的在線擴(kuò)充,其缺陷是只有當(dāng)新磁盤的添加過程完全結(jié)束,系統(tǒng)的帶寬才得到提高。為了充分利用系統(tǒng)中異構(gòu)磁盤的容量和性能,已有研究者提出了一些很好的解決方法,不過這些方法都是針對(duì)多媒體系統(tǒng):Santos和Muntz提出一種“帶復(fù)制的隨機(jī)分布”策略來提高短期和長(zhǎng)期的負(fù)載平衡;與此相似,Zimmermann提出由若干個(gè)物理磁盤的部分或全部存儲(chǔ)空間創(chuàng)建“邏輯磁盤”;Dan和Sitaran提出利用快磁盤來存放“熱”數(shù)據(jù),而不重要的數(shù)據(jù)放置在慢磁盤上。上述針對(duì)多媒體的研究都作了一些假定,如請(qǐng)求塊大小很大(1Mbyte),讀請(qǐng)求比寫請(qǐng)求更重要,研究的重點(diǎn)在于系統(tǒng)可以獲得一個(gè)持續(xù)的帶寬而不是獲得最佳的響應(yīng)時(shí)間。而這些假設(shè)在其它環(huán)境下(科學(xué)計(jì)算或通用負(fù)載)是不成立的:請(qǐng)求塊大小為幾千字節(jié),寫請(qǐng)求和讀請(qǐng)求同樣重要,更快的系統(tǒng)響應(yīng)時(shí)間比持續(xù)的系統(tǒng)帶寬更重要。然而據(jù)我們所知,僅有2個(gè)非多媒體系統(tǒng)對(duì)異構(gòu)磁盤和系統(tǒng)其它磁盤進(jìn)行了區(qū)別對(duì)待,它們分別是HP-AutoRAID和Linux系統(tǒng)的softwareRAID。AutoRAID的目的雖然不在于處理磁盤的異構(gòu)性,可其結(jié)構(gòu)能支持不同型號(hào)的磁盤,然而它也只考慮了磁盤容量的不同,并未見其有通過利用不同性能的磁盤來提高整個(gè)系統(tǒng)性能的研究。在LinuxsoftwareRAID中,陣列由虛擬磁盤(virtualdisk)構(gòu)成,一個(gè)虛擬磁盤由若干個(gè)磁盤組成,每個(gè)磁盤存放分配到虛擬磁盤的部分?jǐn)?shù)據(jù)塊;這種“虛擬磁盤”方法的缺陷在于其過于簡(jiǎn)單,因?yàn)樗辉谀苷业揭唤M磁盤,其容量和陣列其他虛擬磁盤的容量相同時(shí)才有效(否則將造成磁盤空間的浪費(fèi));此外,softwareRAID只適用于RAID0,不適用于RAID5。還有些研究工作,如DCD,雖然也涉及到異構(gòu)磁盤,可它們的重點(diǎn)在于提出新的結(jié)構(gòu),利用不同的磁盤服務(wù)不同的任務(wù)。然而本文工作的目的不是判斷什么是最好、最值得購(gòu)買的硬件,而是研究當(dāng)非多媒體系統(tǒng)進(jìn)行替換異構(gòu)磁盤或添加(同構(gòu)或異構(gòu))磁盤時(shí),如何能不停止系統(tǒng)服務(wù),并且使重構(gòu)后的系統(tǒng)獲得最佳的存儲(chǔ)容量和存儲(chǔ)性能。3邏輯存儲(chǔ)方面如圖1所示,ERAID由若干個(gè)SubRAID組成,SubRAID的數(shù)據(jù)與校驗(yàn)分布與傳統(tǒng)RAID相同,而各SubRAID的結(jié)構(gòu)可以不同,它們共同組成一個(gè)全局的塊級(jí)存儲(chǔ)空間。與傳統(tǒng)RAID中所有的應(yīng)用都訪問一個(gè)統(tǒng)一結(jié)構(gòu)的大陣列不同,對(duì)于每個(gè)用戶,ERAID只分配一個(gè)虛擬卷(VirtualVolume)對(duì)其進(jìn)行服務(wù),虛擬卷是由單個(gè)或多個(gè)SubRAID的部分或全部存儲(chǔ)空間構(gòu)成的邏輯存儲(chǔ)空間。用戶使用的邏輯地址到磁盤物理地址的轉(zhuǎn)換,即格式為〈虛擬卷號(hào),虛擬卷內(nèi)偏移量〉的邏輯地址到格式為〈子陣列號(hào),磁盤號(hào),磁盤內(nèi)偏移量〉的物理地址的轉(zhuǎn)換由ERAID驅(qū)動(dòng)器完成,因此,只需要改變分配給用戶的虛擬卷所映射的SubRAID物理存儲(chǔ)空間,就能允許用戶的數(shù)據(jù)隨著負(fù)載特征的改變?cè)诟鱏ubRAID間動(dòng)態(tài)遷移,從而在用戶看來,系統(tǒng)始終對(duì)其提供符合I/O需求的虛擬卷。可見,虛擬卷的概念以及數(shù)據(jù)在SubRAID間動(dòng)態(tài)遷移的特征使整個(gè)ERAID存儲(chǔ)系統(tǒng)能對(duì)各類應(yīng)用提供最佳的I/O性能。除上述優(yōu)勢(shì)外,ERAID系統(tǒng)的可擴(kuò)展性和磁盤的異構(gòu)性使其能很好地適應(yīng)磁盤的動(dòng)態(tài)變化,實(shí)現(xiàn)系統(tǒng)物理進(jìn)化——ERAID系統(tǒng)將用戶所見虛擬卷和物理存儲(chǔ)空間完全分離的特征使得新磁盤可被加入到SubRAID而不會(huì)對(duì)用戶的使用造成影響,SubRAID也能被系統(tǒng)任意添加、刪除或重構(gòu),因此ERAID系統(tǒng)具有良好的可擴(kuò)展性:磁盤(和其他資源,如控制器、總線等)能被靈活地添加到存儲(chǔ)子系統(tǒng)。另外,SubRAID的結(jié)構(gòu)可以各不相同,使得異構(gòu)磁盤(容量、性能不同的磁盤)的性能在系統(tǒng)中能得到充分發(fā)揮。ERAID系統(tǒng)的可擴(kuò)展性和磁盤的異構(gòu)性正是本文工作的重點(diǎn)。4系統(tǒng)的數(shù)據(jù)安全如前所述,系統(tǒng)磁盤動(dòng)態(tài)變化的形式可分為3類:同構(gòu)磁盤的添加、異構(gòu)磁盤的添加以及異構(gòu)磁盤的替換,本節(jié)就ERAID系統(tǒng)如何適應(yīng)這3種類型的磁盤動(dòng)態(tài)變化進(jìn)行分別介紹。4.1daa算法介紹ERAID系統(tǒng)對(duì)于同構(gòu)磁盤的添加,有2種處理方式:第一種是當(dāng)需要增加原有SubRAID并行磁盤的數(shù)目時(shí),將新磁盤添加到單個(gè)SubRAID,另一種是由新添加的磁盤組成一個(gè)或幾個(gè)新的SubRAID,添加到ERAID系統(tǒng)。后者與新建磁盤陣列的過程基本相同,ERAID控制器將新SubRAID的物理存儲(chǔ)空間添加到系統(tǒng)全局存儲(chǔ)空間即可,因此本文只對(duì)前一種處理方式進(jìn)行詳細(xì)描述。由于SubRAID的結(jié)構(gòu)與傳統(tǒng)RAID相同,因此如何將新磁盤添加到單個(gè)SubRAID的問題也即在不停止服務(wù)前提下,傳統(tǒng)RAID如何進(jìn)行同構(gòu)磁盤擴(kuò)展的問題。ERAID系統(tǒng)采用“磁盤吸收算法(diskassimilationalgorithm,DAA)”將原SubRAID的數(shù)據(jù)逐漸進(jìn)行重新組織,構(gòu)建成添加磁盤后的新SubRAID。如圖2所示的是級(jí)別為level5、磁盤數(shù)量為5的SubRAID添加2個(gè)新磁盤,已經(jīng)吸收了一個(gè)分條的狀態(tài)。其它陣列級(jí)別、磁盤數(shù)量的SubRAID添加其它數(shù)量新磁盤的情況與此類似。在該算法實(shí)現(xiàn)的過程中,SubRAID的數(shù)據(jù)分為3種:原始數(shù)據(jù),即尚未進(jìn)行重新組織的數(shù)據(jù),它只存在于原SubRAID的磁盤;重組織數(shù)據(jù),即已經(jīng)由原SubRAID重新排布到新SubRAID的數(shù)據(jù),它是新SubRAID中完整的數(shù)據(jù)分條(stripes),存在于舊磁盤和新添加磁盤;無效數(shù)據(jù),即已經(jīng)重新組織,但仍舊存在于原SubRAID磁盤上未被寫覆蓋的數(shù)據(jù)。DAA算法的實(shí)現(xiàn)步驟如下:(1)讀取原SubRAID中的一定大小的數(shù)據(jù),數(shù)據(jù)的大小可由ERAID設(shè)置,但是為了避免在新SubRAID中引入小寫開銷,讀取數(shù)據(jù)的大小必須為新SubRAID一個(gè)分條大小的整數(shù)倍。(2)將讀取的數(shù)據(jù)寫到新的SubRAID。(3)更新重組織數(shù)據(jù)對(duì)應(yīng)的SubRAID控制器和ERAID控制器中的地址映射表和位圖(bitmap)信息,并更新無效數(shù)據(jù)對(duì)應(yīng)的位圖信息。(4)轉(zhuǎn)到步驟(1),繼續(xù)讀取原SubRAID中的固定大小的數(shù)據(jù),執(zhí)行步驟(2)、(3),直到原SubRAID中原始數(shù)據(jù)都得到處理。原SubRAID吸收新磁盤重建成新SubRAID的過程不需要停止SubRAID的I/O服務(wù),ERAID系統(tǒng)可以根據(jù)該SubRAID的負(fù)載輕重把整個(gè)吸收過程設(shè)定在一定時(shí)間完成,該時(shí)間分為若干時(shí)段,每個(gè)時(shí)段執(zhí)行吸收算法的一個(gè)循環(huán),即步驟(1)、(2)、(3)。如新SubRAID有60個(gè)分條,設(shè)定在1個(gè)小時(shí)完成吸收過程,每個(gè)循環(huán)吸收10個(gè)分條,則系統(tǒng)每10分鐘啟動(dòng)一個(gè)循環(huán)(本例的數(shù)字僅用于說明,非實(shí)際數(shù)字)。這樣系統(tǒng)就可以控制磁盤添加過程對(duì)系統(tǒng)服務(wù)質(zhì)量造成的影響。當(dāng)然,DAA算法也可以在系統(tǒng)空閑時(shí)執(zhí)行。4.2sdaa算法的基本思想與4.1節(jié)相似,ERAID系統(tǒng)添加異構(gòu)磁盤也有2種方式,第一種是將異構(gòu)磁盤添加到系統(tǒng)原有SubRAID,另一種是由添加的異構(gòu)磁盤組成新的SubRAID。在此,我們只敘述前一種方式,后一種方式的處理可以參考T.Cortes和J.Labarta的研究工作。T.Cortes和J.Labarta提出了“分條式樣”(apatternofstripes)的概念,以充分利用存儲(chǔ)系統(tǒng)中異構(gòu)磁盤的容量和性能——假設(shè)各陣列磁盤的容量按相同的比例縮小,數(shù)據(jù)再分條存放到“小”陣列,該“小”陣列中的數(shù)據(jù)分布方式即“分條式樣”,在實(shí)際陣列中,數(shù)據(jù)按分條式樣的方式重復(fù)排布,直至各磁盤空間寫滿(圖3中粗線框標(biāo)示了新SubRAID中2個(gè)分條式樣)。本文將“分條式樣”的概念從靜態(tài)的存儲(chǔ)系統(tǒng)擴(kuò)展到動(dòng)態(tài)添加異構(gòu)磁盤的存儲(chǔ)系統(tǒng),并和DAA算法相結(jié)合形成“異構(gòu)磁盤吸收算法(heterogeneousdiskassimilationalgorithm,HDAA)”,從而將DAA算法的使用從系統(tǒng)添加同構(gòu)磁盤的情況擴(kuò)展到系統(tǒng)添加異構(gòu)磁盤的情況。HDAA算法的具體步驟如下:(1)讀取原SubRAID中的大小為新SubRAID一個(gè)分條式樣整數(shù)倍的數(shù)據(jù),整數(shù)倍數(shù)可由ERAID設(shè)置。(2)、(3)、(4)同DAA算法中步驟(2)、(3)、(4)。可見HDAA算法和DAA算法基本相同,區(qū)別之處僅在于HDAA算法每次循環(huán)吸收的數(shù)據(jù)量為一個(gè)分條式樣的整數(shù)倍,而后者每次循環(huán)吸收的數(shù)據(jù)大小為新SubRAID一個(gè)分條大小的整數(shù)倍。圖3為含有4個(gè)磁盤、級(jí)別為level5的SubRAID添加2個(gè)容量分別為原磁盤1.5倍和2倍的異構(gòu)磁盤的過程示意圖,圖左邊為原SubRAID,右邊為已經(jīng)吸收了一個(gè)分條式樣的新SubRAID。從圖中可看出在HDAA算法的執(zhí)行過程中,SubRAID的數(shù)據(jù)也分為原始數(shù)據(jù)、重組織數(shù)據(jù)和無效數(shù)據(jù)三種。其它陣列級(jí)別、磁盤數(shù)量的SubRAID添加其它數(shù)量異構(gòu)磁盤的情況與此類似。與傳統(tǒng)存儲(chǔ)系統(tǒng)添加異構(gòu)磁盤時(shí)把其視作同構(gòu)磁盤,從而造成異構(gòu)磁盤容量和性能的浪費(fèi)不同,HDAA算法中“分條式樣”的概念考慮到新加入的異構(gòu)磁盤的容量和性能,從而使新存儲(chǔ)系統(tǒng)的容量和性能得到優(yōu)化;另外,如上小節(jié)所述,整個(gè)磁盤吸收過程可以由ERAID系統(tǒng)設(shè)定在一定時(shí)間完成,每個(gè)時(shí)間段啟動(dòng)執(zhí)行若干個(gè)HDAA循環(huán)(步驟(1)、(2)、(3)),或在系統(tǒng)空閑時(shí)執(zhí)行,因此SubRAID能在不停止I/O服務(wù)的前提下實(shí)現(xiàn)異構(gòu)磁盤的添加。4.3新司配機(jī)工作數(shù)據(jù)安全當(dāng)ERAID系統(tǒng)中某個(gè)SubRAID的磁盤發(fā)生失效,而用一個(gè)異構(gòu)磁盤替換失效磁盤時(shí),系統(tǒng)必須在重構(gòu)失效磁盤數(shù)據(jù)的同時(shí)吸收異構(gòu)磁盤的存儲(chǔ)空間;此時(shí),ERAID系統(tǒng)采用“擴(kuò)展異構(gòu)磁盤吸收算法”(extendHDAA,e-HDAA),該算法在HDAA的基礎(chǔ)上添加了重構(gòu)失效數(shù)據(jù)的過程。e-HDAA的算法步驟如下:(1)從原SubRAID工作磁盤中讀取大小為新SubRAID一個(gè)分條式樣整數(shù)倍的數(shù)據(jù)(整數(shù)倍數(shù)可由ERAID設(shè)置),對(duì)于其中的失效數(shù)據(jù),讀取恢復(fù)該數(shù)據(jù)所需要的全部分條單元(stripeunit)及校驗(yàn)單元(parityunit)。(2)重構(gòu)失效數(shù)據(jù)。(3)、(4)、(5)同HDAA算法中步驟(2)、(3)、(4)。圖4為陣列級(jí)別為level5的異構(gòu)SubRAID中原磁盤4失效后,用新磁盤0替代后,新SubRAID采用e-HDAA算法吸收了一個(gè)分條式樣的示意圖——系統(tǒng)首先讀取原SubRAID中數(shù)據(jù)單元0~3、5~9、11及校驗(yàn)單元P0-4、P10,重構(gòu)數(shù)據(jù)單元4、10以后,將數(shù)據(jù)單元0~11寫入新SubRAID的一個(gè)分條式樣。由于在降級(jí)模式(degradedmode)工作下的SubRAID中各磁盤的負(fù)載加倍,因此如果發(fā)生磁盤失效的SubRAID負(fù)載較大,系統(tǒng)應(yīng)盡快使該SubRAID恢復(fù)到正常工作模式,此時(shí),ERAID系統(tǒng)可以先將失效磁盤的數(shù)據(jù)重構(gòu)到替換的異構(gòu)磁盤(與傳統(tǒng)RAID重構(gòu)過程基本相同),再分時(shí)段或在系統(tǒng)空閑時(shí)采用HDAA算法吸收異構(gòu)磁盤的存儲(chǔ)空間。限于篇幅,對(duì)于此種情況本文不作詳細(xì)敘述。5模擬實(shí)驗(yàn)與結(jié)果分析5.1實(shí)驗(yàn)系統(tǒng)性能分析我們采用trace驅(qū)動(dòng)的仿真實(shí)驗(yàn)來驗(yàn)證ERAID系統(tǒng)適應(yīng)磁盤動(dòng)態(tài)變化,實(shí)現(xiàn)存儲(chǔ)系統(tǒng)物理進(jìn)化。本文的仿真工具為HRaid,它是一個(gè)功能強(qiáng)大的存儲(chǔ)系統(tǒng)仿真軟件。我們用HRaid仿真了一個(gè)由9個(gè)SeagateCheetah73磁盤(標(biāo)記為磁盤a)組成ERAID系統(tǒng)(我們稱之為原ERAID系統(tǒng)),該磁盤容量為73.4GB,轉(zhuǎn)速為10000r/m,數(shù)據(jù)傳輸率為31MB/s。原ERAID系統(tǒng)的控制器具有大小為256MB,數(shù)據(jù)傳輸率為62MB/s的非缺失性緩存(NVRAM),總線連接2個(gè)SubRAID控制器,分別管理一個(gè)SubRAID:第一個(gè)SubRAID(SubRAID0)由5個(gè)磁盤組成,陣列級(jí)別為level5,分條單元大小為16kB;第二個(gè)SubRAID(SubRAID1)由4個(gè)磁盤組成,陣列級(jí)別為level5,分條單元大小為8kB。不失一般性,實(shí)驗(yàn)采用了3種HRaid仿真的異構(gòu)磁盤(分別標(biāo)記為磁盤b、磁盤c和磁盤d),其磁盤容量分別為磁盤a容量的1.5倍、2倍和2.5倍,4種實(shí)驗(yàn)磁盤的性能參數(shù)詳見表2。本文采用的trace為HRaid內(nèi)部生成的2種不同特征的負(fù)載——負(fù)載0和負(fù)載1,分別模擬訪問SubRAID0和SubRAID1的2個(gè)ERAID系統(tǒng)用戶。負(fù)載的特征參數(shù)如表1所示,其中各負(fù)載的請(qǐng)求數(shù)均為2592000(仿真系統(tǒng)運(yùn)行時(shí)間為24h,平均30個(gè)請(qǐng)求/s),讀/寫比率為讀寫訪問次數(shù)之比,平均大小分布均服從指數(shù)分布,其中(x,y)分別為指數(shù)函數(shù)的基值(base)和平均值(mean),各請(qǐng)求的到達(dá)間隔時(shí)間也服從指數(shù)分布(0.0,10.0ms),各負(fù)載的請(qǐng)求初始地址在對(duì)應(yīng)SubRAID上均勻分布。本文仿真了3組實(shí)驗(yàn),分別對(duì)應(yīng)3種形式的系統(tǒng)磁盤動(dòng)態(tài)變化(仿真實(shí)驗(yàn)用到的4種類型的磁盤性能參數(shù)見表2)——第一組實(shí)驗(yàn)為向原ERAID系統(tǒng)SubRAID0添加2個(gè)同構(gòu)磁盤a,ERAID系統(tǒng)設(shè)定用12h,采用DAA算法對(duì)同構(gòu)磁盤進(jìn)行吸收;第二組實(shí)驗(yàn)為向原ERAID系統(tǒng)SubRAID1添加2個(gè)異構(gòu)磁盤:磁盤b和磁盤c,系統(tǒng)設(shè)定利用12h,采用HDAA算法對(duì)異構(gòu)磁盤進(jìn)行吸收;接下來,第三組實(shí)驗(yàn)仿真在第二組實(shí)驗(yàn)后添加了異構(gòu)磁盤b、c后的SubRAID1中磁盤b失效,用磁盤d替代,系統(tǒng)用12h,采用e-HDAA算法吸收替換磁盤d,重構(gòu)SubRAID的情況。5.2erid系統(tǒng)物理進(jìn)化和穩(wěn)定性仿真實(shí)驗(yàn)結(jié)果如圖5a、5b和5c所示。圖5a記錄第一組仿真實(shí)驗(yàn)的結(jié)果,即在實(shí)驗(yàn)trace下第一組實(shí)驗(yàn)中3個(gè)存儲(chǔ)系統(tǒng)的平均請(qǐng)求響應(yīng)時(shí)間,它們分別為:原ERAID系統(tǒng)、SubRAID0完全吸收了2個(gè)同構(gòu)磁盤后的ERAID系統(tǒng),以及從SubRAID0添加到完全吸收同構(gòu)磁盤過程中的ERAID系統(tǒng)(吸收過程為12h)。與圖5a相似,圖5b和圖5c分別記錄了第二組和第三組仿真實(shí)驗(yàn)的結(jié)果。從圖5a中我們看到原ERAID系統(tǒng)的平均請(qǐng)求響應(yīng)時(shí)間高于SubRAID0完全吸收了2個(gè)同構(gòu)磁盤后的ERAID系統(tǒng)。此外,我們注意到:在SubRAID0剛剛添加磁盤時(shí),ERAID系統(tǒng)的性能與原ERAID系統(tǒng)相同,但隨著磁盤吸收過程的進(jìn)行(仿真前12h),系統(tǒng)性能逐漸趨向完全吸收了2個(gè)同構(gòu)磁盤的ERAID系統(tǒng);在磁盤吸收過程中無顯著的系統(tǒng)開銷,因?yàn)檎麄€(gè)吸收過程被分散到12h,并且原SubRAID上的分條一旦被吸收重構(gòu)到新SubRAID

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論