的數(shù)據(jù)映射如圖6 - 3 0所示,同其他的R A I D級(jí)一樣,也可以分成許多虛擬驅(qū)動(dòng)器.2. RAID 4的寫瓶頸
由于RAID 4使用了一個(gè)專有的校驗(yàn)磁盤,所以,RAID 4在處理寫請(qǐng)求時(shí)有一個(gè)內(nèi)在的瓶頸,考慮由R A I D寫額外開(kāi)銷所引起的性能問(wèn)題,這是一個(gè)雙倍性能損失。因?yàn)镽AID 4支持對(duì)所有磁盤的獨(dú)立訪問(wèn),陣列中的多個(gè)寫操作都要讀出校驗(yàn)數(shù)據(jù),再重寫到單個(gè)磁盤,因此,校驗(yàn)磁盤必須支持所有等待的寫操作,這種對(duì)校驗(yàn)磁盤的依賴性是一個(gè)系統(tǒng)瓶頸。
3. RAID 4中磁盤數(shù)量的局限
當(dāng)RAID 4中的磁盤數(shù)量增加時(shí),它的寫瓶頸效應(yīng)隨之增加。陣列中的磁盤數(shù)量在某種程度上決定了交叉操作的數(shù)量。例如,一個(gè)3個(gè)磁盤的陣列每次最多處理2個(gè)請(qǐng)求。雖然在使用諸如標(biāo)記命令排隊(duì)技術(shù)時(shí),可以對(duì)流水線操作產(chǎn)生另外的處理,但每個(gè)磁盤臂一次只能處理一個(gè)請(qǐng)求。因此,5個(gè)磁盤的陣列比4個(gè)磁盤的陣列能支持更多的I / O操作,6個(gè)磁盤的陣列比5個(gè)磁盤的陣列能夠支持更多的I / O操作,以此類推。
通過(guò)增加更多的磁盤方法,可以在R A I D子系統(tǒng)中分散負(fù)載,產(chǎn)生另外的并行性,這似乎很有道理,但事實(shí)上未必成立。為了在成員磁盤中維護(hù)高度并行的負(fù)載分布,需要很好地匹配R A I D陣列的數(shù)據(jù)映射和應(yīng)用的訪問(wèn)特性,這幾乎是不可能實(shí)現(xiàn)的。但無(wú)論如何,更多磁盤的陣列擁有更多的磁盤臂,因而,可潛在地提供更好的性能優(yōu)勢(shì)。
然而,在RAID 4陣列中,隨著磁盤數(shù)量和交叉操作數(shù)目的增多,對(duì)校驗(yàn)磁盤的訪問(wèn)速度變得越來(lái)越慢。由于這個(gè)原因,RAID 4子系統(tǒng)支持的磁盤和磁盤臂的數(shù)量受到一定的限制,因此,RAID 4在靈活性和擴(kuò)展性方面就受到限制,這使RAID 4很不常見(jiàn)。
4. 使用回寫緩存和S S D減少RAID 4的寫擁擠
緩解這個(gè)問(wèn)題的方法之一使使用回寫緩存,盡量使每次寫都對(duì)分條中的所有分塊執(zhí)行,或至少對(duì)大部分分塊執(zhí)行。因此,在讀、修改和寫周期期間去除校驗(yàn)數(shù)據(jù)中某一貢獻(xiàn)時(shí),就無(wú)需對(duì)專有校驗(yàn)磁盤執(zhí)行讀操作。
通過(guò)使用這種方式,系統(tǒng)能夠成功地控制它們的回寫緩存,提供極好的性能。N e t w o r k A p p l i a n c e公司的產(chǎn)品F i l e r就是一個(gè)成功例子,它將回寫緩存和R A I D 4一起用于它們的磁盤子系統(tǒng)。
這個(gè)問(wèn)題的另一個(gè)解決方案是將S S D用于RAID 4 的校驗(yàn)磁盤,以提供適合的性能,消除RAID 4中的讀、修改和更新周期的瓶頸。將S S D用作校驗(yàn)驅(qū)動(dòng)器有一個(gè)潛在的問(wèn)題,即如何配置S S D的容量和分條深度,以至于它能夠與陣列中的磁盤容量和深度相吻合。雖然這似乎很平常,但因?yàn)镾 S D是基于內(nèi)存的,而磁盤是一種磁性介質(zhì),兩者的容量匹配并無(wú)內(nèi)在原因。這里關(guān)鍵的一點(diǎn)是在容量上存在或大或小的差異,這應(yīng)該合理地加以解決。當(dāng)然,更精確地說(shuō),S S D的分區(qū)應(yīng)該與RAID 4陣列中的任何分區(qū)相匹配。