目前磁盤陣列的應用已經非常普遍,很多個人電腦用戶也嘗試利用機器的RAID功能來提升磁盤的讀寫性能。對于企業用戶來說,磁盤陣列的使用就更為普及,機器板載的RAID0、RAID1難以滿足這些用戶的應用需要,這也使得他們在購置服務器,通常會選配能夠提供更多RAID級別的獨立磁盤陣列卡。
現在的RAID控制卡基本上是LSI的天下,就最近3、4年所測試過的服務器來看,所配的磁盤陣列卡基本都采用了LSI的產品,該品牌陣列卡雖然型號眾多,不過在設置界面上卻大同小異,因此通過LSI MegaRAID SAS 8708EM2的設置為例,大家一方面可以了解LSI SAS陣列卡的使用方法,同時也可以類推到其它磁盤陣列卡的使用上。
▲LSI MegaRAID SAS 8708EM2陣列卡
在介紹陣列如何使用之前,我們先來了解一下幾種最為常用的RAID方式的工作原理,以便于用戶在進行陣列卡設置時,根據需要有目的進行選擇。
RAID 0
RAID 0又稱為Stripe(條帶化)或Striping,它的存儲性能是RAID級別中最高的。RAID 0是將連續的數據分散到多個磁盤上存取,當系統有數據請求就可以被多個磁盤并行的執行,每個磁盤執行屬于它自己的那部分數據請求。這種數據上的并行操作可以充分利用總線的帶寬,顯著提高磁盤整體存取性能。
RAID 0工作原理圖
以上圖為例,利用3塊硬盤來做RAID 0陣列,系統向三個磁盤組成的邏輯磁盤(RADI 0 磁盤組)發出的I/O數據請求被轉化為3項操作,其中的每一項操作都對應于一塊物理硬盤。我們從圖中可以清楚的看到通過建立RAID 0,原先順序的數據請求被分散到所有的三塊硬盤中同時執行。從理論上講,三塊硬盤的并行操作使同一時間內磁盤讀寫速度提升了3倍。 但由于總線帶寬等多種因素的影響,實際的提升速率會低于理論值。
RAID 0的優點是可以提供非常高的磁盤讀寫性能,但是卻并不提供數據冗余,當一塊硬盤發生故障,整個數據都將無法恢復。 RAID 0適用于對性能有較高要求,且對數據安全性要求不高的領域,如個人用戶,采用RAID 0可以大幅提高硬盤的存儲性能。
RAID 1
RAID 1又稱為Mirror或Mirroring(鏡像),它可以最大限度的保證用戶數據的可用性和可修復性。RAID 1的操作方式是把用戶寫入磁盤的數據百分之百地自動復制到另外一個硬盤上。
RAID 1工作原理圖
以上圖為例,當要進行數據讀取時,系統先從RAID 0的源盤讀取數據,如果可以成功讀取,則系統不去訪問備份盤上的數據,如果讀取源盤失敗,系統會自動轉而讀取備份盤上的數據。由于對所存的數據進行百分之百的備份,因此在所有RAID級別中,RAID 1可以提供最高的數據安全性。不過這樣也會降低存儲空間的利用率,存儲的成本較高。
RAID 10
RAID 10是利用以上所介紹過的RAID 0和RAID 1來實現的一種組合應用方式。我們用4塊磁盤組成RAID 10為例來看看它的具體工作原理。它是將4塊磁盤兩兩分組,每組中兩塊磁盤的數據互為備份,系統要進行數據存儲或讀寫時,會將連續的數據分散到兩個組來存取。
RAID10工作原理圖
RAID 10是一種存儲性能和數據安全二者兼顧的方案。它在提供與RAID 1同樣數據安全的同時,也提供了與RAID 0近似的存儲性能。不過它的缺點與RAID一樣,具有存儲成本較高的特點。
RAID 5
RAID 5 是一種兼顧性能、數據安全和存儲成本的陣列方式。以利用4塊磁盤組成RAID 5為例,在下圖中,P0為D0,D1和D2的奇偶校驗信息,其它以此類推。圖中可以看出,RAID 5并不對存儲的數據進行備份,而是把數據和相對應的奇偶校驗信息存儲到組成RAID5的各個磁盤上,當陣列中某一個磁盤數據發生損壞后,利用剩下的數據和相應的奇偶校驗信息就可以恢復被損壞的數據。
RAID5工作原理圖
可以看出,RAID 5能夠為系統提供數據安全保障,但安全程度比做鏡像備份低,而磁盤空間的利用率又比鏡像備份要高。而且RAID 5具有很好的數據讀取速度。由于多個數據才對應一個奇偶校驗信息,因此RAID 5方式的存儲成本也相對較低。 正是由于RAID 5有如此多的優點,因而在做磁盤陣列時,通常會被優先考慮。
原文鏈接:http://server.it168.com/a2011/0222/1159/000001159317.shtml