概況
RAID是英文RedundantArrayofInexpensiveDisks的縮寫,中文簡稱為廉價磁碟冗餘陣列。RAID就是一種由多塊硬碟構成的冗餘陣列。雖然RAID包含多塊硬碟,但是在作業系統下是作為一個獨立的大型存儲設備出現。利用RAID技術於存儲系統的好處主要有以下三種:(1)通過把多個磁碟組織在一起作為一個邏輯卷提供磁碟跨越功能
(2)通過把數據分成多個數據塊(Block)並行寫入/讀出多個磁碟以提高訪問磁碟的速度
(3)通過鏡像或校驗操作提供容錯能力
最初開發RAID的主要目的是節省成本,當時幾塊小容量硬碟的價格總和要低於大容量的硬碟。RAID在節省成本方面的作用並不明顯,但RAID可以充分發揮出多塊硬碟的優勢,實現遠遠超出任何一塊單獨硬碟的速度和吞吐量。除了性能上的提高之外,RAID還可以提供良好的容錯能力,在任何一塊硬碟出現問題的情況下都可以繼續工作,不會受到損壞硬碟的影響。
RAID技術的兩大特點:一是速度、二是安全,由於這兩項優點,RAID技術早期被套用於高級伺服器中的SCSI接口的硬碟系統中,隨著近年計算機技術的發展,PC機的CPU的速度已進入GHz時代。IDE接口的硬碟也不甘落後,相繼推出了ATA66和ATA100硬碟。這就使得RAID技術被套用於中低檔甚至個人PC機上成為可能。RAID通常是由在硬碟陣列塔中的RAID控制器或電腦中的RAID卡來實現的。RAID技術經過不斷的發展,已擁有了從RAID0到6七種基本的RAID級別。另外,還有一些基本RAID級別的組合形式,如RAID10(RAID0與RAID1的組合),raid50(RAID0與RAID5的組合)等。不同RAID級別代表著不同的存儲性能、數據安全性和存儲成本。RAID級別的選擇有三個主要因素:可用性(數據冗餘)、性能和成本。如果不要求可用性,選擇RAID0以獲得最佳性能。如果可用性和性能是重要的而成本不是一個主要因素,則根據硬碟數量選擇RAID1。如果可用性、成本和性能都同樣重要,則根據一般的數據傳輸和硬碟的數量選擇RAID3、RAID5。
RAID接口是指RAID卡支持的硬碟接口,目前主要有三種:IDE接口、SCSI接口和SATA接口。
IDE接口
IDE的英文全稱為“IntegratedDriveElectronics”,即“電子集成驅動器”,它的本意是指把“硬碟控制器”與“盤體”集成在一起的硬碟驅動器。把盤體與控制器集成在一起的做法減少了硬碟接口的電纜數目與長度,數據傳輸的可靠性得到了增強,硬碟製造起來變得更容易,因為硬碟生產廠商不需要再擔心自己的硬碟是否與其它廠商生產的控制器兼容,對用戶而言,硬碟安裝起來也更為方便。IDE這一接口技術從誕生就一直在不斷發展,性能也不斷的提高,其擁有的價格低廉、兼容性強的特點,為其造就了其它類型硬碟無法替代的地位。IDE代表著硬碟的一種類型,但在實際的套用中,習慣用IDE來稱呼最早出現IDE類型硬碟ATA-1,這種類型的接口隨著接口技術的發展已經被淘汰了,而其後發展分支出更多類型的硬碟接口,比如ATA、UltraATA、DMA、UltraDMA等接口都屬於IDE硬碟。此外,由於IDE口屬於並行接口,因此為了和SATA口硬碟相區別,IDE口硬碟也叫PATA口硬碟。
SCSI接口
SCSI的英文全稱為“SmallComputerSystemInterface”(小型計算機系統接口),是同IDE完全不同的接口,IDE接口是普通PC的標準接口,而SCSI並不是專門為硬碟設計的接口,是一種廣泛套用於小型機上的高速數據傳輸技術。SCSI接口具有套用範圍廣、多任務、頻寬大、CPU占用率低,以及支持熱插拔等優點,但較高的價格使得它很難如IDE硬碟般普及,因此SCSI硬碟主要套用於中、高端伺服器和高檔工作站中。SCSI硬碟和普通IDE硬碟相比有很多優點:接口速度快,並且由於主要用於伺服器,因此硬碟本身的性能也比較高,硬碟轉速快,快取容量大,CPU占用率低,擴展性遠優於IDE硬碟,並且支持熱插拔。SATA接口
使用SATA(SerialATA)口的硬碟又叫串口硬碟,是未來PC機硬碟的趨勢。2001年,由Intel、APT、Dell、IBM、希捷、邁拓這幾大廠商組成的SerialATA委員會正式確立了SerialATA1.0規範,2002年,雖然串列ATA的相關設備還未正式上市,但SerialATA委員會已搶先確立了SerialATA2.0規範。SerialATA採用串列連線方式,串列ATA匯流排使用嵌入式時鐘信號,具備了更強的糾錯能力,與以往相比其最大的區別在於能對傳輸指令(不僅僅是數據)進行檢查,如果發現錯誤會自動矯正,這在很大程度上提高了數據傳輸的可靠性。串列接口還具有結構簡單、支持熱插拔的優點。串口硬碟是一種完全不同於並行ATA的新型硬碟接口類型,由於採用串列方式傳輸數據而知名。相對於並行ATA來說,就具有非常多的優勢。首先,SerialATA以連續串列的方式傳送數據,一次只會傳送1位數據。這樣能減少SATA接口的針腳數目,使連線電纜數目變少,效率也會更高。實際上,SerialATA僅用四支針腳就能完成所有的工作,分別用於連線電纜、連線地線、傳送數據和接收數據,同時這樣的架構還能降低系統能耗和減小系統複雜性。其次,SerialATA的起點更高、發展潛力更大,SerialATA1.0定義的數據傳輸率可達150MB/s,這比最新的並行ATA(即ATA/133)所能達到133MB/s的最高數據傳輸率還高,而在SerialATA2.0的數據傳輸率將達到300MB/s,最終SATA將實現600MB/s的最高數據傳輸率。
技術及原理
(1)RAID技術規範簡介冗餘磁碟陣列技術最初的研製目的是為了組合小的廉價磁碟來代替大的昂貴磁碟,以降低大批量數據存儲的費用,同時也希望採用冗餘信息的方式,使得磁碟失效時不會使對數據的訪問受損失,從而開發出一定水平的數據保護技術,並且能適當的提升數據傳輸速度。過去RAID一直是高檔伺服器才有緣享用,一直作為高檔SCSI硬碟配套技術作套用。近來隨著技術的發展和產品成本的不斷下降,IDE硬碟性能有了很大提升,加之RAID晶片的普及,使得RAID也逐漸在個人電腦上得到套用。
(2)RAID的工作原理
RAID按照實現原理的不同分為不同的級別,不同的級別之間工作模式是有區別的。整個的RAID結構是一些磁碟結構,通過對磁碟進行組合達到提高效率,減少錯誤的目的,不要因為這么多名詞而被嚇壞了,它們的原理實際上十分簡單。
技術規範
NRAIDNRAID即Non-RAID,所有磁碟的容量組合成一個邏輯盤,沒有數據塊分條(noblockstripping)。NRAID不提供數據冗餘。要求至少一個磁碟。
JBOD代表JustaBunchofDrives,磁碟控制器把每個物理磁碟看作獨立的磁碟,因此每個磁碟都是獨立的邏輯盤。JBOD也不提供數據冗餘。要求至少一個磁碟。
RAID0即DataStripping(數據分條技術)。整個邏輯盤的數據是被分條(stripped)分布在多個物理磁碟上,可以並行讀/寫,提供最快的速度,但沒有冗餘能力。要求至少兩個磁碟。我們通過RAID0可以獲得更大的單個邏輯盤的容量,且通過對多個磁碟的同時讀取獲得更高的存取速度。RAID0首先考慮的是磁碟的速度和容量,忽略了安全,只要其中一個磁碟出了問題,那么整個陣列的數據都會不保了。
RAID1,又稱鏡像方式,也就是數據的冗餘。在整個鏡像過程中,只有一半的磁碟容量是有效的(另一半磁碟容量用來存放同樣的數據)。同RAID0相比,RAID1首先考慮的是安全性,容量減半、速度不變。
RAID0 1為了達到既高速又安全,出現了RAID10(或者叫RAID0 1),可以把RAID10簡單地理解成由多個磁碟組成的RAID0陣列再進行鏡像。
RAID3和RAID5都是校驗方式。RAID3的工作方式是用一塊磁碟存放校驗數據。由於任何數據的改變都要修改相應的數據校驗信息,存放數據的磁碟有好幾個且並行工作,而存放校驗數據的磁碟只有一個,這就帶來了校驗數據存放時的瓶頸。RAID5的工作方式是將各個磁碟生成的數據校驗切成塊,分別存放到組成陣列的各個磁碟中去,這樣就緩解了校驗數據存放時所產生的瓶頸問題,但是分割數據及控制存放都要付出速度上的代價。
MatrixRAID即所謂的“矩陣RAID”,是ICH6R南橋所支持的一種廉價的磁碟冗餘技術,是一種經濟性高的新穎RAID解決方案。MatrixRAID技術的原理相當簡單,只需要兩塊硬碟就能實現了RAID0和RAID1磁碟陣列,並且不需要添加額外的RAID控制器,這正是我們普通用戶所期望的。MatrixRAID需要硬體層和軟體層同時支持才能實現,硬體方面目前就是ICH6R南橋以及更高階的ICH6RW南橋,而IntelApplicationAcclerator軟體和Windows作業系統均對軟體層提供了支持。
NVRAID是nVidia自行開發的RAID技術,隨著nForce各系列晶片組的發展也不斷推陳出新。相對於其它RAID技術而言,目前最新的nForce4系列晶片組的NVRAID具有自己的鮮明特點。
技術發展
RAID技術問世時是基於SCSI接口,因其成本高,因此主要面向伺服器等高端套用。普通用戶根本無緣擁有RAID。隨著計算機的大眾化,由此帶動PC計算機的空前繁榮。相應的,在市場的帶動下,用於PC計算機的IDE接口設備價格大幅降低,同時性能大幅提高。鑒於此,RAID技術開始移植到IDE接口上,推出了基於IDE接口的RAID套用,稱為IDERAID。而基於SCSI接口的RAID套用則相應稱為SCSIRAID。與SCSIRAID相比,IDERAID具有極低的價格,和一點也不遜色的性能表現,相應的,IDERAID解決方案就具有SCSIRAID無法比擬的高性價比。因此IDERAID自推出後,受到普通PC用戶和普通商業套用的普遍歡迎。當然IDERAID也有其缺點,比如在CPU占用率和連線設備數量等方面就無法與SCSIRAID相比,同時,IDERAID目前為止還只支持RAID0、RAID1和RAID0 1,並且性能上也比SCSIRAID略遜一籌,因此高性能計算機套用方面還是以SCSIRAID為主。SATARAID是剛剛誕生的RAID方式,它與IDERAID類似,最大的優點是低成本,其他方面也和IDERAID接近。