標籤:

raid有哪幾種有什麼區別?希望講通俗點。


一共有0~6一共7種,這其中RAID 0、RAID1、RAID 5和RAID6比較常用。

RAID 0:如果你有n塊磁碟,原來只能同時寫一塊磁碟,寫滿了再下一塊,做了RAID 0之後,n塊可以同時寫,速度提升很快,但由於沒有備份,可靠性很差。n最少為2。

RAID 1:正因為RAID 0太不可靠,所以衍生出了RAID 1。如果你有n塊磁碟,把其中n/2塊磁碟作為鏡像磁碟,在往其中一塊磁碟寫入數據時,也同時往另一塊寫數據。壞了其中一塊時,鏡像磁碟自動頂上,可靠性最佳,但空間利用率太低。n最少為2。

RAID 3:為了說明白RAID 5,先說RAID 3.RAID 3是若你有n塊盤,其中1塊盤作為校驗盤,剩餘n-1塊盤相當於作RAID 0同時讀寫,當其中一塊盤壞掉時,可以通過校驗碼還原出壞掉盤的原始數據。這個校驗方式比較特別,奇偶檢驗,1 XOR 0 XOR 1=0,0 XOR 1 XOR 0=1,最後的數據時校驗數據,當中間缺了一個數據時,可以通過其他盤的數據和校驗數據推算出來。但是這有個問題,由於n-1塊盤做了RAID 0,每一次讀寫都要牽動所有盤來為它服務,而且萬一校驗盤壞掉就完蛋了。最多允許壞一塊盤。n最少為3.

RAID 5:在RAID 3的基礎上有所區別,同樣是相當於是1塊盤的大小作為校驗盤,n-1塊盤的大小作為數據盤,但校驗碼分布在各個磁碟中,不是單獨的一塊磁碟,也就是分散式校驗盤,這樣做好處多多。最多壞一塊盤。n最少為3.

RAID 6:在RAID 5的基礎上,又增加了一種校驗碼,和解方程似的,一種校驗碼一個方程,最多有兩個未知數,也就是最多壞兩塊盤。

總體來說,

以上。


title: RAID磁碟陣列配置和調優小結

date: 2016-03-10 15:52:17

categories: 學習 | Study

description: RAID的本質是平衡可用性與成本

---

## 前言

RAID解釋我偷個小懶引用WikipediA,獨立硬碟冗餘陣列(RAID, Redundant Array of Independent Disks),舊稱廉價磁碟冗餘陣列(Redundant Array of Inexpensive Disks),簡稱磁碟陣列。其基本思想就是把多個相對便宜的硬碟組合起來,成為一個硬碟陣列組,使性能達到甚至超過一個價格昂貴、容量巨大的硬碟。根據選擇的版本不同,RAID比單顆硬碟有以下一個或多個方面的好處:增強數據集成度,增強容錯功能,增加處理量或容量。另外,磁碟陣列對於電腦來說,看起來就像一個單獨的硬碟或邏輯存儲單元。寫這篇文章當然不是單純的介紹概念和使用方法,更重要的是如何針對不同的業務場景做合理的RAID配置和參數優化,對於SSD固態硬碟的加入我引入小米運維團隊的實驗數據,同時我也相信分散式存儲會逐步走向成熟,以OpenStack,VSAN,Nutanix為代表頭頂軟體定義和超融合概念的技術也已經開始了暗戰。

&> RAID的本質是平衡可用性與成本

---

## 更新歷史

2016年03月11日 - 初稿

閱讀原文 - RAID磁碟陣列配置和調優小結

**擴展閱讀**

RAID - https://zh.wikipedia.org/wiki/RAID

RAID技術發展綜述 - RAID技術發展綜述

SSD陣列卡方案優化:考慮使用RAID 50替代RAID 10 - SSD陣列卡方案優化:考慮使用RAID 50替代RAID 10

---

## RAID基礎知識

&>感謝@劉愛貴,詳細知識點可參考擴展閱讀

### 基本原理

RAID ( Redundant Array of Independent Disks )即獨立磁碟冗餘陣列,通常簡稱為磁碟陣列。簡單地說, RAID 是由多個獨立的高性能磁碟驅動器組成的磁碟子系統,從而提供比單個磁碟更高的存儲性能和數據冗餘的技術。 RAID 是一類多磁碟管理技術,其向主機環境提供了成本適中、數據可靠性高的高性能存儲。 SNIA 對 RAID 的定義是 :一種磁碟陣列,部分物理存儲空間用來記錄保存在剩餘空間上的用戶數據的冗餘信息。當其中某一個磁碟或訪問路徑發生故障時,冗餘信息可用來重建用戶數據。磁碟條帶化雖然與 RAID 定義不符,通常還是稱為 RAID (即 RAID0 )。

RAID 的初衷是為大型伺服器提供高端的存儲功能和冗餘的數據安全。在整個系統中, RAID 被看作是由兩個或更多磁碟組成的存儲空間,通過並發地在多個磁碟上讀寫數據來提高存儲系統的 I/O 性能。大多數 RAID 等級具有完備的數據校驗、糾正措施,從而提高系統的容錯性,甚至鏡像方式,大大增強系統的可靠性, Redundant 也由此而來。

這裡要提一下 JBOD ( Just a Bunch of Disks )。最初 JBOD 用來表示一個沒有控制軟體提供協調控制的磁碟集合,這是 RAID 區別與 JBOD 的主要因素。目前 JBOD 常指磁碟櫃,而不論其是否提供 RAID 功能。

RAID 的兩個關鍵目標是提高數據可靠性和 I/O 性能。磁碟陣列中,數據分散在多個磁碟中,然而對於計算機系統來說,就像一個單獨的磁碟。通過把相同數據同時寫入到多塊磁碟(典型地如鏡像),或者將計算的校驗數據寫入陣列中來獲得冗餘能力,當單塊磁碟出現故障時可以保證不會導致數據丟失。有些 RAID 等級允許更多地 磁碟同時發生故障,比如 RAID6 ,可以是兩塊磁碟同時損壞。在這樣的冗餘機制下,可以用新磁碟替換故障磁碟, RAID 會自動根據剩餘磁碟中的數據和校驗數據重建丟失的數據,保證數據一致性和完整性。數據分散保存在 RAID 中的多個不同磁碟上,並發數據讀寫要大大優於單個磁碟,因此可以獲得更高的聚合 I/O 帶寬。當然,磁碟陣列會減少全體磁碟的總可用存儲空間,犧牲空間換取更高的可靠性和性能。比如, RAID1 存儲空間利用率僅有 50% , RAID5 會損失其中一個磁碟的存儲容量,空間利用率為 (n-1)/n 。

磁碟陣列可以在部分磁碟(單塊或多塊,根據實現而論)損壞的情況下,仍能保證系統不中斷地連續運行。在重建故障磁碟數據至新磁碟的過程中,系統可以繼續正常運行,但是性能方面會有一定程度上的降低。一些磁碟陣列在添加或刪除磁碟時必須停機,而有些則支持熱交換 ( Hot Swapping ),允許不停機下替換磁碟驅動器。這種高端磁碟陣列主要用於要求高可能性的應用系統,系統不能停機或儘可能少的停機時間。一般來說, RAID 不可作為數據備份的替代方案,它對非磁碟故障等造成的數據丟失無能為力,比如病毒、人為破壞、意外刪除等情形。此時的數據丟失是相對操作系統、文件系統、卷管理器或者應用系統來說的,對於 RAID 系統來身,數據都是完好的,沒有發生丟失。所以,數據備份、災 備等數據保護措施是非常必要的,與 RAID 相輔相成,保護數據在不同層次的安全性,防止發生數據丟失。

