ㄚ倫子
|
分享:
▼
x0
|
[教學][硬碟] 磁碟陣列RAID原理及階層介紹
現在己經有很多主機板都內建了IDE RAID晶片,除了提供ATA/133功能外,也提供了磁碟陣列功能,給使用者一個完整的IDE周邊解決方案。不過,應該還有很多人弄不清楚磁碟陣列是什麼,對磁碟陣列的使用及工作原理也有很多疑問。在這裏我們就來介紹一下磁碟陣列(RAID)的概念與工作原理,相信對各位會有所幫助。 什麼是磁碟陣列? 磁碟陣列簡稱RAID(Redundant Arrays of Inexpensive Disks),有”價格便宜且多餘的磁碟陣列”之意。其原理是利用陣列方式來作磁碟組,配合資料分散排列的設計,提升資料的安全性。磁碟陣列主要針對硬碟,在容量及速度上,無法跟上CPU及記憶體的發展,提出改善方法。磁碟陣列是由很多便宜、容量較小、穩定性較高、速度較慢磁碟,組合成一個大型的磁碟組,利用個別磁碟提供資料所產生的加成效果來提升整個磁碟系統的效能。同時,在儲存資料時,利用這項技術,將資料切割成許多區段,分別存放在各個硬碟上。 磁碟陣列還能利用同位元檢查(Parity Check)的觀念,在陣列中任一顆硬碟故障時,仍可讀出資料,在資料重建時,將故障硬碟內的資料,經計算後重新置入新硬碟中。 磁碟陣列的由來: 由美國柏克萊大學(University of California-Berkeley)在1987年,發表的文章:”A Case for Redundant Arrays of Inexpensive Disks”。文章中,談到了RAID這個字彙,而且定義了RAID的5層級。柏克萊大學研究其研究目的為,反應當時CPU快速的性能。CPU效能每年大約成長30~50%,而硬磁機只能成長約7%。研究小組希望能找出一種新的技術,在短期內,立即提升效能來平衡電腦的運算能力。在當時,柏克萊研究小組的主要研究目的是效能與成本。 另外,研究小組也設計出容錯(fault-tolerance),邏輯資料備份(logical data redundancy),而產生了RAID 理論。研究初期,便宜(Inexpensive)的磁碟也是主要的重點,但後來發現,大量便宜磁碟組合並不能適用於現實的生產環境,後來Inexpensive被改為independence,許多獨立的磁碟組。
磁碟陣列,未來趨勢: 自有PC以來,硬碟是最常使用的儲存裝置。但在整個電腦系統架構中,跟CPU與RAM來比,硬碟的速度是PC中最弱的設備之一。所以,為了加速電腦整體的資料流量,增加儲存的吞吐量,進階改進硬碟資料的安全,磁碟陣列的設計因應而生。 硬碟隨著科技的日新月異,現在其容量已達40GB以上,轉速到了1萬轉,甚至15000轉,而且價格實在是很便宜,再加現在企業流行,人力資源規畫(Enterprise Resource Planning:ERP)是每個公司建構網路的主要目標。所以,利用區域網路來傳遞資料,伺服器所使用的硬碟顯得非常重要,除了容量大、速度快之外,穩定更是基本要求。基於此因,磁碟陣列開始廣泛的應用在個人電腦上。 磁碟陣列其樣式有三種 , 一是外接式磁碟陣列櫃 外接式磁碟陣列櫃最常被使用大型伺服器上,具可熱抽換(Hot Swap)的特性, 不過這類產品的價格都很貴。 二是內接式磁碟陣列卡 內接式磁碟陣列卡,因為價格便宜,但需要較高的安裝技術, 適合技術人員使用操作。 三是利用軟體來模擬 利用軟體模擬的方式,由於會拖累機器的速度,不適合大資料流量的伺服器。 由上述可知,現在IDE磁碟陣列大行其道的道理;IDE介面硬碟的穩定度與效能表現已有很大的提升,加上成本考量,所以採用IDE介面硬碟來作為磁碟陣列的決解方案,可說是最佳的方式。 磁碟陣列有那些優點 : 1.傳輸速率快 2.儲存容量可提升 3.提升I/O每秒的數量 4.增加資料安全性及穩定性 5.大量資料快速及簡易管理 6.增加可用運時間,減少維護 各階層磁碟陣列(RAID)介紹 : 磁碟陣列是由2個以上的硬碟,模擬一個邏輯硬碟出現在系統中;使用磁碟陣列控制器以達成其存在,利用不同陣列形式,模擬各種層級。現在我們先來了解磁碟陣列(RAID)到底有幾種模式,一般最常提到及應用的RAID層級分為0、1、0+1、3及5。另外還有一些極少用到的RAID 4及RAID 6在此我們就不提它了。 以下就是各個階層的介紹及圖解: RAID 0:Striping/Span (切分/延展) RAID 0,它是將資料儲存在2個以上的硬碟機,其將全部磁碟機的儲存容量合併,藉由將資料切分到全部的磁碟機上,進行平行讀寫,而達到提高效能增加容量。但是缺點是完全沒有容錯能力,只要有一個磁碟故障,就會導致陣列磁碟的所有資料,毀於一旦無法挽回。
RAID 1:Mirroring (磁碟鏡射) RAID 1,必須由2個以上的硬碟所組成,由磁碟陣列(RAID)來控制,將資料同時寫入第1個與第2個硬碟,其2組硬碟上的資料完全相同,也就是其中一個硬碟是用來作備份用途;當其中有一個硬碟故障時,系統照常運作正常。RAID 1是所有RAID階層上,經濟效益最好,效能很高,極佳的資料安全性。是所有階層中使用最多最廣最符合當初RAID設計概念的一種。唯一小缺點是,其陣列磁碟容量是全部硬碟容量的一半。
RAID 0+1:Mirror + Striping (磁碟鏡射+切分/延展) RAID 0+1,是結合了RAID 0與1兩種模式,這個階層須具備4個或以上的雙數硬碟所組成。這個模式是由2個硬碟遵守RAID 0規範,設定成一組,再由每組間遵循RAID 1的規範,使RAID 0+1擁有容錯力及整體讀寫速度與資料安全性。不過,缺點是成本很高。
RAID 3:Parallel with Parity (平行同位元檢查) RAID 3,最少須3個硬碟或以上,這個階層的磁碟陣列具備了同位元高階智慧型演算法,利用一個硬碟來儲存其運算出來的同位元值的資料。當陣列磁碟中有一個硬碟發生故障時(當然不能是同位元碟),只要換上新硬碟後,磁碟陣列控制器就能利用同位元碟的資料,重新演算得到其舊有資料並回寫建立。因為其同位元檢查資料是將資料切割成數個區段,利用XOR演算法計算出同位元資料;而其區段以Bytes計算時,稱為RAID 3,如果是以Block計算時,就稱為RAID 4。所以RAID 3在整體讀寫效能會較慢較差,但在成本上會比RAID 0+1還省一點,其陣列磁碟整體容量計算公式為N-1。
RAID 5:Striping with Rotating Parity (切分/延展+輪轉同位元) RAID 5,最少須3個硬碟,其工作原理與RAID 3相似,主要差別是其同位元資料沒有固定在同個硬碟,是以輪流方式儲存在每個硬碟上,故稱輪轉同位元。當磁碟陣列控制器利用XOR演算出同位元檢查資料後,會隨著資料分別寫入各台硬碟上,因此整體讀寫效能比RAID 3要好一些,當然比RAID 0要差。不過在大型資料處理時,需同時讀寫多個硬碟,而同位元檢查是由磁碟陣列控制器的XOR邏輯所控制的,所以資料處理越大越多時,一定會有所遺失,但這個階層的RAID還是可以提供很高的容錯能力。
|