RAID技術既可保障數(shù)據(jù)的安全,也可以提供更有效的數(shù)據(jù)存儲和硬盤容量利用率。在多張盤上存取數(shù)據(jù),I/O操作可以用一個平衡交迭的方式來提高性能。用多個硬盤驅動器可延長平均無故障時間(MTBF),當可以冗余存儲數(shù)據(jù)時,能增加整個系統(tǒng)的容錯性能。為滿足利用率,性能和數(shù)據(jù)保護等要求,有幾種不同的RAID方式,包括RAID0,RAID1,RAID5和一些復合方式,如RAID10,RAID50等可供選擇。RAID0可以提供最高的效能,但是沒有容錯功能。RAID1可以在兩個硬盤上進行鏡像存儲數(shù)據(jù),但是兩個硬盤上存儲的資料都是一樣的。RAID5不是把校驗碼存在一個硬盤上。所以當一個硬盤的數(shù)據(jù)丟失時,控制器會自動從每一個具有校驗碼的硬盤中產生損壞的硬盤數(shù)據(jù)。因此要根據(jù)用戶的不同需求來選擇不RAID方式。
技術的更新造就了SAS和SATA的低廉實用性;高容量的硬盤驅動,可以支持低成本,高容量的盤陣來保護你的數(shù)據(jù)。但是,相比較光纖通道和SCSI信道的保險性能,SATA就比較沒有優(yōu)勢了。因為在使用RAID5時,一個硬盤壞掉了,備援硬盤會接管重建;但兩個硬盤同時壞掉了,就會引起數(shù)據(jù)丟失或系統(tǒng)崩潰。因此,針對這些可靠性小的普通硬盤,高級的保護數(shù)據(jù)方式就需要能夠預防多個硬盤的失靈,并且能提供較高的數(shù)據(jù)容錯功能和高有效性。
引人注目的技術:RAID6
RAID6是RAID5的升級,通過第二層分布式的校驗碼來實現(xiàn)高容錯性。(雙重校驗)。 除了多了一層分布式的校驗碼以外,數(shù)據(jù)像RAID5一樣被分散地stripe到每個硬盤。因為RAID5只有一套校驗碼,所以如果兩個硬盤都壞掉或在重建時發(fā)生錯誤,那么數(shù)據(jù)就會永遠丟失。但是如果有了RAID6的保護,就算壞掉兩個硬盤,數(shù)據(jù)也可以被復原。RAID6不僅能使表現(xiàn)沖突和容量消耗達到最小,而且能夠提供非常高的數(shù)據(jù)容錯度,并且能夠支持多個硬盤同時發(fā)生故障。
校驗
為什么用RAID6
根據(jù)上面的描述,RAID5在掉一塊盤時,不用停機還能保護數(shù)據(jù)。但是,如果掉兩塊盤,數(shù)據(jù)就會丟失。雖然掉兩塊盤比掉一塊盤的可能性要小,但是當涉及到下面的幾個原因,掉兩盤的可能性還是會增大的:
1. SATA硬盤應用量的增長:SATA硬盤有低成本,大容量的好處,但是,其平均無故障時間(MTBF)比FC和SCSI硬盤的都短。這些硬盤使用率的增大,使同一時間掉兩塊盤的可能性變大了。
2. 容量大,重建時間過長:在一塊硬盤中,如果容量越大,就意味著如果這塊盤壞掉,需要重建數(shù)據(jù)的時間就越長。系統(tǒng)在執(zhí)行重建任務時就要經受巨大的負載,并且很有可能因此損壞另一塊盤或者是在長時間的重建過程中掉第二塊盤。
3. 人為錯誤:當一塊盤壞掉時,維護人員會用一塊新盤來取代這個壞掉的盤。但一旦維護人員不小心拔錯了硬盤,就會造成同時掉兩塊盤的狀況,RAID數(shù)據(jù)將丟失。
4. 所用硬盤數(shù)量的增加,很大程度上提高了硬盤預期故障發(fā)生率:當盤陣中增加硬盤的數(shù)量時,很大程度上提高了硬盤預期故障發(fā)生率。在系統(tǒng)用備援硬盤恢復數(shù)據(jù)時,其余的硬盤也增加了故障發(fā)生率。因此系統(tǒng)內硬盤個數(shù)越多時,就越需要提升數(shù)據(jù)冗余的安全性。
RAID6技術恰好提供了可同時損壞兩塊盤的容錯度,很明顯,數(shù)據(jù)存儲急需RAID6 的廣泛應用。
RAID6是如何工作的
RAID6的運算法則是用兩個奇偶數(shù)據(jù)執(zhí)行,P和Q,用兩個線性的獨立等式表示。第一個奇偶數(shù)據(jù)P,和RAID5中的奇偶數(shù)據(jù)一樣,通過等式計算出:
RAID6的數(shù)據(jù)恢復
Q的重建和一個數(shù)據(jù)塊壞掉
這個重建程序和RAID5的重建是相似的。那個壞掉的數(shù)據(jù)塊將從奇偶數(shù)據(jù)P和所有存有丟失數(shù)據(jù)的塊中取出重建。這個過程很像RAID5的重建程序。當數(shù)據(jù)塊重建完成之后,奇偶數(shù)據(jù)Q能重新生成。
舉個例子,假設在Figure1中的奇偶數(shù)據(jù)Q1和數(shù)據(jù)塊D13壞掉了,D13的數(shù)據(jù)就可以從奇偶數(shù)據(jù)P1和其它數(shù)據(jù)塊中恢復。
重建兩個壞掉的數(shù)據(jù)塊
從兩個壞掉的硬盤里恢復數(shù)據(jù)的過程是件非常復雜的事情。根據(jù)這個奇偶校驗方程式,由兩個等式和兩個未知數(shù),用矩陣求逆,這兩個未知數(shù)就能求出來,丟失的數(shù)據(jù)就能恢復。
假設數(shù)據(jù)塊D13 和D14是已經丟失的。
根據(jù)這個奇偶校驗方程式:
RAID配置的權衡
當配置一臺盤陣時,系統(tǒng)管理器必須對高性能和數(shù)據(jù)安全進行全方位的權衡。例如,如果高性能是優(yōu)先考慮的,RAID10就是最好的選擇。如果數(shù)據(jù)的保護是首要的,RAID5就是最好的選擇。但是,如在本文里描述的一樣,,在大容量的硬盤中,特別是在使用SATA硬盤的情況下,發(fā)生同時掉兩塊盤的可能性較高,RAID6可以提供重要的保護并防止數(shù)據(jù)丟失的性能就很值得考慮采用。與RAID5相比,雖然RAID6有性能方面的損失,但是為改善數(shù)據(jù)安全,這是可以接受的。
優(yōu)化解決方案:Infortrend RAID6
Infortrend公司已開發(fā)出了能以性能損失最小來提供最高容錯度的一款高效率的新RAID6,應用在其盤陣中。RAID6具有允許同時掉兩塊硬盤的容錯度,或在降級的情況下,允許其它硬盤出現(xiàn)壞塊。在以上的情況下,控制器可以在不中斷I/O的情況下恢復壞盤中丟失的數(shù)據(jù)。
在目前的RAID6解決方案中,Infortrend的RAID6具有重大的性能改善的特點。客戶只需要接受比RAID5多百分之十到百分之十五的性能損失,卻可以使數(shù)據(jù)得到雙層校驗的保護,這是非常值得的,客戶對此大為贊賞.
總結
RAID6提供了一個極高水準的錯誤容許度,并且在沒有宕機和數(shù)據(jù)丟失的情況下允許同時掉兩塊盤,對于那些對數(shù)據(jù)的容錯度要求比較高的客戶來講,RAID6是一個完美的解決方案。