RAID 中主要有三個關鍵概念和技術:鏡像( Mirroring )、數據條帶( Data Stripping )和數據校驗( Data parity )。鏡像,將數據複製到多個磁碟,一方面可以提高可靠性,另一方面可並發從兩個或多個副本讀取數據來提高讀性能。顯而易見,鏡像的寫性能要稍低, 確保數據正確地寫到多個磁碟需要更多的時間消耗。數據條帶,將數據分片保存在多個不同的磁碟,多個數據分片共同組成一個完整數據副本,這與鏡像的多個副本是不同的,它通常用於性能考慮。數據條帶具有更高的並發粒度,當訪問數據時,可以同時對位於不同磁碟上數據進行讀寫操作, 從而獲得非常可觀的 I/O 性能提升 。數據校驗,利用冗餘數據進行數據錯誤檢測和修復,冗餘數據通常採用海明碼、異或操作等演算法來計算獲得。利用校驗功能,可以很大程度上提高磁碟陣列的可靠性、魯棒性和容錯能力。不過,數據校驗需要從多處讀取數據並進行計算和對比,會影響系統性能。 不同等級的 RAID 採用一個或多個以上的三種技術,來獲得不同的數據可靠性、可用性和 I/O 性能。至於設計何種 RAID (甚至新的等級或類型)或採用何種模式的 RAID ,需要在深入理解系統需求的前提下進行合理選擇,綜合評估可靠性、性能和成本來進行折中的選擇。

RAID 思想從提出後就廣泛被業界所接納,存儲工業界投入了大量的時間和財力來研究和開發相關產品。而且,隨著處理器、內存、計算機介面等技術的不斷發展, RAID 不斷地發展和革新,在計算機存儲領域得到了廣泛的應用,從高端系統逐漸延伸到普通的中低端系統。 RAID 技術如此流行,源於其具有顯著的特徵和優勢,基本可以滿足大部分的數據存儲需求。總體說來, RAID 主要優勢有如下幾點:

(1) 大容量

  這是 RAID 的一個顯然優勢,它擴大了磁碟的容量,由多個磁碟組成的 RAID 系統具有海量的存儲空間。現在單個磁碟的容量就可以到 1TB 以上,這樣 RAID 的存儲容量就可以達到 PB 級,大多數的存儲需求都可以滿足。一般來說, RAID 可用容量要小於所有成員磁碟的總容量。不同等級的 RAID 演算法需要一定的冗餘開銷,具體容量開銷與採用演算法相關。如果已知 RAID 演算法和容量,可以計算出 RAID 的可用容量。通常, RAID 容量利用率在 50% ~ 90% 之間。

(2) 高性能

   RAID 的高性能受益於數據條帶化技術。單個磁碟的 I/O 性能受到介面、帶寬等計算機技術的限制,性能往往很有 限,容易成為系統性能的瓶頸。通過數據條帶化, RAID 將數據 I/O 分散到各個成員磁碟上,從而獲得比單個磁碟成倍增長的聚合 I/O 性能。

(3) 可靠性

  可用性和可靠性是 RAID 的另一個重要特徵。從理論上講,由多個磁碟組成的 RAID 系統在可靠性方面應該比單個磁碟要差。這裡有個隱含假定:單個磁碟故障將導致整個 RAID 不可用。 RAID 採用鏡像和數據校驗等數據冗餘技術,打破了這個假定。 鏡像是最為原始的冗餘技術,把某組磁碟驅動器上的數據完全複製到另一組磁碟驅動器上,保證總有數據副本可用。 比起鏡像 50% 的冗餘開銷 ,數據校驗要小很多,它利用校驗冗餘信息對數據進行校驗和糾錯。 RAID 冗餘技術大幅提升數據可用性和可靠性,保證了若干磁碟出錯時,不 會導致數據的丟失,不影響系統的連續運行。

(4) 可管理性

  實際上, RAID 是一種虛擬化技術,它對多個物理磁碟驅動器虛擬成一個大容量的邏輯驅動器。對於外部主機系統來說, RAID 是一個單一的、快速可靠的大容量磁碟驅動器。這樣,用戶就可以在這個虛擬驅動器上來組織和存儲應用系統數據。 從用戶應用角度看,可使存儲系統簡單易用,管理也很便利。 由於 RAID 內部完成了大量的存儲管理工作,管理員只需要管理單個虛擬驅動器,可以節省大量的管理工作。 RAID 可以動態增減磁碟驅動器,可自動進行數據校驗和數據重建,這些都可以 大大簡化管理工作。

### 關鍵技術

&> 鏡像

鏡像是一種冗餘技術,為磁碟提供保護功能,防止磁碟發生故障而造成數據丟失。對於 RAID 而言,採用鏡像技術 典型地 將會同時在陣列中產生兩個完全相同的數據副本,分布在兩個不同的磁碟驅動器組上。鏡像提供了完全的數據冗餘能力,當一個數據副本失效不可用時,外部系統仍可正常訪問另一副本,不會對應用系統運行和性能產生影響。而且,鏡像不需要額外的計算和校驗,故障修復非常快,直接複製即可。鏡像技術可以從多個副本進行並發讀取數據,提供更高的讀 I/O 性能,但不能並行寫數據,寫多個副本會會導致一定的 I/O 性能降低。

鏡像技術提供了非常高的數據安全性,其代價也是非常昂貴的,需要   至少雙倍的存儲空間。高成本限制了鏡像的廣泛應用,主要應用於至關重要的數據保護,這種場合下數據丟失會造成巨大的損失。另外,鏡像通過 「 拆分 」 能獲得特定時間點的上數據快照,從而可以實現一種備份窗口幾乎為零的數據備份技術。

&> 數據條帶

磁碟存儲的性能瓶頸在於磁頭尋道定位,它是一種慢速機械運動,無法與高速的 CPU 匹配。再者,單個磁碟驅動器性能存在物理極限, I/O 性能非常有限。 RAID 由多塊磁碟組成,數據條帶技術將數據以塊的方式分布存儲在多個磁碟中,從而可以對數據進行並發處理。這樣寫入和讀取數據就可以在多個磁碟上同時進行,並發產生非常高的聚合 I/O ,有效提高了整體 I/O 性能,而且具有良好的線性擴展性。這對大容量數據尤其顯著,如果不分塊,數據只能按順序存儲在磁碟陣列的磁碟上,需要時再按順序讀取。而通過條帶技術,可獲得數倍與順序訪問的性能提升。

數據條帶技術的分塊大小選擇非常關鍵。條帶粒度可以是一個位元組至幾 KB 大小,分塊越小,並行處理能力就越強,數據存取速度就越高,但同時就會增加塊存取的隨機性和塊定址時間。實際應用中,要根據數據特徵和需求來選擇合適的分塊大小,在數據存取隨機性和並發處理能力之間進行平衡,以爭取儘可能高的整體性能。

數據條帶是基於提高 I/O 性能而提出的,也就是說它只關注性能, 而對數據可靠性、可用性沒有任何改善。實際上,其中任何一個數據條帶損壞都會導致整個數據不可用,採用數據條帶技術反而增加了數據發生丟失的概念率。

&> 數據校驗

鏡像具有高安全性、高讀性能,但冗餘開銷太昂貴。數據條帶通過並發性來大幅提高性能,然而對數據安全性、可靠性未作考慮。數據校驗是一種冗餘技術,它用校驗數據來提供數據的安全,可以檢測數據錯誤,並在能力允許的前提下進行數據重構。相對鏡像,數據校驗大幅縮減了冗餘開銷,用較小的代價換取了極佳的數據完整性和可靠性。數據條帶技術提供高性能,數據校驗提供數據安全性, RAID 不同等級往往同時結合使用這兩種技術。

