獨立磁盤冗餘陣列RAID

RAID是獨立磁盤冗餘陣列的縮寫。這一術語是加州大學伯克利分校研究員Patterson、Gibson和Katz在1988年撰寫的一篇說明陣列配置和應用的論文中最先使用的。

  過去,計算機系統往往只限於向單個磁盤寫入信息。這種磁盤通常價格昂貴而又極易故障。硬盤一直是計算機系統中最脆弱的環節,因爲這些設備是在其它部件完全電子化的系統中唯一的機械部件。磁盤驅動器含有許多以高速運行的活動機械零件。問題不是硬盤驅動器是否會發生故障,而是何時發生故障。

  RAID旨在通過提供一個廉價和冗餘的磁盤系統來徹底改變計算機管理和存取大容量存儲器中數據的方式。它曾被稱爲廉價磁盤冗餘陣列(RAID)。RAID將數據寫入多個廉價磁盤,而不是寫入單個大容量昂貴(SIED)。最初RAID代表廉價磁盤冗餘陣列,但現在已改爲獨立磁盤冗餘陣列。

  RAID基本原理

  RAID通過條帶化存儲和奇偶校驗兩個措施來實現其冗餘和容錯的目標。條帶化存儲意味着可以一次寫入一個數據塊的方式將文件寫入多個磁盤。條帶化存儲技術將數據分開寫入多個驅動器,從而提高數據傳輸速率並縮短磁盤處理總時間。這種系統非常適用於交易處理、但可靠性卻很差,因爲系統的可靠性等於最差的單個驅動器的可靠性。

  奇偶校驗通過在傳輸後對所有數據進行冗餘校驗可以確保數據的有效性。利用奇偶校驗,當RAID系統的一個磁盤發生故障時,其它磁盤能夠重建該故障磁盤。在這兩種情況中,這些功能對於操作系統都是透明的。由磁盤陣列控制器(DAC)進行條帶化存儲和奇偶校驗控制。

  組件

  RAID的主要組件是磁盤陣列控制器(DAC)和由5個磁盤組成的隊列。數據被條帶化存儲在全部5個磁盤上,用奇偶校驗來恢復故障磁盤。RAID有多個不同的等級。某些RAID等級用來提高速度,某些用來提供保護,而RAID-5則結合了兩方面的優勢。我們將對它們進行逐一論述。

  條帶化存儲數據

  以前,計算機只將文件寫入一個磁盤。條帶化存儲使您能夠拆分文件並將不同的片段同時寫入多個磁盤。如果您的文件有5個數據塊,並將它們條帶化存儲到5個磁盤中,每個數據塊將同時寫入各自的磁盤。如果您有5個OLTP交易,每個小於一個數據塊,您就可以同時處理5個不同的交易。

  大多數RAID等級在數據塊級進行條帶化存儲,但RAID也可以在位或字節級進行條帶化存儲。數據塊的大小由系統管理員決定,並被稱爲基帶條深度。

  爲了最大限度地提高磁盤陣列子系統的交易能力,數據必須同時寫入多個驅動器或同時從多個驅動器讀取。爲實現這一點,用戶數據塊被條帶化存儲在整個驅動器陣列上。一個基帶條包括一列扇區(每扇區含512個字節),這些扇區位於陣列中每個磁盤上的相同位置。基帶條深度(即每一數據塊中的扇區數)由子系統軟件定義。

  基帶條深度對性能有直接影響,因爲深度太淺就需要系統執行比實際需要更多的I/O命令。如果規定深度太大,處理器的多任務能力以及多驅動器所帶來的諸多益處可能會被抵銷。

  在一個理想的交易環境中,來自主機的每個請求都只涉及一個驅動器,這可以實現多個驅動器的多個併發交易。 

  將數據條帶化存儲到陣列驅動器解決了前面所述的一個系統驅動器超負荷運行而另一個空閒的問題。數據條帶化存儲避免了使用專用驅動器,並確保數據處理負載在可用的驅動器間平均分配,同時通過同時寫入多個數據塊而提高了性能。

  奇偶校驗

  人們經常混淆奇偶校驗和鏡像(或映像)。鏡像涉及製作磁盤的拷貝。鏡像是將數據同時寫入兩個驅動器的技術。因爲兩個驅動器中的任何一個都可以完成同一任務,所以這些系統具有優異的可靠性,並可獲得出色的交易處理結果。但代價是必須購買兩個驅動器而只得到一個驅動器的容量。鏡像的開銷爲100%,或是雙倍磁盤空間。如果一個磁盤發生故障,鏡像磁盤將接替它進行運行。

  奇偶校驗提供與鏡像相同的一般保護,但開銷較少。如果一個用戶具有由5個磁盤組成的陣列,其中4個用於存儲數據而1個用於奇偶校驗。它的開銷僅爲20%,當需要考慮成本時,這是一個很大的優勢。

  計算機只用0和1來表示數據。異或(XOR)是進行奇偶校驗的一種方法。從每個磁盤中取出一位(0和1)並相加。如果和爲偶數,則奇偶爲被置爲0;如果和爲奇數,則奇偶位被置爲1。

  根據RAID等級,奇偶校驗即可保存到一個磁盤上,也可分配到所有磁盤上。當您使用5個磁盤時,每種方式的奇偶校驗佔磁盤空間的1/5或20%。當使用3個磁盤時,佔1/3或33%。

  RAID配置等級

  目前業界公認有6個RAID配置等級,並將它們規定爲RAID0到RAID5。每個RAID等級分別針對速度、保護或兩者的結合而設計。RAID等級包括:

  RAID 0 ――數據條帶化存儲陣列
  RAID 1 ――鏡像磁盤陣列
  RAID 2 ――並行陣列,漢明碼
  RAID 3 ――帶奇偶校驗的並行陣列
  RAID 4 ――帶專用奇偶校驗驅動器的磁盤陣列
  RAID 5 ――磁盤陣列,所有驅動器均包括奇偶校驗
  最常用的RAID等級爲RAID-0、RAID-2和RAID-5。下面對其進行詳細說明

  RAID-0數據條帶化存儲陣列

  RAID-0將數據條帶化存儲到所有驅動器上,但沒有采用奇偶校驗。如果其中一個磁盤發生故障,數據必須從備份重新存儲到全部5個磁盤上。這種RAID旨在提高速度,在所有RAID中速度最快,但是提供的保護最少。

  RAID-1透明或條帶化存儲鏡像

  RAID-1技術要求每個原始數據磁盤都有一個鏡像磁盤。原始磁盤和鏡像的內容完全一樣。RAID-1能夠提供最好的數據保護,但是速度不如RAID0和5。

  在數據寫到原始磁盤上的同時也會寫到鏡像磁盤上。這一鏡像過程對於用戶是不可見的。因此RAID-1又稱爲透明鏡像。用戶可以設置RAID-1以將數據寫人一個磁盤,並將該磁盤鏡像化;或者也可以將它條帶化存儲到多個磁盤上,每個條帶化存儲的磁盤都有一個鏡像拷貝。這稱爲條帶化存儲鏡像、RAID1+0、RAID10,在有些情況下也稱爲RAID6。

  RAID-5磁盤陣列,奇偶校驗散佈

  RAID-5將數據以數據塊形式進行條帶化存儲,同時還採用了奇偶校驗。利用RAID-5技術,用戶信息和奇偶校驗可以合併到陣列中的每個磁盤上。可以進行獨立和/或並行的數據讀寫操作。該RAID是所有RAID中使用最廣泛。RAID-5沒有RAID-0那麼快,也沒有提供象RAID-1鏡像那樣多的保護。但是RAID-5同時提供良好的速度和保護。這就是爲什麼它往往成爲人們所選擇的RAID等級。
            
  RAID磁盤陣列組件

  RAID磁盤陣列的主要組件是磁盤陣列控制器、5個SCSI通道、以及一個或多個磁盤陣列列隊。通常有兩個磁盤陣列控制器(DAC)作爲一組進行工作。這種實施過去常常由一個主動DAC和一個被動DAC可能發生故障時,另一個就會控制所有磁盤列隊。下圖中有兩個DAC,它們共同控制4個磁盤列隊。您可以將磁盤配置成任何所支持的RAID等級。您甚至可以打亂磁盤而在一個列隊中配置多個RAID。

  內置/外置磁盤陣列

  以前磁盤陣列是通過一跟電纜專門連接到主機,並且始終置於一個外部機箱中。外置磁盤陣列的SCSI長度限度在大約80英寸或25米左右。可以利用一箇中繼器將長度延長25米,但是這樣做將損失5%的性能。

  目前許多計算機採用內置RAID。CPU與磁盤在內部進行通信,但基本原理仍然是一樣的。無論是內置或是外置,磁盤陣列都有一個或兩個磁盤陣列控制器控制的磁盤隊列。 牢記要點

  RAID用於提高數據性能、可靠性和可用性。
  條帶化存儲、奇偶校驗和鏡像是RAID系統的三個主要功能。
  RAID執行的功能對於操作系統是透明的。
  系統通常由磁盤列隊定義,每個磁盤列隊包括5個磁盤並與一個或兩個磁盤陣列控制器連接。
  不同等級的RAID提供不同的速度和不同程度的數據保護。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章