| RAID是英文Redundant Array of Inexpensive Disks的縮寫,中文簡稱為廉價磁盤冗余陣列。RAID就是一種由多塊硬盤構成的冗余陣列。雖然RAID包含多塊硬盤,但是在操作系統(tǒng)下是作為一個獨立的大型存儲設備出現(xiàn)。利用RAID技術于存儲系統(tǒng)的好處主要有以下三種: 通過把多個磁盤組織在一起作為一個邏輯卷提供磁盤跨越功能; 通過把數據分成多個數據塊(Block)并行寫入/讀出多個磁盤以提高訪問磁盤的速度; 通過鏡像或校驗操作提供容錯能力; 最初開發(fā)RAID的主要目的是節(jié)省成本,當時幾塊小容量硬盤的價格總和要低于大容量的硬盤。目前來看RAID在節(jié)省成本方面的作用并不明顯,但是RAID可以充分發(fā)揮出多塊硬盤的優(yōu)勢,實現(xiàn)遠遠超出任何一塊單獨硬盤的速度和吞吐量。除了性能上的提高之外,RAID還可以提供良好的容錯能力,在任何一塊硬盤出現(xiàn)問題的情況下都可以繼續(xù)工作,不會受到損壞硬盤的影響。 RAID技術分為幾種不同的等級,分別可以提供不同的速度,安全性和性價比。根據實際情況選擇適當的RAID級別可以滿足用戶對存儲系統(tǒng)可用性、性能和容量的要求。常用的RAID級別有以下幾種:NRAID,JBOD,RAID0,RAID1,RAID0+1,RAID3,RAID5等。目前經常使用的是RAID5和RAID(0+1)。 NRAID NRAID即Non-RAID,所有磁盤的容量組合成一個邏輯盤,沒有數據塊分條(no block stripping)。NRAID不提供數據冗余。要求至少一個磁盤。 JBOD JBOD代表Just a Bunch of Drives,磁盤控制器把每個物理磁盤看作獨立的磁盤,因此每個磁盤都是獨立的邏輯盤。JBOD也不提供數據冗余。要求至少一個磁盤。 RAID 0 RAID 0即Data Stripping(數據分條技術)。整個邏輯盤的數據是被分條(stripped)分布在多個物理磁盤上,可以并行讀/寫,提供最快的速度,但沒有冗余能力。要求至少兩個磁盤。我們通過RAID 0可以獲得更大的單個邏輯盤的容量,且通過對多個磁盤的同時讀取獲得更高的存取速度。RAID 0首先考慮的是磁盤的速度和容量,忽略了安全,只要其中一個磁盤出了問題,那么整個陣列的數據都會不保了。 RAID 1 RAID 1,又稱鏡像方式,也就是數據的冗余。在整個鏡像過程中,只有一半的磁盤容量是有效的(另一半磁盤容量用來存放同樣的數據)。同RAID 0相比,RAID 1首先考慮的是安全性,容量減半、速度不變。 RAID 0+1 為了達到既高速又安全,出現(xiàn)了RAID 10(或者叫RAID 0+1),可以把RAID 10簡單地理解成由多個磁盤組成的RAID 0陣列再進行鏡像。 RAID 3和RAID 5 RAID 3和RAID 5都是校驗方式。RAID 3的工作方式是用一塊磁盤存放校驗數據。由于任何數據的改變都要修改相應的數據校驗信息,存放數據的磁盤有好幾個且并行工作,而存放校驗數據的磁盤只有一個,這就帶來了校驗數據存放時的瓶頸。RAID 5的工作方式是將各個磁盤生成的數據校驗切成塊,分別存放到組成陣列的各個磁盤中去,這樣就緩解了校驗數據存放時所產生的瓶頸問題,但是分割數據及控制存放都要付出速度上的代價。 按照硬盤接口的不同,RAID分為SCSI RAID,IDE RAID和SATA RAID。其中,SCSI RAID主要用于要求高性能和高可靠性的服務器/工作站,而臺式機中主要采用IDE RAID和SATA RAID。 以前RAID功能主要依靠在主板上插接RAID控制卡實現(xiàn),而現(xiàn)在越來越多的主板都添加了板載RAID芯片直接實現(xiàn)RAID功能,目前主流的RAID芯片有HighPoint的HTP372和Promise的PDC20265R,而英特爾更進一步,直接在主板芯片組中支持RAID,其ICH5R南橋芯片中就內置了SATA RAID功能,這也代表著未來板載RAID的發(fā)展方向---芯片組集成RAID。 Matrix RAID: Matrix RAID即所謂的“矩陣RAID”,是ICH6R南橋所支持的一種廉價的磁盤冗余技術,是一種經濟性高的新穎RAID解決方案。Matrix RAID技術的原理相當簡單,只需要兩塊硬盤就能實現(xiàn)了RAID 0和RAID 1磁盤陣列,并且不需要添加額外的RAID控制器,這正是我們普通用戶所期望的。Matrix RAID需要硬件層和軟件層同時支持才能實現(xiàn),硬件方面目前就是ICH6R南橋以及更高階的ICH6RW南橋,而Intel Application Acclerator軟件和Windows操作系統(tǒng)均對軟件層提供了支持。 Matrix RAID的原理就是將每個硬盤容量各分成兩部分(即:將一個硬盤虛擬成兩個子硬盤,這時子硬盤總數為4個),其中用兩個虛擬子硬盤來創(chuàng)建RAID0模式以提高效能,而其它兩個虛擬子硬盤則透過鏡像備份組成RAID 1用來備份數據。在Matrix RAID模式中數據存儲模式如下:兩個磁盤驅動器的第一部分被用來創(chuàng)建RAID 0陣列,主要用來存儲操作系統(tǒng)、應用程序和交換文件,這是因為磁盤開始的區(qū)域擁有較高的存取速度,Matrix RAID將RAID 0邏輯分割區(qū)置于硬盤前端(外圈)的主因,是可以讓需要效能的模塊得到最好的效能表現(xiàn);而兩個磁盤驅動器的第二部分用來創(chuàng)建RAID1模式,主要用來存儲用戶個人的文件和數據。 例如,使用兩塊120GB的硬盤,可以將兩塊硬盤的前60GB組成120GB的邏輯分割區(qū),然后剩下兩個60GB區(qū)塊組成一個60GB的數據備份分割區(qū)。像需要高效能、卻不需要安全性的應用,就可以安裝在RAID 0分割區(qū),而需要安全性備分的數據,則可安裝在RAID 1分割區(qū)。換言之,使用者得到的總硬盤空間是180GB,和傳統(tǒng)的RAID 0+1相比,容量使用的效益非常的高,而且在容量配置上有著更高的彈性。如果發(fā)生硬盤損毀,RAID 0分割區(qū)數據自然無法復原,但是RAID 1分割區(qū)的數據卻會得到保全。 可以說,利用Matrix RAID技術,我們只需要2個硬盤就可以在獲取高效數據存取的同時又能確保數據安全性。這意味著普通用戶也可以低成本享受到RAID 0+1應用模式。 關于RAID 0的進一步解釋: RAID 0又稱為Stripe(條帶化)或Striping,它代表了所有RAID級別中最高的存儲性能。RAID 0提高存儲性能的原理是把連續(xù)的數據分散到多個磁盤上存取,這樣,系統(tǒng)有數據請求就可以被多個磁盤并行的執(zhí)行,每個磁盤執(zhí)行屬于它自己的那部分數據請求。這種數據上的并行操作可以充分利用總線的帶寬,顯著提高磁盤整體存取性能。 如圖所示:系統(tǒng)向三個磁盤組成的邏輯硬盤(RADI 0 磁盤組)發(fā)出的I/O數據請求被轉化為3項操作,其中的每一項操作都對應于一塊物理硬盤。我們從圖中可以清楚的看到通過建立RAID 0,原先順序的數據請求被分散到所有的三塊硬盤中同時執(zhí)行。從理論上講,三塊硬盤的并行操作使同一時間內磁盤讀寫速度提升了3倍。 但由于總線帶寬等多種因素的影響,實際的提升速率肯定會低于理論值,但是,大量數據并行傳輸與串行傳輸比較,提速效果顯著顯然毋庸置疑。 RAID 0的缺點是不提供數據冗余,因此一旦用戶數據損壞,損壞的數據將無法得到恢復。
RAID 0具有的特點,使其特別適用于對性能要求較高,而對數據安全不太在乎的領域,如圖形工作站等。對于個人用戶,RAID 0也是提高硬盤存儲性能的絕佳選擇。 |