採用數據校驗時, RAID 要在寫入數據同時進行校驗計算,並將得到的校驗數據存儲在 RAID 成員磁碟中。校驗數據可以集中保存在某個磁碟或分散存儲在多個不同磁碟中,甚至校驗數據也可以分塊,不同 RAID 等級實現各不相同。當其中一部分數據出錯時,就可以對剩餘數據和校驗數據進行反校驗計算重建丟失的數據。校驗技術相對於鏡像技術的優勢在於節省大量開銷,但由於每次數據讀寫都要進行大量的校驗運算,對計算機的運算速度要求很高,必須使用硬體 RAID 控制器。在數據重建恢復方面,檢驗技術比鏡像技術複雜得多且慢得多。

海明校驗碼和 異或校驗是兩種最為常用的 數據校驗演算法。海明校驗碼是由理查德 · 海明提出的,不僅能檢測錯誤,還能給出錯誤位置並自動糾正。海明校驗的基本思想是:將有效信息按照某種規律分成若干組,對每一個組作奇偶測試並安排一個校驗位,從而能提供多位檢錯信息,以定位錯誤點並糾正。可見海明校驗實質上是一種多重奇偶校驗。異或校驗通過異或邏輯運算產生,將一個有效信息與一個給定的初始值進行異或運算,會得到校驗信息。如果有效信息出現錯誤,通過校驗信息與初始值的異或運算能還原正確的有效信息。

## 常見RAID類型

&> 常見5種RAID類型對比,n位磁碟數量,詳細介紹可參考擴展閱讀

RAID 等級 | RAID0 | RAID1 | RAID5 | RAID6 | RAID10

----|----|----|----|----|----

別名 | 條帶 | 鏡像 | 分布奇偶校驗條帶 | 雙重奇偶校驗條帶 | 鏡像加條帶

容錯性 | 無 | 有 | 有 | 有 | 有

冗餘類型 | 無 | 有 | 有 | 有 | 有

熱備盤 | 無 | 有 | 有 | 有 | 有

讀性能 | 高 | 低 | 高 | 高 | 高

隨機寫性能 | 高 | 低 | 一般 | 低 | 一般

連續寫性能 | 高 | 低 | 低 | 低 | 一般

需要磁碟數 | n≥1 | 2n (n≥1) | n≥3 | n≥4 | 2n(n≥2)≥4

可用容量 | 全部 | 50% | (n-1)/n | (n-2)/n | 50%

## RAID 等級

### 標準 RAID 等級

SNIA 、 Berkeley 等組織機構把 RAID0 、 RAID1 、 RAID2 、 RAID3 、 RAID4 、 RAID5 、 RAID6 七個等級定為標準的 RAID 等級,這也被業界和學術界所公認。標準等級是最基本的 RAID 配置集合,單獨或綜合利用數據條帶、鏡像和數據校驗技術。標準 RAID 可以組合,即 RAID 組合等級,滿足 對性能、安全性、可靠性要求更高的存儲應用需求。

### JBOD

JBOD ( Just a Bunch Of Disks )不是標準的 RAID 等級,它通常用來表示一個沒有控制軟體提供協調控制的磁碟集合。 JBOD 將多個物理磁碟串聯起來,提供一個巨大的邏輯磁碟。 JBOD 的數據存放機制是由第一塊磁碟開始按順序往後存儲,當前磁碟存儲空間用完後,再依次往後面的磁碟存儲數據。 JBOD 存儲性能完全等同於單塊磁碟,而且也不提供數據安全保護。它只是簡單提供一種擴展存儲空間的機制, JBOD 可用存儲容量等於所有成員磁碟的存儲空間之和。目前 JBOD 常指磁碟櫃,而不論其是否提供 RAID 功能。

### RAID0

RAID0 是一種簡單的、無數據校驗的數據條帶化技術。實際上不是一種真正的 RAID ,因為它並不提供任何形式的冗餘策略。 RAID0 將所在磁碟條帶化後組成大容量的存儲空間,將數據分散存儲在所有磁碟中,以獨立訪問方式實現多塊磁碟的並讀訪問。由於可以並發執行 I/O 操作,匯流排帶寬得到充分利用。再加上不需要進行數據校驗, RAID0 的性能在所有 RAID 等級中是最高的。理論上講,一個由 n 塊磁碟組成的 RAID0 ,它的讀寫性能是單個磁碟性能的 n 倍,但由於匯流排帶寬等多種因素的限制,實際的性能提升低於理論值。

RAID0 具有低成本、高讀寫性能、 100% 的高存儲空間利用率等優點,但是它不提供數據冗餘保護,一旦數據損壞,將無法恢復。 因此, RAID0 一般適用於對性能要求嚴格但對數據安全性和可靠性不高的應用,如視頻、音頻存儲、臨時數據緩存空間等。

### RAID1

RAID1 稱為鏡像,它將數據完全一致地分別寫到工作磁碟和鏡像 磁碟,它的磁碟空間利用率為 50% 。 RAID1 在數據寫入時,響應時間會有所影響,但是讀數據的時候沒有影響。 RAID1 提供了最佳的數據保護,一旦工作磁碟發生故障,系統自動從鏡像磁碟讀取數據,不會影響用戶工作。

RAID1 與 RAID0 剛好相反,是為了增強數據安全性使兩塊 磁碟數據呈現完全鏡像,從而達到安全性好、技術簡單、管理方便。 RAID1 擁有完全容錯的能力,但實現成本高。 RAID1 應用於對順序讀寫性能要求高以及對數據保護極為重視的應用,如對郵件系統的數據保護。

### RAID5

RAID5 應該是目前最常見的 RAID 等級,它的原理與 RAID4 相似,區別在於校驗數據分布在陣列中的所有磁碟上,而沒有採用專門的校驗磁碟。對於數據和校驗數據,它們的寫操作可以同時發生在完全不同的磁碟上。因此, RAID5 不存在 RAID4 中的並發寫操作時的校驗盤性能瓶頸問題。另外, RAID5 還具備很好的擴展性。當陣列磁碟 數量增加時,並行操作量的能力也隨之增長,可比 RAID4 支持更多的磁碟,從而擁有更高的容量以及更高的性能。

RAID5 的磁碟上同時存儲數據和校驗數據,數據塊和對應的校驗信息存保存在不同的磁碟上,當一個數據盤損壞時,系統可以根據同一條帶的其他數據塊和對應的校驗數據來重建損壞的數據。與其他 RAID 等級一樣,重建數據時, RAID5 的性能會受到較大的影響。

RAID5 兼顧存儲性能、數據安全和存儲成本等各方面因素,它可以理解為 RAID0 和 RAID1 的折中方案,是目前綜合性能最佳的數據保護解決方案。 RAID5 基本上可以滿足大部分的存儲應用需求,數據中心大多採用它作為應用數據的保護方案。

### RAID6

前面所 述的各個 RAID 等級都只能保護因單個磁碟失效而造成的數據丟失。如果兩個磁碟同時發生故障,數據將無法恢復。 RAID6 引入雙重校驗的概念,它可以保護陣列中同時出現兩個磁碟失效時,陣列仍能夠繼續工作,不會發生數據丟失。 RAID6 等級是在 RAID5 的基礎上為了進一步增強數據保護而設計的一種 RAID 方式,它可以看作是一種擴展的 RAID5 等級。

