磁盤陣列

磁盤陣列

大容量外存儲器子系統
磁盤陣列屬于超大容量的外存儲器子系統,通常稱廉價磁盤冗餘陳列RAID(Redundan Array of Inexpensive Disk),它是由許多台磁盤機或光盤機按一定規則,如分條(Striping)、分塊(Declustering)、交叉存取(Interleaving)等,來備份數據、提高系老國産計算機曾使用過的磁盤陣列系統性能的。它在陣列控制器的控制和管理下,實現快速,并行或交叉存取,并有較強的容錯能力。[1]
    中文名:磁盤陣列 外文名:RAID 别名: 原理:利用數組方式來作磁盤組 性質:超大容量的外存儲器子系統 别稱:廉價磁盤冗餘陳列RAID 特點:任一顆硬盤故障時仍可讀出數據

簡介

由加利福尼亞大學伯克利分校(University of California-Berkeley)在1988年,發表的文章:“A Case for Red undant Arrays of Inexpensive Disks”。文章中,談到了RAID這個詞彙,而且定義了RAID的5層級。伯克利大學研究目的是反應當時CPU快速的性能。CPU效能每年大約成長30~50%,而硬磁機隻能成長約7%。研究小組希望能找出一種新的技術,在短期内,立即提升效能來平衡計算機的運算能力。在當時,柏克萊研究小組的主要研究目的是效能與成本。

另外,研究小組也設計出容錯(fault-tolerance),邏輯數據備份(logical data redundancy),而産生了RAID理論。研究初期,便宜(Inexpensive)的磁盤也是主要的重點,但後來發現,大量便宜磁盤組合并不能适用于現實的生産環境,後來Inexpensive被改為independent,許多獨立的磁盤組。

獨立磁盤冗餘陣列是把相同的數據存儲在多個硬盤的不同的地方(因此,冗餘地)的方法。通過把數據放在多個硬盤上,輸入輸出操作能以平衡的方式交疊,改良性能。因為多個硬盤增加了平均故障間隔時間(MTBF),儲存冗餘數據也增加了容錯。

原理

磁盤陣列作為獨立系統在主機外直連或通過網絡與主機相連。磁盤陣列有多個端口可以被不同主機或不同端口連接。一個主機連接陣列的不同端口可提升傳輸速度。

和當時PC用單磁盤内部集成緩存一樣,在磁盤陣列内部為加快與主機交互速度,都帶有一定量的緩沖存儲器。主機與磁盤陣列的緩存交互,緩存與具體的磁盤交互數據。

在應用中,有部分常用的數據是需要經常讀取的,磁盤陣列根據内部的算法,查找出這些經常讀取的數據,存儲在緩存中,加快主機讀取這些數據的速度,而對于其他緩存中沒有的數據,主機要讀取,則由陣列從磁盤上直接讀取傳輸給主機。對于主機寫入的數據,隻寫在緩存中,主機可以立即完成寫操作。然後由緩存再慢慢寫入磁盤。

規範

RAID技術主要包含RAID0~RAID50等數個規範,它們的側重點各不相同,常見的規範有如下幾種:

RAID0:RAID0連續以位或字節為單位分割數據,并行讀/寫于多個磁盤上,因此具有很高的數據傳輸率,但它沒有數據冗餘,因此并不能算是真正的RAID結構。RAID0隻是單純地提高性能,并沒有為數據的可靠性提供保證,而且其中的一個磁盤失效将影響到所有數據。因此,RAID0不能應用于數據安全性要求高的場合。

RAID1:它是通過磁盤數據鏡像實現數據冗餘,在成對的獨立磁盤上産生互為備份的數據。當原始數據繁忙時,可直接從鏡像拷貝中讀取數據,因此RAID1可以提高讀取性能。RAID1是磁盤陣列中單位成本最高的,但提供了很高的數據安全性和可用性。當一個磁盤失效時,系統可以自動切換到鏡像磁盤上讀寫,而不需要重組失效的數據。

RAID01/10:根據組合分為RAID10和RAID01,實際是将RAID0和RAID1标準結合的産物,在連續地以位或字節為單位分割數據并且并行讀/寫多個磁盤的同時,為每一塊磁盤作磁盤鏡像進行冗餘。它的優點是同時擁有RAID0的超凡速度和RAID1的數據高可靠性,但是CPU占用率同樣也更高,而且磁盤的利用率比較低。

RAID1+0是先鏡射再分區數據,再将所有硬盤分為兩組,視為是RAID0的最低組合,然後将這兩組各自視為RAID1運作。RAID0+1則是跟RAID1+0的程序相反,是先分區再将數據鏡射到兩組硬盤。它将所有的硬盤分為兩組,變成RAID1的最低組合,而将兩組硬盤各自視為RAID0運作。性能上,RAID0+1比RAID1+0有着更快的讀寫速度。

可靠性上,當RAID1+0有一個硬盤受損,其餘三個硬盤會繼續運作。RAID0+1隻要有一個硬盤受損,同組RAID0的另一隻硬盤亦會停止運作,隻剩下兩個硬盤運作,可靠性較低。因此,RAID10遠較RAID01常用,零售主闆絕大部份支持RAID0/1/5/10,但不支持RAID01。

