PDA

查看完整版本 : [新知]什麼是磁碟陣列RAID ?


吉米丘
03-26-2003, 14:03
<font color=red>轉貼自漁家小舖</font id=red>

前言:
什麼是磁碟陣列?

磁碟陣列的由來:

磁碟陣列,時事所趨:

磁碟陣列有那些優點:

各階層磁碟陣列(RAID)介紹:
RAID 0:Striping/Span (切分/延展)

RAID 1:Mirroring (磁碟鏡射)

RAID 0+1:Mirror + Striping (磁碟鏡射+切分/延展)

RAID 3:Parallel with Parity (平行同位元檢查)

RAID 5:Striping with Rotating Parity (切分/延展+輪轉同位元)

前言:

現在己經有很多主機板都內建了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 1:Mirroring (磁碟鏡射)
RAID 0+1:Mirror + Striping (磁碟鏡射+切分/延展)
RAID 3:Parallel with Parity (平行同位元檢查)
RAID 5:Striping with Rotating Parity (切分/延展+輪轉同位元)

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還是可以提供很高的容錯能力...

Gladiator
05-06-2004, 09:03
最近想買磁碟陣列卡
可以推薦買哪一個廠牌的嗎...

還有我聽說現在有出一組是3吋半大的
直接把2顆硬碟插入
裡面有晶片會自己去執行陣列的功能
這效果會比較好嗎

吉米丘
05-06-2004, 10:53
我都買HIGHPOINT的

你說的那種模組化的產品很久以前就有了...

看你要方便還是要實用吧....一般的卡可以接到四顆甚有可以接到八顆的,而硬體模組的就會受限他的空間囉~

Gladiator
05-06-2004, 11:57
了解
我又考慮到ATA跟S-ATA的問題
雖然現在的主機是ATA的
前鎮子也買一顆ATA硬碟
但考慮到將來換新硬體時
ATA不支援
但這2顆不就報廢了

可以磁碟陣列的硬碟
一顆是ATA
一顆是S-ATA嗎

吉米丘
05-06-2004, 13:39
現在HIGHPOINT出的卡幾乎都是SATA的,真是令人羨慕...

而ATA也有轉SATA的

或是說SATA也有轉ATA的...

但就長遠看來...現在SATA的硬碟也跟ATA的沒差幾百元了...那....會建議你看長遠一點...

除非你要拿舊的硬碟來做RAID..

但是,我都規劃約三年這些RAID的硬碟就差不多要汰換了...

Gladiator
05-07-2004, 16:35
我的想法是把剛買的ATA硬碟送回換新的
再買一顆新的SATA硬碟
加上一張陣列卡
再家一張SATA的擴充卡
這樣算一算也要7000吧...non-asp/emot/010.gif

考慮到我的CPU才P3-800和PC-133 512MB
就想乾脆換新的好了non-asp/emot/009.gif
但預算又沒有那麼多non-asp/emot/007.gif

Gladiator
05-20-2004, 20:52
為什麼現在硬碟的故障率極高
今年1月中買的WD硬碟
現在的情況跟用3年的IBM一樣
隨時都會有問題
要不就是抓不到
要不就是未格式化

這也是為什麼想用磁碟陣列的原因
出問題的機率太高了non-asp/emot/006.gif
現在不是強調TQM嗎

保固3年
我情願一顆保固1年的硬碟
但是可以讓我安安穩穩的用3年non-asp/emot/2.gif

吉米丘
05-20-2004, 22:52
你也想想...

以前我們花一萬元買一顆硬碟4GB,現在還在役的幾乎都是這些東西...

那我們現在買的一顆兩千五百元買一棵80GB,加400元還可以升級到三年保固...

但往往一年過後就掛了...

錢差在哪裡,價值跑哪裡去了?

所以陣列已經不可少了...因為隨時會掛....

這樣搞起來,成本跟當初差不多...

但安心多了~

Gladiator
05-21-2004, 00:52
如果我同時買2顆硬碟
搞個磁碟陣列
因為2顆硬碟同時購買
相信是同一批生產的產品
所以品質也大同小異
那會不會給我同一天掛點啊non-asp/emot/016.gif

吉米丘
05-21-2004, 01:44
應該不至於如此...這樣的機率也很低...

壞是會壞,但是否能在壞掉的同時,換上新的替代...

或是乾脆用四顆跑0+1不是更棒~

Gladiator
05-21-2004, 02:20
<table cellpadding=0 cellspacing=0 border=0 WIDTH=94% bgcolor=#000000 align=center><tr><td><table width=100% cellpadding=5 cellspacing=1 border=0><tr><td BGCOLOR=#F8F8F8><font id=quote>以下引用由 <u>吉米</u> 在 2004年05月21日 下午 09:日 所發表的內容:
乾脆用四顆跑0+1不是更棒~</td></tr></table></td></tr></table>

這樣太不符合成本效益了吧
雖然檔案很重要
但還不至於但這種程度吧non-asp/emot/011.gif
花這麼多錢
那我傾向整個主機都換新的non-asp/emot/017.gif

如果我買WD S-ATA 120GB 8MB
這顆可以直接插在G5上使用嗎non-asp/emot/020.gif

06-08-2004, 03:41
在 Intel 的網站上有一個 Intel raid tutorial ,用動態的方式介紹 Raid 原理
http://developer.intel.com/design/servers/buildingblocks/srczcr/

Gladiator
08-27-2004, 15:40
請問一下
我現在用PROMISE--Fasttack S150 TX2 PLUS
加上2個S-ATA 160G的硬碟作RAID 1
現在想要只重灌作業系統
我把硬碟分C D E三個槽
OS在C
D E都是資料

那只要跟以前一個硬碟的時候一樣
把WIN XP的光碟片放入
重新安裝就好
還是說要用別的步驟啊

吉米丘
08-27-2004, 15:59
當你把RAID1架起來的時候,你就只會看到一顆硬碟而已了

所以就照你原本安裝的方式來搞吧~

不過,記得在安裝的時候趕快按下F6,讓他先LOAD你的RAID卡DRIVER再來安裝吧~

不然是什麼都沒有喔~

Gladiator
08-27-2004, 19:41
我也是這麼想
可是打電話去PROMISE問的時候
他說當初陣列有一些檔案寫在第0軌
我現在把C槽重新FORMAT
就會改寫第0軌的資料
輕則RAID要重新設定
重則資料全部讀不到
他強烈建議我把資料存到第三顆硬碟上

有這種需要嗎non-asp/emot/020.gif
那如果要這樣搞
是不是一次要準備3個硬碟啊