RAID6 不僅要支持數據的恢復,還要支持校驗數據的恢復,因此實現代價很高,控制器的設計也比其他等級更複雜、更昂貴。 RAID6 思想最常見的實現方式是採用兩個獨立的校驗演算法,假設稱為 P 和 Q ,校驗數據可以分別存儲在兩個不同的校驗盤上,或者分散存儲在所有成員磁碟中。當兩個磁碟同時失效時,即可通過求解兩元方程來重建兩個磁碟上的數據。

RAID6 具有快速的讀取性能、更高的容錯能力。但是,它的成本要高於 RAID5 許多,寫性能也較差,並有設計和實施非常複雜。因此, RAID6 很少得到實際應用,主要用於對數據安全等級要求非常高的場合。它一般是替代 RAID10 方案的經濟性選擇

### RAID 組合等級

標準 RAID 等級各有優勢和不足。自然地,我們想到把多個 RAID 等級組合起來,實現優勢互補,彌補相互的不足,從而達到在性能、數據安全性等指標上更高的 RAID 系統。目前在業界和學術研究中提到的 RAID 組合等級主要有 RAID00 、 RAID01 、 RAID10 、 RAID100 、 RAID30 、 RAID50 、 RAID53 、 RAID60 ,但實際得到較為廣泛應用的只有 RAID01 和 RAID10 兩個等級。當然,組合等級的實現成本一般都非常昂貴,只是在 少數特定場合應用。

### RAID10 和 RAID01

一些文獻把這兩種 RAID 等級看作是等同的,本文認為是不同的。 RAID01 是先做條帶化再作鏡像,本質是對物理磁碟實現鏡像;而 RAID10 是先做鏡像再作條帶化,是對虛擬磁碟實現鏡像。相同的配置下,通常 RAID01 比 RAID10 具有更好的容錯能力。

RAID01 兼備了 RAID0 和 RAID1 的優點,它先用兩塊磁碟建立鏡像,然後再在鏡像內部做條帶化。 RAID01 的數據將同時寫入到兩個磁碟陣列中,如果其中一個陣列損壞,仍可繼續工作,保證數據安全性的同時又提高了性能。 RAID01 和 RAID10 內部都含有 RAID1 模式,因此整體磁碟利用率均僅為 50% 。

### RAID 50

RAID 5與RAID 0的組合,先作RAID 5,再作RAID 0,也就是對多組RAID 5彼此構成Stripe訪問。由於RAID 50是以RAID 5為基礎,而RAID 5至少需要3顆硬碟,因此要以多組RAID 5構成RAID 50,至少需要6顆硬碟。以RAID 50最小的6顆硬碟配置為例,先把6顆硬碟分為2組,每組3顆構成RAID 5,如此就得到兩組RAID 5,然後再把兩組RAID 5構成RAID 0。

RAID 50在底層的任一組或多組RAID 5中出現1顆硬碟損壞時,仍能維持運作,不過如果任一組RAID 5中出現2顆或2顆以上硬碟損毀,整組RAID 50就會失效。

RAID 50由於在上層把多組RAID 5構成Stripe,性能比起單純的RAID 5高,容量利用率比RAID5要低。比如同樣使用9顆硬碟,由各3顆RAID 5再組成RAID 0的RAID 50,每組RAID 5浪費一顆硬碟,利用率為(1-3/9),RAID 5則為(1-1/9)。

### RAID 60

RAID 6與RAID 0的組合:先作RAID 6,再作RAID 0。換句話說,就是對兩組以上的RAID 6作Stripe訪問。RAID 6至少需具備4顆硬碟,所以RAID 60的最小需求是8顆硬碟。

由於底層是以RAID 6組成,所以RAID 60可以容許任一組RAID 6中損毀最多2顆硬碟,而系統仍能維持運作;不過只要底層任一組RAID 6中損毀3顆硬碟,整組RAID 60就會失效,當然這種情況的概率相當低。

比起單純的RAID 6,RAID 60的上層通過結合多組RAID 6構成Stripe訪問,因此性能較高。不過使用門檻高,而且容量利用率低是較大的問題。

## 關於RAID參數調優

&> 通常情況下建議系統(RAID1)與數據(RAID[5|10])分離,這裡引用@葉金榮老師的一段話

1. 使用SSD或者PCIe SSD設備,至少獲得數百倍甚至萬倍的IOPS提升

2. 購置陣列卡同時配備CACHE及BBU模塊,可明顯提升IOPS(主要是指機械盤,SSD或PCIe SSD除外。同時需要定期檢查CACHE及BBU模塊的健康狀況,確保意外時不至於丟失數據)

3. 有陣列卡時,設置陣列寫策略為WB,甚至FORCE WB(若有雙電保護,或對數據安全性要求不是特別高的話),嚴禁使用WT策略。並且閉陣列預讀策略

4. 儘可能選用RAID-10,而非RAID-5(`這句話有待商榷`)

5. 使用機械盤的話,儘可能選擇高轉速的,例如選用15KRPM,而不是7.2KRPM的盤,不差幾個錢的;

## SSD陣列卡方案優化

&> 感謝@小米noops運維團隊,詳細實驗數據請參考擴展閱讀

**性能測試結論**

性能測試顯示,相同容量的R50和R10性能接近:其中小塊文件的隨機讀R50要全面好於R10,隨機寫4K雖然R50和R10差距在28%,但是塊增大後R50要全面優於R10。順序讀寫方面,R50和R10十分接近。

容錯方面,R50接近R10:第二塊盤容錯率R50十分接近R10,兩者相差30%。R10的優勢主要是在有一定的概率提供第三、甚至第四塊磁碟的容錯率,但是考慮到並非100%容錯,因此從容錯角度來看R50雖然和R10有一些差距,但也已體現出較好的容錯率,至少優於R5。而且R50搭配靈活,甚至可以指定3組R5以達到最大3塊磁碟的容錯;

成本方面,R50有很大優勢:按這個配置計算R50隻有R10的3/4。

**總結**

RAID 50提供了接近RAID 10性能、可用性以及接近RAID 5成本的特性,具有較好的整體性價比優勢,所以考慮使用RAID 50替換RAID 10吧


參考:「飲水機」形象比喻 教你什麼是RAID


目前隨著大容量硬碟出現,傳統的raid rebuild時間太長了,raid5已經不建議使用了,具體Google

IBM GPFS文檔很好解釋了declustered raid,這個技術在很多存儲早就用上了。圖解下。極大的提升rebuild速度。不是單盤到單盤。raid 6之後應該會走zfs raid z3也會往declustered raid轉。

圖片來自https://www.usenix.org/legacy/events/lisa11/tech/slides/deenadhayalan.pdf

同樣Netapp raid dp一樣經典。

zfs raid z3之後也會往declustered raid去實現,開源的open zfs declustered raid即將出世。


目錄

SSD、SSHD和HDD哪個好?

1. 日漸式微的機械硬碟

2. 電腦儲存器的革命——固態硬碟

2.1 最佳固態硬碟品牌

2.2 固態硬碟主要規格剖析

2.2.1 固態硬碟的關鍵組件——控制器

2.2.2 固態硬碟的關鍵組件——內存

2.2.3 老司機帶你理清各種固態硬碟介面

2.2.3.1 硬碟介面標準——IDE、AHCI和NVMe咋選?

2.3 如何看懂SSD評測數據?

2.4 固態硬碟的注意事項

2.5 2017年第三季度最佳固態硬碟

3. 尷尬的固態混合硬碟

4.聊聊磁碟陣列功能(本文)

聊聊磁碟陣列功能

簡介

獨立硬碟冗餘陣列RAID, Redundant Array of Independent Disks),舊稱廉價磁碟冗餘陣列Redundant Array of Inexpensive Disks),簡稱磁碟陣列

