每一個RAID級別都有不同的分布模式,其系統(tǒng)的可靠性也有所不同,并影響系統(tǒng)的性能和冗余度。因此,準確分析RAID系統(tǒng)的可靠性或容錯能力,有助于建設投資少、可靠性高的存儲系統(tǒng)。
何謂可靠性?
可靠性在理論上講是概率問題。
一套系統(tǒng)從投入使用開始,連續(xù)運行一段時間后會出現(xiàn)故障,通過維修或更換部件后再投入運行;第二次連續(xù)運行一段時間后,可能又出現(xiàn)故障……設Ti為運行時間,ti為停運時間,∑T表示平均運行時間,它是T1、T2……Tn的代數(shù)平均值,∑t表示平均停運時間,它是t1、t2……tn的代數(shù)平均值。如果令R為可靠性,則R=∑T/(∑T+∑t)。設F為故障率,則F=∑t/(∑T+∑t),且R+F=1。
為分析方便,本文僅討論由相同的RAID級和相同容量的硬盤驅(qū)動器組成的磁盤陣列,并且假設硬盤驅(qū)動器在100%運行情況下,3年內(nèi)的可靠性r為0.95。
RAID及其可靠性
RAID是利用若干硬盤驅(qū)動器加上控制器按一定的組合方式組成的一個大容量、快速響應和高可靠的存儲子系統(tǒng)。硬盤驅(qū)動器的不同組合方式形成了不同級別的RAID陣列。
1.RAID 0——數(shù)據(jù)分割
RAID 0通過2個以上的硬盤驅(qū)動器組成一個磁盤陣列,讀入和寫出的數(shù)據(jù)流被分割為大小相同的塊或條,然后平均分配給各硬盤驅(qū)動器來完成傳輸。雖然組成RAID的磁盤條(Stripe Block)被顯示為同一邏輯磁盤,但實際卻由幾個硬盤驅(qū)動器并行處理,使整個系統(tǒng)的性能大大提高。RAID 0陣列的實際容量為M×n(M為硬盤驅(qū)動器的容量,n為硬盤驅(qū)動器的數(shù)量,下同),磁盤利用率為100%。
RAID 0在所有RAID級別中效率最高,但卻是惟一不具有容錯性的。由于它將數(shù)據(jù)分成塊存儲在不同的硬盤驅(qū)動器內(nèi),從而極大地增加了數(shù)據(jù)的安全隱患,且這種隱患隨著系統(tǒng)中硬盤驅(qū)動器總數(shù)量的增多而加大,因為如果其中有一個硬盤驅(qū)動器中的數(shù)據(jù)被破壞,整個數(shù)據(jù)就不能被正確讀出了。顯然,系統(tǒng)的可靠性值就是每一個單獨硬盤驅(qū)動器可靠性的乘積,即R=rn,對于12塊相同硬盤驅(qū)動器組成的RAID 0陣列,有R=0.9512=54%。
2.RAID 1——磁盤鏡像
如果說RAID 0是追求性能而放棄可靠性的話,那么,RAID 1正好相反,它是追求可靠性而放棄性能的一種解決方案。其做法就是通過磁盤鏡像使所有在給定硬盤驅(qū)動器上寫入的數(shù)據(jù)都被復制到另一個硬盤驅(qū)動器上。RAID 1至少由2個硬盤驅(qū)動器組成,其實際容量為M×n/2,磁盤利用率為50%。
在RAID 1中,2個硬盤驅(qū)動器組成一個鏡像對,在一對鏡像盤中,如果1個發(fā)生錯誤不會損失任何數(shù)據(jù),因為數(shù)據(jù)可以從鏡像盤中恢復。但如果2個硬盤驅(qū)動器都發(fā)生了錯誤,數(shù)據(jù)則將丟失。
|
|