一、RAID是什么
RAID(Redundant Arrays of Indent Disks)的名稱是獨立磁盤冗余陣列,是一種通過將多塊硬盤按照某種特定的結構組織起來當做一塊硬盤來使用的技術,多塊硬盤不同的組織結構我們稱之為RAID的級別。而RAID技術的特性主要表現在兩個方面:
(1)提高硬盤的IO能力,也就是提高硬盤的讀寫速率;
(2)提高硬盤的耐用性。
二、RAID的級別
(1) RAID-0
RAID-0也叫條帶卷(strip),通過將多塊硬盤并行的組織起來的磁盤組織結構,當我們有要存的數據時,首先是將數據流提交給控制器,控制器將數據流切割成多塊數據(chunk)然后平均分散到磁盤中。加入我們現在有一個10GB大小的數據,在我們對硬盤做RAID-0后,我們每個硬盤只需要吞吐5GB的數據,所以提高了總體硬盤的IO能力。但這種方式的缺陷也很明顯,我們將兩塊硬盤組織成一塊硬盤后,如果其中一塊硬盤損壞那我們的數據也就不能使用了。也就是是說RAID-0再提高了我們硬盤一個總體的IO能力的同時,也降低了總體硬盤的一個耐用性,所以我使用RAID-0方式組織的硬盤我們并不推薦存儲重要的數據。
總結:(硬盤的數量為N)
(1)RAID-0提升了硬盤的讀、寫的速度;
(2)硬盤的可用空間:N*硬盤空間最小的那塊硬盤的大小
(3)該結構沒有容錯能力
(4)最少磁盤數:2個(硬盤數量越多,讀取速度越快,同時冗余性越差)
以下是RAID-0的結構圖:
(2)RAID-1
RAID-1也叫鏡像卷(mirror),是由兩塊硬盤所構成的存儲陣列,當有需要存儲的數據流時,數據流分別寫入兩塊硬盤,當其中一塊硬盤損壞時可以從另外一塊硬盤讀取數據,使用這種方式降低了數據的寫入速度,因為要將數據寫入兩塊硬盤,但是提升了數據的讀取速度,因當兩塊硬盤中的數據是一樣的,可以從兩塊硬盤中分別讀取數據。同時也實現了數據的冗余性,當只壞其中一塊硬盤時,數據可以從另一塊硬盤中讀出。但是這種方式也降低了硬盤的容量。當只有兩塊硬盤時,硬盤的容量僅為一半。
總結:
(1)RAID-1提升數據的讀取速度,同時降低了數據的寫入速度(數據寫入速度最終取決于寫入速度最慢的磁盤);
(2)硬盤的可用空間為1*硬盤空間最小的那塊硬盤的大小
(3)該結構有冗余能力
(4)最少磁盤數:2個或2個以上(磁盤數量越多數據的讀取速度越快,同時冗余性越高,但在這里RAID-1只推薦使用兩塊硬盤)
RAID-1的結構組織如下圖所示:
(3)RAID-4
RAID-4使用三塊或者以上的硬盤組織成RAID,其中一塊做校驗盤無語的盤用于存儲數據。比如當前有三塊硬盤做RAID-4時,其中一塊磁盤作校驗盤,其余兩塊磁盤用于存儲數據。當有數據需要存儲時,第一步仍然是將數據切成chunk然后將數據平均分入除校驗盤以外的兩塊磁盤中,同時這兩塊磁盤中的數據做異或運算用來做校驗碼并將校驗碼存入校驗盤中。當其中一塊硬盤損壞時損壞磁盤的數據可以通過校驗碼計算出:例如
第一塊硬盤的數據 第二塊硬盤的數據 校驗盤的數據
01110 11011 10101
第一塊硬盤損壞,第二塊硬盤的數據和校驗碼做異或運算,結果為:01110 (也就是第一塊硬盤的數據)
總結:這種結構的磁盤有冗余性,但缺點是對校驗盤的訪問壓力很大,所以校驗盤有很大概率會損壞同時因為校驗盤的IO的限制導致我們硬盤讀取速率不高并且硬盤的損壞率也很高。
以下是RAID-4的結構:
(4)RAID-5
RAID-5將校驗碼平均分到各個磁盤中,這樣就將校驗盤的訪問壓力平均分到每一塊磁盤中降低了校驗盤的訪問壓力。這種磁盤的結構既提升了IO同時磁盤又有冗余能力,同時根據第一塊磁盤存放校驗碼還是最后一塊磁盤存放校驗碼。如果將校驗碼當做對稱線,那么使數據看上去可以分為左對稱或右對稱兩種布局,左對稱和右對稱。兩種布局方式的性能和使用機制不同,一般來講RAID-5都是基于左對稱
總結:(N為硬盤的個數)
(1)RAID-5提升了數據的讀取速度和寫入速度;
(2)硬盤的可用空間為N*硬盤空間最小的那塊硬盤的大小
(3)該結構具有冗余能力(最多只能損壞一塊硬盤)
(4)最少磁盤數:3個,或3個以上
以下是RAID-5的結構:
(5)RAID-6
只有當有4塊以上的硬盤時才會使用RAID-6。RAID-6使用兩塊硬盤做校驗盤,另外兩塊硬盤用于存儲數據,同時兩塊校驗盤做循環校驗。硬盤使用這種結構組織既提升了IO能力同時也有冗余能力,只有兩塊硬盤都損壞的情況下,數據才會徹底損壞。
總結:(硬盤的數量為N)
(1)RAID-6的數據讀取能力和數據的寫入能力提升;
(2)硬盤的可用空間為:(N-2)*硬盤空間最小的那塊硬盤的大小;
(3)該結構有冗余能力(最多允許兩塊硬盤損壞);
(4)最少磁盤數:4個或4個以上。
以下是RAID-6的結構:
(6)RAID-10
RAID-10就是先將硬盤兩兩一組做成RAID-1然后再將這一組一組的RAID-1做成RAID-0。而RAID-01就是先將硬盤兩組硬盤,每一組的硬盤單獨做成RAID-0然后這兩組硬盤做成RAID-1。
RAID-10總結:(硬盤的數量為N)
(1)RAID-10的數據的讀取能力和數據的寫入能力提升;
(2)硬盤的可用空間:N*硬盤空間最小的那塊硬盤的大小/2;
(3)該結構有冗余能力,每組鏡像只能損壞一塊硬盤;
(4)最少磁盤數:4個或者4個以上。
RAID-01總結:(硬盤的數量為N)
(1)RAID-01的數據讀取能力和數據的寫入能力提升;
(2)硬盤的可用空間:N*硬盤空間最小的那塊硬盤的大小/2;
(3)該結構有冗余能力,可以損壞任意一組的硬盤;
(4)最少磁盤數:4個或者4個以上。
RAID-10的結構:
RAID-01結構:
原創文章,作者:因為有你,如若轉載,請注明出處:http://www.www58058.com/12946
細節可以看的到差距,贊。圖非常認真給力。贊