其基本思想就是把多個相對便宜的硬碟組合起來,成為一個硬碟數組組,使性能達到甚至超過一個價格昂貴、容量巨大的硬碟。

最初的RAID分成不同的等級,每種等級都有其理論上的優缺點,不同的等級在兩個目標間取得平衡,分別是增加數據可靠性以及增加存儲器(群)讀寫性能。這些年來,出現對於RAID觀念不同的應用。

標準RAID

◇RAID 0

  • 優點:使用 n 顆硬碟,即可擁有將近 n 倍的讀寫效能。
  • 缺點:數據安全性較低,同組數組中任一硬碟發生問題就會造成數據遺失。
  • 硬碟數量:最少 2 個。

◇RAID 1

  • 優點:安全性依照數組裡的實體硬碟數量倍數成長。
  • 缺點:空間利用率是所有 RAID 中最沒有效率的。
  • 硬碟數量:最少 2 個。

在 RAID 0 追求效能極端的彼岸,存在著強調數據安全性的RAID 1,RAID 1 的數據儲存方式恰好與 RAID 0相反,欲寫入硬碟的數據被複製成與硬碟相同數量的份數,分別寫入數組中的各顆硬碟。如此一來每個硬碟內都擁有著同份數據的不同拷貝,只要數組中的其中 1 顆硬碟還可使用,數據就不會遺失,可忍受 n-1 顆硬碟同時損毀(n 為數組中實體硬碟的個數)。

效能部分則分為寫入和讀取 2 種不同狀況,寫入時因為須將數據複製多份寫入各顆硬碟,寫入效能與單顆硬碟差不多;讀取時則能夠同時從各顆硬碟同時讀取數據的不同部分,所以能夠和 RAID 0 相提並論,約是單顆硬碟讀取效能乘上數組中的硬碟個數,不過也有以單顆硬碟讀取的設計。

數組可使用容量是 RAID 1 最大的缺點,由於各實體硬碟中的數據幾乎是以鏡像的方式儲存,因此無論數組中放入了多少顆硬碟,可用容量都是以最小的那顆硬碟為主;同 RAID 0,如果數組中有著硬碟容量不一的情形,大硬碟的剩餘容量能否可利用端看控制器的設計,之後的 RAID 模式也是如此,將不再贅述。

◇RAID 5

  • 優點:兼顧空間利用率與安全性。
  • 缺點:需要額外的運算資源,僅能忍受 1 個硬碟損毀。
  • 硬碟數量:至少 3 個。

◇RAID 6

  • 優點:容錯硬碟數量比 RAID 5 多 1 顆。
  • 缺點:運算量比 RAID 5 大、空間利用率比 RAID 5 低。
  • 硬碟數量:至少 4 個。

◇RAID 2、3、4 呢?

RAID2、3、4較少實際應用,它們大多只在研究領域有實作。

混合RAID

◇JBOD

JBOD 為 」Just a Bunch Of Disks」 的縮寫,意思就是「一堆硬碟」,指的是RAID 磁碟陣列以外的所有組態。

實作上 JBOD 有 2 種方式,第一種與我們直接將硬碟安裝在計算機中相同,各顆實體各自管理自己的容量,當然也可進行磁碟區分割。第二種則是能夠將不同實體硬碟的空間串在一起,例如 2 顆 1TB 硬碟串成 1 個 2TB 的空間運用,如此能夠放入大於 1TB 的單一檔案。

◇RAID 7

RAID 7並非公開的RAID標準,而是Storage Computer Corporation的專利硬體產品名稱。

RAID 7的效能超越了許多其他RAID標準的實做產品,但也因為如此,在價格方面非常的高昂。

◇RAID N+N

在廠商支持的情況下,使用者甚至可以將 2 種以上的 RAID 組態放在同 1組磁碟陣列內,也就是有時可以看到的雙位數 RAID 01、10、50、60……等。

建立的方式也很好理解,首先利用前位數字的 RAID 方式建立數組,接著再將後方數字所代表的數組建立其上。

譬如 RAID 10 就是先建立 2 組 RAID 1,接著這 2 組 RAID 1 再組合成 RAID 0;RAID50 就是先建立 2 組 RAID 5,接著再組合成 1 組 RAID 0。

當然,這種組合等級的成本一般都非常昂貴,因此只在少數特定場合應用。

1+1大於2,SSD組RAID 0真的值得嗎?[3] [4]

◇引言

在HDD機械硬碟橫行的時代,有人為了追求性能而組RAID 0,理論上能獲得雙倍的讀寫速度提升,而在SSD固態硬碟時代中,RAID似乎變得更加麻煩了,因為二者的工作原理太不一樣了,光是一個RIAD下的TRIM問題就困擾了玩家很久,直到RST 11驅動才解決。

SSD組RAID 0還有一個問題就是性能提升與成本提升不那麼明顯,因為主流SSD的速度已經夠快,組RAID對隨機性能提升也不明顯,再加上成本方面的影響,SSD組RAID只是少數玩家才會考慮的事。

◇測試

Toms Hardware就做了一個類似的測試,對比是256GB SSD vs.128GB RAID 0、512GB vs.256GB

RAID 0下的SSD性能,包括連續讀寫、隨機及日常應用等各個方面。

組成RIAD 0模式之後,SSD性能提升最明顯的就是連續讀寫速度了,簡單來說就是從500MB/s量級提高到了900-1000MB/s量級。

其實從隨機性能上的測試來看,IOMeter中的資料庫IOPS之類的性能也是有變化的,但是從延遲上來看RAID 0的延遲確實比單SSD要高了一點,PCMark及日常應用測試中其性能並沒有隨讀寫速度的提升而改善,有的甚至還下降了。

◇小結:讀寫速度提升,但總體弊大於利

所以,Toms Hardware的最終態度就是不贊成SSD組RAID 0,用戶還是選擇大容量的SSD產品,組RAID 0還要面臨成本更高、風險更大等問題,所以還是單塊大容量SSD算了,除非用戶對連續讀寫速度有非常強烈的需要。

選擇適合的 RAID 模式

對於玩家們或是強調系統效能的主機來說,通常都是為了要來增加數據傳輸的速度。而對於重視數據備援及安全性的用戶或是企業用戶來說,磁碟陣列就是一個很好的數據保護模式。

像我們這種屌絲,一般只有一塊SSD或一塊SSD+一塊機械硬碟,RAID好像沒什麼卵用。

但是近幾年 NAS 這項產品的需求大開,不論是什麼原因而購買了NAS 這項產品,大部分的用戶都很難逃過「該選哪種 RAID 模式」這一關。

RAID 0 和 RAID 1 最少都需要 2 顆硬碟,RAID 0 是效能和儲存空間的最大化,不注重安全性,因此比較適合放一些消失不見也沒關係的檔案,例如快取、或是整理檔案時的暫存空間,RAID 1 則是安全性最大化,適合放一些重要的數據。

在 4顆硬碟規格的 NAS 產品中,RAID 5、RAID6、RAID 10則是可以放在一起探討,以安全性來排序由高至低為 RAID 6>RAID 10>RAID5,空間利用率則是 RAID 5>RAID 6=RAID 10。此外還必須加入處理效能去探討,如果處理效能不高,那麼使用 RAID 10能夠獲得比 RAID 6、RAID 5 還要高的訪問速度(因為不用運算校驗碼)。

參考文獻

1. RAID - 維基百科,自由的百科全書

2. 組建 NAS 磁碟腦袋不再卡卡,RAID 模式全方位分析 | T客邦 - 我只推薦好東西

