差一點(diǎn)
我們就擦肩而過raid是什么意思了
公益
干貨
有收獲
問題描述
磁盤陣列(disk array)可以有效的提高存儲系統(tǒng)的可靠性和性能,同時也存在顯著的缺點(diǎn),那就是由于多個設(shè)備(磁盤)同時使用,導(dǎo)致了可靠性降低(從概率的角度來講:N個設(shè)備的可靠性是一個設(shè)備的1/N)。
解決方案
RAID(Redundant array of inexpensive disk)就是為了解決這個問題而產(chǎn)生的,RAID通過給磁盤陣列增加冗余磁盤提高了磁盤陣列的可靠性。所謂冗余磁盤,即該磁盤不用于存放實(shí)際數(shù)據(jù),而用來存放一些冗余信息,而這些冗余信息可用來在必要的時候進(jìn)行有效數(shù)據(jù)恢復(fù),從而增加磁盤陣列的可靠性,翻譯成中文應(yīng)該叫廉價磁盤冗余陣列。
在RAID6出現(xiàn)之前,RAID已經(jīng)有了從RAID0~RAID5六個版本。那么我們已經(jīng)有了這么多的RAID方式,提供了相當(dāng)級別的可靠性保護(hù),為什么我們還需要RAID6?在這里,我們這里先比較研究一下幾種比較有代表性的RAID方式:
磁盤冗余家族概覽
目前應(yīng)用最廣泛,支持設(shè)備最多的RAID方式主要是RAID0,RAID1和RAID5
(1)無冗余(RAID0):RAID0實(shí)際上不能算做真正的RAID技術(shù),它只是實(shí)現(xiàn)了磁盤陣列存放數(shù)據(jù)的帶狀分布。雖然提高了大規(guī)模數(shù)據(jù)訪問的性能,但是RAID0并沒有冗余容錯的功能,因?yàn)樗旧聿o冗余,所以可以說這里的RAID0是個誤稱
(2)鏡像(RAID1):RAID1同樣實(shí)現(xiàn)了數(shù)據(jù)的帶狀分布,與RAID0所不同的是,在數(shù)據(jù)寫入一個磁盤的時候,同時在另一個磁盤做相應(yīng)的鏡象。因此,RAID1雖然有數(shù)據(jù)容錯功能,但是其對磁盤的利用率實(shí)在比較底,僅為50%。
(3)奇偶校驗(yàn)(RAID5):相對于RAID1比較,RAID5也是僅僅實(shí)現(xiàn)了單個磁盤的冗余糾錯功能,但是卻大大提高了磁盤的有效利用率。以RAID5(4D+P)為例子來講,使用4塊磁盤存放數(shù)據(jù)位,使用1塊磁盤存放校驗(yàn)位。其基本原理是這樣的:根據(jù)條帶化的數(shù)據(jù)4D(使用四位數(shù)據(jù))生成一位的校驗(yàn)信息,存放在第五塊磁盤中。
生成P校驗(yàn)位的公式一般是這樣的:P = D1 ⊕ D2 ⊕ D3P為校驗(yàn)位,D1~D3分別代表三個數(shù)據(jù)位,⊕表示異或操作??梢钥吹?當(dāng)D1,D2,D3中其余的一個數(shù)據(jù)丟失的時候,可以利用其余的三個數(shù)據(jù)位和校驗(yàn)位P進(jìn)行恢復(fù),具體的恢復(fù)公式如下:例如,當(dāng)D1丟失的時候,D1 = D2 ⊕ D3 ⊕ P同時可以看到,當(dāng)兩快磁盤出現(xiàn)故障的時候,RAID5無法恢復(fù)。
RAID6:突破磁盤冗余局限
RAID5已經(jīng)提供了一定程度的可靠性,然而也犧牲了一定的讀取速度。特別是在RAID重構(gòu)作業(yè)中,大量的數(shù)據(jù)讀寫操作增加硬盤的負(fù)擔(dān),舊的硬盤更容易發(fā)生故障。RAID5的局限性還表現(xiàn)在RAID5僅能在一塊硬盤發(fā)生故障的情況下修復(fù)數(shù)據(jù),如果2塊硬盤同時發(fā)生故障,RAID5則無能為力。
以前,兩塊盤同時壞的情況是小概率事件,幾乎不可能發(fā)生。但是近來隨著光纖(FC)盤和satA盤的容量和密度不斷增加,(歡迎關(guān)注公眾號raid是什么意思:網(wǎng)絡(luò)工程師阿龍)使得RAID 5的重建時間也不斷增加。兩塊硬盤同時損壞的概率也大幅增加,在企業(yè)級存儲上,這種風(fēng)險必須得到重視。所以RAID6應(yīng)需誕生了。
RAID6同RAID5最大的區(qū)別就是在RAID5的基礎(chǔ)上除了具有P校驗(yàn)位以外,還加入了第2個校驗(yàn)位Q位。以RAID6(6D+1P+1Q)為例子,這個系統(tǒng)需要8塊硬盤,其中6塊用于存放數(shù)據(jù),1塊用于存放P校驗(yàn)位,1塊用于存放Q校驗(yàn)位。當(dāng)然,我得又一次強(qiáng)調(diào),并非某個具體的獨(dú)立的盤全部用來存放P校驗(yàn)信息,另外一個Q校驗(yàn)信息。而是對于某個位組(6個數(shù)據(jù)位+P位+Q位)來說,采用某種原則,6塊盤上存放數(shù)據(jù)位,1塊盤存放P位,1塊盤用來存放Q位。
其數(shù)學(xué)原理如下:校驗(yàn)位的生成:
P = D1 ⊕ D2 ⊕ D3
Q = GF(D1) ⊕ GF(D2) ⊕ GF(D3)
注raid是什么意思:
D1~D3:條帶化的數(shù)據(jù)
P:P校驗(yàn)位
Q:Q校驗(yàn)位
⊕:異或操作
GF(D1):對D1位進(jìn)行Galois Field變換。
當(dāng)一塊磁盤出現(xiàn)數(shù)據(jù)錯誤或者丟失的時候,恢復(fù)方法同RAID5,無須使用Q校驗(yàn)位。當(dāng)兩塊磁盤上的數(shù)據(jù)出現(xiàn)錯誤或者丟失的時候,恢復(fù)方法為:利用上邊給出的P,Q的生成公式,聯(lián)立方程組,無論受損的數(shù)據(jù)是否包括P或者Q,總是能夠解出損失的兩位的數(shù)據(jù)。
RAID6與RAID5數(shù)據(jù)安全性比較:
針對同樣是8個磁盤,數(shù)據(jù)利用率同樣是75%,但分別用RAID5和RAID6進(jìn)行構(gòu)建的磁盤陣列情況進(jìn)行比較。一個用兩個獨(dú)立的RAID5(3D+1P)構(gòu)建;另一個用RAID6(6D+1P+1Q)構(gòu)建,應(yīng)用伯努利(Bernoulli)概率分布分析如下( 假設(shè)單個磁盤在10年內(nèi)出現(xiàn)故障的概率是):
兩個獨(dú)立的RAID5(3D+1P)構(gòu)建的系統(tǒng)數(shù)據(jù)安全的概率分析:
在三種情況下,該系統(tǒng)的數(shù)據(jù)是安全的:
1. 8個磁盤都沒有損壞的情況,概率是
2. 8個磁盤只有一個損壞的情況,概率是
3. 兩個獨(dú)立RAID5(3D+1P)系統(tǒng)中,各損壞一個磁盤的情況,概率是
所以,兩個獨(dú)立的RAID5(3D+1P)構(gòu)建的系統(tǒng)數(shù)據(jù)安全的總概率是
一個RAID6(6D+1P+1Q)構(gòu)建的系統(tǒng)數(shù)據(jù)安全的概率分析:
1. 8個磁盤都沒有損壞的情況,概率是 [與上個系統(tǒng)相同]
2. 8個磁盤只有一個損壞的情況,概率是 [與上個系統(tǒng)相同]
3. 8個磁盤中有兩個損壞的情況,概率是
所以,一個RAID6(6D+1P+1Q)構(gòu)建的系統(tǒng)數(shù)據(jù)安全的總概率是
實(shí)際一點(diǎn),假設(shè)單個磁盤在10年內(nèi)出現(xiàn)故障的概率是 ,則用RAID5構(gòu)建的系統(tǒng),十年內(nèi)不出故障的安全概率為99.881629%;對比用RAID6構(gòu)建的系統(tǒng),十年內(nèi)不出故障的安全概率為99.994607%。
可見,RAID6的數(shù)據(jù)安全級別是相當(dāng)高的。當(dāng)然RAID5的安全性也相當(dāng)好了。從上面數(shù)據(jù)看起來,兩者相差不大。(歡迎關(guān)注公眾號:網(wǎng)絡(luò)工程師阿龍)但是對于出現(xiàn)故障的概率RAID5是0.118371%, RAID6是0.005393%.這樣看來,提高還是很大的。隨著磁盤的容量越來越大導(dǎo)致數(shù)據(jù)出錯概率 的增大。兩者的差距還會進(jìn)一步加大,RAID6的優(yōu)勢就更明顯了。而當(dāng)磁盤容量增至20多TB的時候,RAID6的安全性比RAID5已經(jīng)高出1000倍左右。
總結(jié)篇
RAID6與RAID5區(qū)別總結(jié)如下:
RAID6是在RAID5的改進(jìn),RAID6不僅能在一個磁盤離線的情況下將數(shù)據(jù)恢復(fù)(使用和RAID5一樣的異或校驗(yàn)),而且由于用了兩個盤作為糾錯盤,所以能應(yīng)付兩個磁盤同時離線的情況。
1、冗余和數(shù)據(jù)恢復(fù)能力
2、讀寫性能差別
3、硬盤利用率
在使用大數(shù)據(jù)塊的情況下,RAID6的隨機(jī)讀取性能很好;因?yàn)椴坏诿坑脖P上寫入校驗(yàn)數(shù)據(jù)而且要在專門的校驗(yàn)硬盤上寫入數(shù)據(jù),RAID6的隨機(jī)寫入性能很差。RAID6的持續(xù)寫入性能一般,在使用小數(shù)據(jù)塊時表現(xiàn)很好??傮w而言,RAID6擁有更快速的讀取性能,更高的容錯能力。但同時,RAID6也存在寫入速度很慢的缺點(diǎn),RAID控制器在設(shè)計上更加復(fù)雜,成本更高。
聲明:來源于華為案例庫raid是什么意思,在此致謝。
編輯:網(wǎng)絡(luò)工程師阿龍
end