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