3. 1+1大於2?SSD組RAID 0真的值得嗎? - 超能網

4. One SSD Vs. Two In RAID: Which Is Better?

歡迎關注我的知乎和微信公眾號:黎小白


常用的有三種。

raid0:如果你有兩塊硬碟,做了raid0,那麼讀寫速度是你一塊硬碟速度的兩倍,但是數據沒有備份。

raid1:如果你又兩塊硬碟,做了raid1,數據會同時寫入兩塊硬碟,一塊使用,一塊備份數據。

raid5:硬碟數量大於或等於3塊硬碟時做,最多同時允許一塊硬碟宕機。任意壞一塊硬碟都沒問題,換上新的硬碟,數據可以恢復。


來占坑,EMC的海量數據存儲里剛好看到過,回家再補充

————————————華麗分割——————————————

1.先祭出我的業內認可的指導書:《信息存儲與管理(第 二版):數字信息的存儲、 管理和保護》 。

這本書從存儲系統、存儲網路技術和業務保證性技術以及「雲」架構四個部分評估傳統、虛擬化和雲環境中的存儲體系結構和關鍵數據中心元素。讀完之後對這方面的知識會有個入門的了解,據說可以憑藉其中的內容參加考試獲得什麼**證書,反正我沒去考!

2.先說RAID:一項將多個磁碟驅動器合併到一個邏輯單元(RAID 集)中並提供 保護和/或性能的技術。

3.RAID中有三項關鍵技術:分條、鏡像和奇偶校驗

4.由RAID中三項關鍵技術而衍生出來的RAID級別

5.不同級別RAID的比較

我只是知識的搬運工!


作者:JustDoIT

鏈接:https://zhuanlan.zhihu.com/p/22512707

單機部署(stand-alone):只有一個飲水機提供服務,服務只部署一份

集群部署(cluster):有多個飲水機同時提供服務,服務冗餘部署,每個冗餘的服務都對外提供服務,一個服務掛掉時依然可用

熱備部署(hot-swap):只有一個桶提供服務,另一個桶stand-by,在水用完時自動熱替換,服務冗餘部署,只有一個主服務對外提供服務,影子服務在主服務掛掉時頂上

磁碟陣列RAID(Redundant Arrays of independent Disks)

RAID0:存儲性能高的磁碟陣列,又稱striping,它的原理是,將連續的數據分散到不同的磁碟上存儲,這些不同的磁碟能同時並行存取數據(速度塊)

RAID1:安全性高的磁碟陣列,又稱mirror,它的原理是,將數據完全複製到另一個磁碟上,磁碟空間利用率只有50%(冗餘,數據安全)

RAID0+1RAID0和RAID1的綜合方案,這也是國企用的比較多的存儲方案(速度快,安全性又高,但是很貴)

RAID5:RAID0和RAID1的折衷方案,讀取速度比較快(不如RAID0,因為多存儲了校驗位),安全性也很高(可以利用校驗位恢複數據),空間利用率也不錯(不完全複製,只冗餘校驗位),這也是互聯網公司用的比較多的存儲方案


我知道的,已經商用的有raid0,raid1,raid5,raid6,raid10,raid50,raid60,raid00.樓主可以參照樓上關於raid1,raid5,raid6回答,其他就容易琢磨了。


RAID詳解

RAID的幾種工作模式(僅討論 RAID0,RAID1,RAID5,RAID10這四種,這四種比較典型)

1、RAID0 (又稱為Stripe或Striping--分條)

即Data Stripping數據分條技術。RAID 0可以把多塊硬碟連成一個容量更大的硬碟群,可以提高磁 盤的性能和吞吐量。RAID 0沒有冗餘或錯誤修復能力,成本低,要求至少兩個磁碟,一般只是在那些對數 據安全性要求不高的情況下才被使用。

特點:

容錯性:沒有冗餘類型:沒有熱備盤選項:沒有讀性能:高隨機寫性能:高連續寫性能:高需要的磁碟數:只需2個或2*N個(這裡應該是多於兩個硬碟都可以)可用容量:總的磁碟的容量典型應用:無故障的迅速讀寫,要求安全性不高,如圖形工作站等。

RAID 0的工作方式:

如圖所示:系統向 三個磁碟組成的邏輯硬碟(RADI 0 磁碟組)發出的I/O數據請求被轉化為3項操作,其中的每一項操作都對應於一塊物理硬碟。我們從圖中可以清楚的看到通過建立RAID 0,原先順序的數據請求被分散到所有的三塊硬碟中同時執行。

從理論上講,三塊硬碟的並行操作使同一時間內磁碟讀寫速度提升了3倍。 但由於匯流排帶寬等多種因素的影響,實際的提升速率肯定會低於理論值,但是,大量數據並行傳輸與串列傳輸比較,提速效果顯著顯然毋庸置疑。

RAID 0的缺點是不提供數據冗餘,因此一旦用戶數據損壞,損壞的數據將無法得到恢復。

RAID 0具有的特點,使其特別適用於對性能要求較高,而對數據安全不太在乎的領域,如圖形工作站等。對於個人用戶,RAID 0也是提高硬碟存儲性能的絕佳選擇。

計算機技術發展迅速,但硬碟傳輸率也成了性能的瓶頸。怎麼辦?IDE RAID技術的成熟讓我們輕鬆打造自己的超高速硬碟。在實際應用中,RAID 0硬碟陣列能比普通IDE 7200轉ATA 133硬碟快得多,時至今日,在大多數的高端或者玩家主板上我們都能找到一顆PROMISE或者HighPoint的RAID晶元,同時發現它們提供的額 外幾個IDE介面。沒錯,RAID已經近在眼前,難道你甘心放棄RAID為我們帶來的性能提升嗎?答案當然是否定的!

實用 的IDE RAID

RAID可以通過軟體或硬體實現。像Windows 2000就能夠提供軟體的RAID功能,但是這樣需要消耗不小的CPU資源,降低整機性能。而硬體實現則是一般由RAID卡實現的,高檔的SCSI RAID卡有著自己專用的緩存和I/O處理器,但是對於家庭用戶來說這樣的開銷顯然是承受不了的,畢竟為了實現RAID買兩個或者更多的HDD已經相當不 容易了。我們還有一種折中的辦法——IDE RAID。或許這才是普通人最容易接受的方法。雖然IDE RAID在功能和性能上都有所折中,但相對於低廉的價格,普通用戶看來並不在意。

為什麼要用RAID 0

RAID 0至少需要兩塊硬碟才能夠實現,它的容量為組成這個系統的各個硬碟容量之和,這幾塊硬碟的容量要相同,在家用IDE RAID中一般級聯兩塊硬碟,一定要用同型號同容量的硬碟。RAID 0模式向硬碟寫入數據的時候把數據一分為二,分別寫入兩塊硬碟,讀取數據的時候則反之,這樣的話,每塊硬碟只要負擔一半的數據傳輸任務,得到的結果也就是 速度的增加。

實現方 式:

(1)、RAID 0最簡單方式(我覺得這個方式不是它本意所提倡的)

就是把x塊同樣的硬碟用硬體的形式通過智能磁碟控制器或用操作系統中的磁碟驅動程序以軟體的方式串聯在一起,形成一個獨立的邏輯驅動器,容量是單獨硬碟的 x倍,在電腦數據寫時被依次寫入到各磁碟 中,當一塊磁碟的空間用盡時,數據就會被自動寫入到下一塊磁碟中,它的好處是可以增加磁碟的容量。

速度與其中任何一塊磁碟的速度相同,如果其中的任何一塊磁碟出現故障,整個系統將會受到破壞,可靠