RAID2:将數據條塊化地分布于不同的硬盤上,條塊單位為位或字節,并使用稱為“加重平均糾錯碼(漢明碼)”的編碼技術來提供錯誤檢查及恢複。

RAID3:它同RAID2非常類似,都是将數據條塊化分布于不同的硬盤上,區别在于RAID3使用簡單的奇偶校驗,并用單塊磁盤存放奇偶校驗信息。如果一塊磁盤失效,奇偶盤及其他數據盤可以重

新産生數據;如果奇偶盤失效則不影響數據使用。RAID3對于大量的連續數據可提供很好的傳輸率,但對于随機數據來說,奇偶盤會成為寫操作的瓶頸。

RAID4:RAID4同樣也将數據條塊化并分布于不同的磁盤上,但條塊單位為塊或記錄。RAID4使用一塊磁盤作為奇偶校驗盤,每次寫操作都需要訪問奇偶盤,這時奇偶校驗盤會成為寫操作的瓶頸,因此RAID4在商業環境中也很少使用。

RAID5:RAID5不單獨指定的奇偶盤,而是在所有磁盤上交叉地存取數據及奇偶校驗信息。在RAID5上,讀/寫指針可同時對陣列設備進行操作,提供了更高的數據流量。RAID5更适合于小數據塊和随機讀寫的數據。RAID3與RAID5相比,最主要的區别在于RAID3每進行一次數據傳輸就需涉及到所有的陣列盤;而對于RAID5來說,大部分數據傳輸隻對一塊磁盤操作,并可進行并行操作。在RAID5中有“寫損失”,即每一次寫操作将産生四個實際的讀/寫操作,其中兩次讀舊的數據及奇偶信息,兩次寫新的數據及奇偶信息。

RAID6:與RAID5相比,RAID6增加了第二個獨立的奇偶校驗信息塊。兩個獨立的奇偶系統使用不同的算法,數據的可靠性非常高,即使兩塊磁盤同時失效也不會影響數據的使用。但RAID6需要分配給奇偶校驗信息更大的磁盤空間,相對于RAID5有更大的“寫損失”,因此“寫性能”非常差。較差的性能和複雜的實施方式使得RAID6很少得到實際應用。

RAID7:這是一種新的RAID标準,其自身帶有智能化實時操作系統和用于存儲管理的軟件工具,可完全獨立于主機運行,不占用主機CPU資源。RAID7可以看作是一種存儲計算機(StorageComputer),它與其他RAID标準有明顯區别。除了以上的各種标準(如表1),我們可以如RAID0+1那樣結合多種RAID規範來構築所需的RAID陣列,例如RAID5+3(RAID53)就是一種應用較為廣泛的陣列形式。用戶一般可以通過靈活配置磁盤陣列來獲得更加符合其要求的磁盤存儲系統。

RAID5E(RAID5Enhancement):RAID5E是在RAID5級别基礎上的改進,與RAID5類似,數據的校驗信息均勻分布在各硬盤上,但是,在每個硬盤上都保留了一部分未使用的空間,這部分空間沒有進行條帶化,最多允許兩塊物理硬盤出現故障。看起來,RAID5E和RAID5加一塊熱備盤好像差不多,其實由于RAID5E是把數據分布在所有的硬盤上,性能會比RAID5加一塊熱備盤要好。當一塊硬盤出現故障時,有故障硬盤上的數據會被壓縮到其它硬盤上未使用的空間,邏輯盤保持RAID5級别。

RAID5EE:與RAID5E相比,RAID5EE的數據分布更有效率,每個硬盤的一部分空間被用作分布的熱備盤,它們是陣列的一部分,當陣列中一個物理硬盤出現故障時,數據重建的速度會更快。

RAID50:RAID50是RAID5與RAID0的結合。此配置在RAID5的子磁盤組的每個磁盤上進行包括奇偶信息在内的數據的剝離。每個RAID5子磁盤組要求三個硬盤。RAID50具備更高的容錯能力,因為它允許某個組内有一個磁盤出現故障,而不會造成數據丢失。而且因為奇偶位分部于RAID5子磁盤組上,故重建速度有很大提高。優勢:更高的容錯能力,具備更快數據讀取速率的潛力。需要注意的是:磁盤故障會影響吞吐量。故障後重建信息的時間比鏡像配置情況下要長。

技術應用

DAS直接訪問存儲設備

DAS是磁盤存儲設備的術語,以前被用在大、中型機上。使用在PC機上還包括硬盤設備DAS的最新形式是RAID。“直接訪問”指訪問所有數據的時間是相同的。

NAS網絡附加存儲設備

一種特殊目的的服務器,它具有嵌入式的軟件系統,可以通過網絡對個種的系統平台提供文件共享服務。

SAN存儲區域網

一種高速的專用網絡,用于建立服務器、磁盤陣列和磁帶庫之間的一種直接聯接。它如同擴展的存儲器總線,将專用的集線器、交換器以及網關或橋路互相連接在一起。SAN常使用光纖通道。一個SAN可以是本地的或者是遠程的,也可以是共享的或者是專用的。SAN打破了存儲器與服務器之間的束縛,允許獨立地選擇最佳的存儲器或者是最佳的服務器,從而提高可擴性和靈活性。

上一篇:樂逗遊戲

下一篇:西貢小姐

相關詞條

相關搜索

其它詞條