1、引言
RAID全稱Redundant Arrays of Inexpensive Disks
/ Redundant Arrays of Independent Disks
,即獨立冗余磁盤陣列。RAID可以通過相關技術(軟件/硬件),將多個較小的磁盤整合成為一個較大的磁盤整體,而且能從某些方面提高數據的讀寫及數據保護。RAID分為不同的等級,各個不同的等級均在數據可靠性及讀寫性能上做了不同的權衡。在實際應用中,可以依據自己的實際需求選擇不同的RAID方案。
2、RAID特性簡述
-
①提高IO能力:磁盤并行讀寫;
-
②提高耐用性:磁盤冗余來實現;
3、RAID實現方式
-
①外接式RAID:通過擴展卡提供適配能力;
-
②內接式RAID:主板集成RAID控制器;
-
③Software RAID:軟件方式所實現的RAID,軟件磁盤陣列;
【注】硬件式raid是在BIOS中實現,無需安裝操作系統;
4、RAID級別
①RAID-0
RAID0稱為條帶化(Striping)存儲,將數據分段存儲于各個磁盤中,讀寫均可以并行處理。因此其讀寫速率為單個磁盤的N倍(N為組成RAID0的磁盤個數),但是卻沒有數據冗余,單個磁盤的損壞會導致數據的不可修復。
如上圖所示,在組成RAID0時,磁盤DiskA/B都會被先切成小區塊(chunck)。當有數據寫入RAID時,數據data會被切成符合小區塊的大小,然后在依次一個一個地放置到DiskA和DiskB中去。由于data已經被切割且放置在不同的磁盤上面,因此每顆磁盤所負責的數據量都降低了。無論是寫入操作,還是今后調用數據時候的讀操作,RAID-0機制都是得讀、寫性能提升。
②RAID-1
鏡像存儲(mirroring),沒有數據校驗。數據被同等地寫入兩個或多個磁盤中,可想而知,寫入速度會比較慢,但讀取速度會比較快。讀取速度可以接近所有磁盤吞吐量的總和,寫入速度受限于最慢的磁盤。RAID1也是磁盤利用率最低的一個。如果用兩個不同大小的磁盤建立RAID1,可以用空間較小的那一個,較大的磁盤多出來的部分可以作他用,不會浪費。
如上圖所示,一份數據傳送到RAID-1之后,會被復制,然后分別寫入各個磁盤里面。由于兩個磁盤的數據一模一樣,所以任何一個磁盤損壞,資料都是可以保存下來的。RAID-1寫的效能不佳,但是數據有冗余作用,而且將來在讀取這部分數據的時候,因為數據在不同的磁盤上,可以有多個進程,讀取同一個數據,讀性能大大提升。
③RAID-5
RAID-5至少需要三顆硬盤才能組成這種類型的磁盤陣列。這種磁盤陣列的數據寫入有點類似RAID-0,不過每個循環的寫入過程中,在每顆磁盤還加入一個同位檢查數據Parity,這個數據會記錄其他磁盤的備份數據,用于當磁盤損壞時候,用于計算生成還原數據的。
如圖所示,每個循環寫入時,都有部分的同位檢查碼parity生成,并且記錄在不同的硬盤上,因此任何一個磁盤損壞的時候,都能依靠另外兩個磁盤恢復數據。
④RAID-6
RAID-6至少需要4塊磁盤。在RAID-5的基礎上,RAID-6校驗盤有兩塊,存兩份,再一次提升了冗余能力??偟目捎每臻g:(總的磁盤數N-2)*min(S1, S2, ...)
。其中min(S1, S2, ...)
指磁盤S1,S2等所有磁盤中,最小的容量;
⑤RAID-10和RAID-01
RAID-0的效能佳但是沒有冗余能力,RAID-1數據安全但是效能欠佳,為了綜合RAID-0和RAID-1的優勢,就有了RAID-10和RAID-01兩種方案。RAID-10是:先讓兩顆磁盤組成RAID-1,并且這樣設定兩組,再讓這兩組RAID-1再組成一組RAID-0。RAID-01是:先讓兩顆磁盤組成RAID-0,并且這樣設定兩組,再讓這兩組RAID-0再組成一組RAID-1。
原創文章,作者:N24_VC,如若轉載,請注明出處:http://www.www58058.com/64606