性是單獨使用一塊硬碟的1/n。

(2)、RAID 0的另一方式(常指的RAID 0就是指的這個)

是用n塊硬碟選擇合理的帶區大小創建帶區集,最好是為每一塊硬碟都配備一個專門的磁碟控制器,在 電腦數據讀寫時同時向n塊磁碟讀寫數據,速度提升n倍。提高系統的性能。

2、RAID 1 (又稱為Mirror或Mirroring--鏡像)

RAID 1稱為磁碟鏡像:把一個磁碟的數據鏡像到另一個磁碟上,在不影響性能情況下最大限度的保證系統的可靠性和可修復性上,具有很高的數據冗餘能力,但磁碟利用 率為50%,故成本最高,多用在保存關鍵性的重要數據的場合。RAID 1的操作方式是把用戶寫入硬碟的數據百分之百地自動複製到另外一個硬碟上。

RAID 1有以下特點

(1)、RAID 1的每一個磁碟都具有一個對應的鏡像盤,任何時候數據都同步鏡像,系統可以從一組 鏡像盤中的任何一個磁碟讀取數據。

(2)、磁碟所能使用的空間只有磁碟容量總和的一半,系統成本高。

(3)、只要系統中任何一對鏡像盤中至少有一塊磁碟可以使用,甚至可以在一半數量的硬碟出現問題時系統都可以正常運行。

(4)、出現硬碟故障的RAID系統不再可靠,應當及時的更換損壞的硬碟,否則剩餘的鏡像盤也出現問題,那麼整個系統就會崩潰。

(5)、更換新盤後原有數據會需要很長時間同步鏡像,外界對數據的訪問不會受到影響,只是這時整個系統的性能有所下降。

(6)、RAID 1磁碟控制器的負載相當大,用多個磁碟控制器可以提高數據的安全性和可用性。

RAID 1的工作方式:

如圖所 示:當讀取數據時,系統先從RAID1的源盤讀取數據,如果讀取數據成功,則系統不去管備份盤上的數據;如果讀取源盤數據失敗,則系統自動轉而讀取備份盤 上的數據,不會造成用戶工作任務的中斷。當然,我們應當及時地更換損壞的硬碟並利用備份數據重新建立Mirror,避免備份盤在發生損壞時,造成不可挽回 的數據損失。

raid 1的優缺點

由於對存儲的數據進行百分之百的備份,在所有RAID級別中,RAID 1提供最高的數據安全保障。同樣,由於數據的百分之百備份,備份數據佔了總存儲空間的一半,因而Mirror(鏡像)的磁碟空間利用率低,存儲成本高。 Mirror雖不能提高存儲性能,但由於其具有的高數據安全性,使其尤其適用於存放重要數據,如伺服器和資料庫存儲等領域。

3、 RAID 5 (可以理解為是RAID 0和RAID 1的折衷方案,但沒有完全使用RAID 1鏡像理念,而是使用了「奇偶校驗信息」來作為數據恢復的方式,與下面的RAID10不同。)

RAID 5 是一種存儲性能、數據安全和存儲成本兼顧的存儲解決方案。 以四個硬碟組成的RAID 5為例,其數據存儲方式如圖4所示:圖中,Ap為A1,A2和A3的奇偶校驗信息,其它以此類推。由圖中可以看出,RAID 5不對存儲的數據進行備份,而是把數據和相對應的奇偶校驗信息存儲到組成RAID5的各個磁碟上,並且奇偶校驗信息和相對應的數據分別存儲於不同的磁碟 上。當RAID5的一個磁碟數據發生損壞後,利用剩下的數據和相應的奇偶校驗信息去恢復被損壞的數據。

RAID 5可以理解為是RAID 0和RAID 1的折衷方案。RAID 5可以為系統提供數據安全保障,但保障程度要比Mirror低而磁碟空間利用率要比Mirror高。RAID 5具有和RAID 0相近似的數據讀取速度,只是多了一個奇偶校驗信息,寫入數據的速度比對單個磁碟進行寫入操作稍慢。同時由於多個數據對應一個奇偶校驗信息,RAID 5的磁碟空間利用率要比RAID 1高,存儲成本相對較低。

4、 RAID 10 (可以理解為是RAID 0和RAID 1的折衷方案,但沒有完全使用RAID 1鏡像理念,而是使用了「奇偶校驗信息」來作為數據恢復的方式)

RAID10也被稱為鏡象陣列條帶。象RAID0一樣,數據跨磁碟抽取;象RAID1一樣,每個磁碟都有一個鏡象磁碟, 所以RAID 10的另一種會說法是 RAID 0+1。RAID10提供100%的數據冗餘,支持更大的捲尺寸,但價格也相對較高。對大多數只要求具有冗餘度而不必考慮價格的應用來說,RAID10提 供最好的性能。使用RAID10,可以獲得更好的可靠性,因為即使兩個物理驅動器發生故障(每個陣列中一個),數據仍然可以得到保護。RAID10需要4 + 2*N 個磁碟驅動器(N &>=0), 而且只能使用其中一半(或更小, 如果磁碟大小不一)的磁碟用量, 例如 4 個 250G 的硬碟使用RAID10 陣列, 實際容量是 500G。

RAID總結:


RAID詳解

RAID的幾種工作模式(僅討論 RAID0,RAID1,RAID5,RAID10這四種,這四種比較典型)

1、RAID0 (又稱為Stripe或Striping--分條)

即Data Stripping數據分條技術。RAID 0可以把多塊硬碟連成一個容量更大的硬碟群,可以提高磁 盤的性能和吞吐量。RAID 0沒有冗餘或錯誤修復能力,成本低,要求至少兩個磁碟,一般只是在那些對數 據安全性要求不高的情況下才被使用。

特點:

容錯性:沒有冗餘類型:沒有熱備盤選項:沒有讀性能:高隨機寫性能:高連續寫性能:高需要的磁碟數:只需2個或2*N個(這裡應該是多於兩個硬碟都可以)可用容量:總的磁碟的容量典型應用:無故障的迅速讀寫,要求安全性不高,如圖形工作站等。

RAID 0的工作方式:

如圖所示:系統向 三個磁碟組成的邏輯硬碟(RADI 0 磁碟組)發出的I/O數據請求被轉化為3項操作,其中的每一項操作都對應於一塊物理硬碟。我們從圖中可以清楚的看到通過建立RAID 0,原先順序的數據請求被分散到所有的三塊硬碟中同時執行。

從理論上講,三塊硬碟的並行操作使同一時間內磁碟讀寫速度提升了3倍。 但由於匯流排帶寬等多種因素的影響,實際的提升速率肯定會低於理論值,但是,大量數據並行傳輸與串列傳輸比較,提速效果顯著顯然毋庸置疑。

RAID 0的缺點是不提供數據冗餘,因此一旦用戶數據損壞,損壞的數據將無法得到恢復。

RAID 0具有的特點,使其特別適用於對性能要求較高,而對數據安全不太在乎的領域,如圖形工作站等。對於個人用戶,RAID 0也是提高硬碟存儲性能的絕佳選擇。

計算機技術發展迅速,但硬碟傳輸率也成了性能的瓶頸。怎麼辦?IDE RAID技術的成熟讓我們輕鬆打造自己的超高速硬碟。在實際應用中,RAID 0硬碟陣列能比普通IDE 7200轉ATA 133硬碟快得多,時至今日,在大多數的高端或者玩家主板上我們都能找到一顆PROMISE或者HighPoint的RAID晶元,同時發現它們提供的額 外幾個IDE介面。沒錯,RAID已經近在眼前,難道你甘心放棄RAID為我們帶來的性能提升嗎?答案當然是否定的!

