關(guān)于Raid0,Raid1,Raid5,Raid10的總結(jié)
關(guān)于Raid0,Raid1,Raid5,Raid10的總結(jié)
RAID0
定義:
RAID 0又稱為Stripe或Striping,它代表了所有RAID級(jí)別中最高的存儲(chǔ)性能。RAID 0提高存儲(chǔ)性能的原理是把連續(xù)的數(shù)據(jù)分散到多個(gè)磁盤上存取,這樣,系統(tǒng)有數(shù)據(jù)請(qǐng)求就可以被多個(gè)磁盤并行的執(zhí)行,每個(gè)磁盤執(zhí)行屬于它自己的那部分?jǐn)?shù)據(jù)請(qǐng)求。這種數(shù)據(jù)上的并行操作可以充分利用總線的帶寬,顯著提高磁盤整體存取性能。
工作原理:
系統(tǒng)向三個(gè)磁盤組成的邏輯硬盤(RAID0 磁盤組)發(fā)出的I/O數(shù)據(jù)請(qǐng)求被轉(zhuǎn)化為3項(xiàng)操作,其中的每一項(xiàng)操作都對(duì)應(yīng)于一塊物理硬盤。通過(guò)建立RAID 0,原先順序的數(shù)據(jù)請(qǐng)求被分散到所有的三塊硬盤中同時(shí)執(zhí)行。從理論上講,三塊硬盤的并行操作使同一時(shí)間內(nèi)磁盤讀寫速度提升了3倍。 但由于總線帶寬等多種因素的影響,實(shí)際的提升速率肯定會(huì)低于理論值,但是,大量數(shù)據(jù)并行傳輸與串行傳輸比較,提速效果顯著顯然毋庸置疑。
優(yōu)缺點(diǎn):
讀寫性能是所有RAID級(jí)別中最高的。
RAID 0的缺點(diǎn)是不提供數(shù)據(jù)冗余,因此一旦用戶數(shù)據(jù)損壞,損壞的數(shù)據(jù)將無(wú)法得到恢復(fù)。RAID0運(yùn)行時(shí)只要其中任一塊硬盤出現(xiàn)問(wèn)題就會(huì)導(dǎo)致整個(gè)數(shù)據(jù)的故障。一般不建議企業(yè)用戶單獨(dú)使用。
總結(jié):
磁盤空間使用率:100%,故成本最低。
讀性能:N*單塊磁盤的讀性能
寫性能:N*單塊磁盤的寫性能
冗余:無(wú),任何一塊磁盤損壞都將導(dǎo)致數(shù)據(jù)不可用。
RAID1
定義:
RAID 1通過(guò)磁盤數(shù)據(jù)鏡像實(shí)現(xiàn)數(shù)據(jù)冗余,在成對(duì)的獨(dú)立磁盤上產(chǎn)生互為備份的數(shù)據(jù)。當(dāng)原始數(shù)據(jù)繁忙時(shí),可直接從鏡像拷貝中讀取數(shù)據(jù),因此RAID 1可以提高讀取性能。RAID 1是磁盤陣列中單位成本最高的,但提供了很高的數(shù)據(jù)安全性和可用性。當(dāng)一個(gè)磁盤失效時(shí),系統(tǒng)可以自動(dòng)切換到鏡像磁盤上讀寫,而不需要重組失效的數(shù)據(jù)。
工作原理:
RAID1是將一個(gè)兩塊硬盤所構(gòu)成RAID磁盤陣列,其容量?jī)H等于一塊硬盤的容量,因?yàn)榱硪粔K只是當(dāng)作數(shù)據(jù)“鏡像”。RAID1磁盤陣列顯然是最可靠的一種陣列,因?yàn)樗偸潜3忠环萃暾臄?shù)據(jù)備份。它的性能自然沒(méi)有RAID0磁盤陣列那樣好,但其數(shù)據(jù)讀取確實(shí)較單一硬盤來(lái)的快,因?yàn)閿?shù)據(jù)會(huì)從兩塊硬盤中較快的一塊中讀出。RAID1磁盤陣列的寫入速度通常較慢,因?yàn)閿?shù)據(jù)得分別寫入兩塊硬盤中并做比較。RAID1磁盤陣列一般支持“熱交換”,就是說(shuō)陣列中硬盤的移除或替換可以在系統(tǒng)運(yùn)行時(shí)進(jìn)行,無(wú)須中斷退出系統(tǒng)。RAID1磁盤陣列是十分安全的,不過(guò)也是較貴一種RAID磁盤陣列解決方案,因?yàn)閮蓧K硬盤僅能提供一塊硬盤的容量。RAID1磁盤陣列主要用在數(shù)據(jù)安全性很高,而且要求能夠快速恢復(fù)被破壞的數(shù)據(jù)的場(chǎng)合。
在這里,需要注意的是,讀只能在一塊磁盤上進(jìn)行,并不會(huì)進(jìn)行并行讀取,性能取決于硬盤中較快的一塊。寫的話通常比單塊磁盤要慢,雖然是并行寫,即對(duì)兩塊磁盤的寫入是同時(shí)進(jìn)行的,但因?yàn)橐容^兩塊硬盤中的數(shù)據(jù),所以性能比單塊磁盤慢。
優(yōu)缺點(diǎn):
RAID1通過(guò)硬盤數(shù)據(jù)鏡像實(shí)現(xiàn)數(shù)據(jù)的冗余,保護(hù)數(shù)據(jù)安全,在兩塊盤上產(chǎn)生互為備份的數(shù)據(jù),當(dāng)原始數(shù)據(jù)繁忙時(shí),可直接從鏡像備份中讀取數(shù)據(jù),因此RAID1可以提供讀取性能。
RAID1是硬盤中單位成本最高的,但提供了很高的數(shù)據(jù)安全性和可用性,當(dāng)一個(gè)硬盤失效時(shí),系統(tǒng)可以自動(dòng)切換到鏡像硬盤上讀/寫,并且不需要重組失效的數(shù)據(jù)。
總結(jié):
磁盤空間使用率:50%,故成本最高。
讀性能:只能在一個(gè)磁盤上讀取,取決于磁盤中較快的那塊盤
寫性能:兩塊磁盤都要寫入,雖然是并行寫入,但因?yàn)橐葘?duì),故性能單塊磁盤慢。
冗余:只要系統(tǒng)中任何一對(duì)鏡像盤中有一塊磁盤可以使用,甚至可以在一半數(shù)量的硬盤出現(xiàn)問(wèn)題時(shí)系統(tǒng)都可以正常運(yùn)行。
RAID 5
定義:
RAID 5是RAID 0和RAID 1的折中方案。RAID 5具有和RAID0相近似的數(shù)據(jù)讀取速度,只是多了一個(gè)奇偶校驗(yàn)信息,寫入數(shù)據(jù)的速度比對(duì)單個(gè)磁盤進(jìn)行寫入操作稍慢。同時(shí)由于多個(gè)數(shù)據(jù)對(duì)應(yīng)一個(gè)奇偶校驗(yàn)信息,RAID5的磁盤空間利用率要比RAID 1高,存儲(chǔ)成本相對(duì)較低,是目前運(yùn)用較多的一種解決方案。
工作原理:
RAID5把數(shù)據(jù)和相對(duì)應(yīng)的奇偶校驗(yàn)信息存儲(chǔ)到組成RAID5的各個(gè)磁盤上,并且奇偶校驗(yàn)信息和相對(duì)應(yīng)的數(shù)據(jù)分別存儲(chǔ)于不同的磁盤上,其中任意N-1塊磁盤上都存儲(chǔ)完整的數(shù)據(jù),也就是說(shuō)有相當(dāng)于一塊磁盤容量的空間用于存儲(chǔ)奇偶校驗(yàn)信息。因此當(dāng)RAID5的一個(gè)磁盤發(fā)生損壞后,不會(huì)影響數(shù)據(jù)的完整性,從而保證了數(shù)據(jù)安全。當(dāng)損壞的磁盤被替換后,RAID還會(huì)自動(dòng)利用剩下奇偶校驗(yàn)信息去重建此磁盤上的數(shù)據(jù),來(lái)保持RAID5的高可靠性。
做raid 5陣列所有磁盤容量必須一樣大,當(dāng)容量不同時(shí),會(huì)以最小的容量為準(zhǔn)。 最好硬盤轉(zhuǎn)速一樣,否則會(huì)影響性能,而且可用空間=磁盤數(shù)n-1,Raid 5 沒(méi)有獨(dú)立的奇偶校驗(yàn)盤,所有校驗(yàn)信息分散放在所有磁盤上, 只占用一個(gè)磁盤的容量。
總結(jié):
磁盤空間利用率:(N-1)/N,即只浪費(fèi)一塊磁盤用于奇偶校驗(yàn)。
讀性能:(n-1)*單塊磁盤的讀性能,接近RAID0的讀性能。
寫性能:比單塊磁盤的寫性能要差(這點(diǎn)不是很明白,不是可以并行寫入么?)
冗余:只允許一塊磁盤損壞。
RAID10
定義:
RAID10也被稱為鏡象陣列條帶。象RAID0一樣,數(shù)據(jù)跨磁盤抽。幌驲AID1一樣,每個(gè)磁盤都有一個(gè)鏡象磁盤, 所以RAID 10的另一種會(huì)說(shuō)法是 RAID 0+1。RAID10提供100%的數(shù)據(jù)冗余,支持更大的卷尺寸,但價(jià)格也相對(duì)較高。對(duì)大多數(shù)只要求具有冗余度而不必考慮價(jià)格的應(yīng)用來(lái)說(shuō),RAID10提供最好的性能。使用RAID10,可以獲得更好的可靠性,因?yàn)榧词箖蓚(gè)物理驅(qū)動(dòng)器發(fā)生故障(每個(gè)陣列中一個(gè)),數(shù)據(jù)仍然可以得到保護(hù)。RAID10需要4 + 2*N 個(gè)磁盤驅(qū)動(dòng)器(N >=0), 而且只能使用其中一半(或更小, 如果磁盤大小不一)的磁盤用量, 例如 4 個(gè) 250G 的硬盤使用RAID10 陣列, 實(shí)際容量是 500G。
實(shí)現(xiàn)原理:
Raid10其實(shí)結(jié)構(gòu)非常簡(jiǎn)單,首先創(chuàng)建2個(gè)獨(dú)立的Raid1,然后將這兩個(gè)獨(dú)立的Raid1組成一個(gè)Raid0,當(dāng)往這個(gè)邏輯Raid中寫數(shù)據(jù)時(shí),數(shù)據(jù)被有序的寫入兩個(gè)Raid1中。磁盤1和磁盤2組成一個(gè)Raid1,磁盤3和磁盤4又組成另外一個(gè)Raid1;這兩個(gè)Raid1組成了一個(gè)新的Raid0。如寫在硬盤1上的數(shù)據(jù)1、3、5、7,寫在硬盤2中則為數(shù)據(jù)1、3、5、7,硬盤中的數(shù)據(jù)為0、2、4、6,硬盤4中的數(shù)據(jù)則為0、2、4、6,因此數(shù)據(jù)在這四個(gè)硬盤上組合成Raid10,且具有raid0和raid1兩者的特性。
雖然Raid10方案造成了50%的磁盤浪費(fèi),但是它提供了200%的速度和單磁盤損壞的數(shù)據(jù)安全性,并且當(dāng)同時(shí)損壞的磁盤不在同一Raid1中,就能保證數(shù)據(jù)安全性。假如磁盤中的某一塊盤壞了,整個(gè)邏輯磁盤仍能正常工作的。
當(dāng)我們需要恢復(fù)RAID10中損壞的磁盤時(shí),只需要更換新的硬盤,按照RAID10的工作原理來(lái)進(jìn)行數(shù)據(jù)恢復(fù),恢復(fù)數(shù)據(jù)過(guò)程中系統(tǒng)仍能正常工作。原先的數(shù)據(jù)會(huì)同步恢復(fù)到更換的硬盤中。
總結(jié):
磁盤空間利用率:50%。
讀性能:N/2*單塊硬盤的讀性能
寫性能:N/2*單塊硬盤的寫性能
冗余:只要一對(duì)鏡像盤中有一塊磁盤可以使用就沒(méi)問(wèn)題。