實用 的IDE RAID

RAID可以通過軟體或硬體實現。像Windows 2000就能夠提供軟體的RAID功能,但是這樣需要消耗不小的CPU資源,降低整機性能。而硬體實現則是一般由RAID卡實現的,高檔的SCSI RAID卡有著自己專用的緩存和I/O處理器,但是對於家庭用戶來說這樣的開銷顯然是承受不了的,畢竟為了實現RAID買兩個或者更多的HDD已經相當不 容易了。我們還有一種折中的辦法——IDE RAID。或許這才是普通人最容易接受的方法。雖然IDE RAID在功能和性能上都有所折中,但相對於低廉的價格,普通用戶看來並不在意。

為什麼要用RAID 0

RAID 0至少需要兩塊硬碟才能夠實現,它的容量為組成這個系統的各個硬碟容量之和,這幾塊硬碟的容量要相同,在家用IDE RAID中一般級聯兩塊硬碟,一定要用同型號同容量的硬碟。RAID 0模式向硬碟寫入數據的時候把數據一分為二,分別寫入兩塊硬碟,讀取數據的時候則反之,這樣的話,每塊硬碟只要負擔一半的數據傳輸任務,得到的結果也就是 速度的增加。

實現方 式:

(1)、RAID 0最簡單方式(我覺得這個方式不是它本意所提倡的)
就是把x塊同樣的硬碟用硬體的形式通過智能磁碟控制器或用操作系統中的磁碟驅動程序以軟體的方式串聯在一起,形成一個獨立的邏輯驅動器,容量是單獨硬碟的 x倍,在電腦數據寫時被依次寫入到各磁碟 中,當一塊磁碟的空間用盡時,數據就會被自動寫入到下一塊磁碟中,它的好處是可以增加磁碟的容量。
速度與其中任何一塊磁碟的速度相同,如果其中的任何一塊磁碟出現故障,整個系統將會受到破壞,可靠
性是單獨使用一塊硬碟的1/n。

(2)、RAID 0的另一方式(常指的RAID 0就是指的這個)
是用n塊硬碟選擇合理的帶區大小創建帶區集,最好是為每一塊硬碟都配備一個專門的磁碟控制器,在 電腦數據讀寫時同時向n塊磁碟讀寫數據,速度提升n倍。提高系統的性能。

2、RAID 1 (又稱為Mirror或Mirroring--鏡像)
RAID 1稱為磁碟鏡像:把一個磁碟的數據鏡像到另一個磁碟上,在不影響性能情況下最大限度的保證系統的可靠性和可修復性上,具有很高的數據冗餘能力,但磁碟利用 率為50%,故成本最高,多用在保存關鍵性的重要數據的場合。RAID 1的操作方式是把用戶寫入硬碟的數據百分之百地自動複製到另外一個硬碟上。

RAID 1有以下特點

(1)、RAID 1的每一個磁碟都具有一個對應的鏡像盤,任何時候數據都同步鏡像,系統可以從一組 鏡像盤中的任何一個磁碟讀取數據。
(2)、磁碟所能使用的空間只有磁碟容量總和的一半,系統成本高。
(3)、只要系統中任何一對鏡像盤中至少有一塊磁碟可以使用,甚至可以在一半數量的硬碟出現問題時系統都可以正常運行。
(4)、出現硬碟故障的RAID系統不再可靠,應當及時的更換損壞的硬碟,否則剩餘的鏡像盤也出現問題,那麼整個系統就會崩潰。
(5)、更換新盤後原有數據會需要很長時間同步鏡像,外界對數據的訪問不會受到影響,只是這時整個系統的性能有所下降。
(6)、RAID 1磁碟控制器的負載相當大,用多個磁碟控制器可以提高數據的安全性和可用性。

RAID 1的工作方式:

如圖所 示:當讀取數據時,系統先從RAID1的源盤讀取數據,如果讀取數據成功,則系統不去管備份盤上的數據;如果讀取源盤數據失敗,則系統自動轉而讀取備份盤 上的數據,不會造成用戶工作任務的中斷。當然,我們應當及時地更換損壞的硬碟並利用備份數據重新建立Mirror,避免備份盤在發生損壞時,造成不可挽回 的數據損失。
raid 1的優缺點

由於對存儲的數據進行百分之百的備份,在所有RAID級別中,RAID 1提供最高的數據安全保障。同樣,由於數據的百分之百備份,備份數據佔了總存儲空間的一半,因而Mirror(鏡像)的磁碟空間利用率低,存儲成本高。 Mirror雖不能提高存儲性能,但由於其具有的高數據安全性,使其尤其適用於存放重要數據,如伺服器和資料庫存儲等領域。

3、 RAID 5 (可以理解為是RAID 0和RAID 1的折衷方案,但沒有完全使用RAID 1鏡像理念,而是使用了「奇偶校驗信息」來作為數據恢復的方式,與下面的RAID10不同。)

容錯性:有冗餘類型:奇偶校驗熱備盤選項:有讀性能:高隨機寫性能:低連續寫性能:低需要的磁碟數:三個或更多可用容量:(n-1)/n的總磁碟容量(n為磁碟數)典型應用:隨機數據傳輸要求安全性高,如金融、資料庫、存儲等。

RAID 5 是一種存儲性能、數據安全和存儲成本兼顧的存儲解決方案。 以四個硬碟組成的RAID 5為例,其數據存儲方式如圖4所示:圖中,Ap為A1,A2和A3的奇偶校驗信息,其它以此類推。由圖中可以看出,RAID 5不對存儲的數據進行備份,而是把數據和相對應的奇偶校驗信息存儲到組成RAID5的各個磁碟上,並且奇偶校驗信息和相對應的數據分別存儲於不同的磁碟 上。當RAID5的一個磁碟數據發生損壞後,利用剩下的數據和相應的奇偶校驗信息去恢復被損壞的數據。

RAID 5可以理解為是RAID 0和RAID 1的折衷方案。RAID 5可以為系統提供數據安全保障,但保障程度要比Mirror低而磁碟空間利用率要比Mirror高。RAID 5具有和RAID 0相近似的數據讀取速度,只是多了一個奇偶校驗信息,寫入數據的速度比對單個磁碟進行寫入操作稍慢。同時由於多個數據對應一個奇偶校驗信息,RAID 5的磁碟空間利用率要比RAID 1高,存儲成本相對較低。

4、 RAID 10 (可以理解為是RAID 0和RAID 1的折衷方案,但沒有完全使用RAID 1鏡像理念,而是使用了「奇偶校驗信息」來作為數據恢復的方式)

RAID10也被稱為鏡象陣列條帶。象RAID0一樣,數據跨磁碟抽取;象RAID1一樣,每個磁碟都有一個鏡象磁碟, 所以RAID 10的另一種會說法是 RAID 0+1。RAID10提供100%的數據冗餘,支持更大的捲尺寸,但價格也相對較高。對大多數只要求具有冗餘度而不必考慮價格的應用來說,RAID10提 供最好的性能。使用RAID10,可以獲得更好的可靠性,因為即使兩個物理驅動器發生故障(每個陣列中一個),數據仍然可以得到保護。RAID10需要4 + 2*N 個磁碟驅動器(N &>=0), 而且只能使用其中一半(或更小, 如果磁碟大小不一)的磁碟用量, 例如 4 個 250G 的硬碟使用RAID10 陣列, 實際容量是 500G。

RAID總結:


推薦閱讀:

NVMe SSD RAID是什麼樣的體驗?

TAG:RAID |