Linux--PAID磁碟陣列與陣列卡

我想喝橙汁兒~發表於2020-10-22

前言

  • RAID是英文Redundant Array of Independent Disks的縮寫,中文簡稱為獨立冗餘磁碟陣列。簡單的說,RAID是一種把多塊獨立的硬碟(物理硬碟)按不同的方式組合起來形成一個硬碟組(邏輯硬碟),從而提供比單個硬碟更高的儲存效能和提供資料備份技術。
  • 組成磁碟陣列的不同方式稱為RAID級別(RAID Levels)。在使用者看起來,組成的磁碟組就像是一個硬碟,使用者可以對它進行分割槽,格式化等等。總之,對磁碟陣列的操作與單個硬碟一模一樣。不同的是,磁碟陣列的儲存速度要比單個硬碟高很多,而且可以提供自動資料備份。資料備份的功能是在使用者資料一旦發生損壞後,利用備份資訊可以使損壞資料得以恢復,從而保障了使用者資料的安全性。

一:RAID磁碟陣列詳解

在這裡插入圖片描述
在這裡插入圖片描述

  • RAID分為不同的等級,不同等級的RAID均在資料可靠性及讀寫效能上做了不同的權衡。

  • 常用的RAID級別有以下幾種:

    RAID 0

    RAID 1

    RAID 5

    RAID 6

    RAID 1+0

1.1:RAID 0磁碟陣列介紹

  • RAID 0稱為條帶化儲存(Striping)(相當於Windows中是帶區卷)
  • RAID 0以連續位或位元組為單位進行資料分割,將資料分段儲存於各個硬碟中並進行讀/寫資料,因此有很高的資料傳輸率,但它沒有資料冗餘,因此不能算真正的RAID結構
  • RAID 0有很高的資料傳輸率,可達到單個硬碟的N倍(N為組成RAID 0硬碟的個數)
  • RAID 0指示單純的提高效能,並沒有為資料的可靠性提供保證,而且其中的一個磁碟失效將影響到所有資料
  • RAID 0不能應用於資料安全性要求高的場合

1.2:RAID 1磁碟陣列介紹

在這裡插入圖片描述

  • RAID 1稱為映象儲存(mirroring)(相當於Windows中的映象卷)
  • 通過磁碟資料映象實現資料冗餘,在成對的獨立磁碟上產生互為備份的資料
  • 當原始資料繁忙時,可直接從映象拷貝中讀取資料,因此RAID 1 可以提高讀取效能
  • 因為資料被同等的寫入成對的磁碟中,所以寫效能比較慢,主要受限於最慢的那塊磁碟
  • RAID 1時磁碟陣列中單位成本最高的,但是提供了很高的資料安全性和可用性。當一個磁碟失效時,系統可以自動切換到映象磁碟上讀寫,而不需要重組失效的資料
  • RAID 1是磁碟利用率最低的一個,如果N(偶數)塊硬碟組合成一組映象,只能利用其中N/2的容量

1.3:RAID 5磁碟陣列介紹

在這裡插入圖片描述

  • RAID 5是一種儲存效能,資料安全與儲存成本兼顧的儲存解決方案,可以理解為是RAID 0和 RAID 1 的這種方案
  • N(N>=3)塊盤組成陣列,一份資料產生N-1個條帶,同時還有一份校驗資料,共N份資料在N塊盤上迴圈均衡儲存
  • N塊盤同時讀寫,讀效能很高,但由於有校驗機制的問題,寫效能相對不高
  • 磁碟利用率為(N-1)/N容量,相當於一塊磁碟的容量空間用於儲存奇偶校驗資訊
  • 可靠性高,允許壞1塊盤,不影響所有資料

1.4:RAID 6磁碟陣列介紹

在這裡插入圖片描述

  • RAID 6採用雙重校驗技術,在RAID 5的技術上增加了第二個獨立的奇偶校驗資訊塊,兩個獨立的奇偶系統使用不同的演算法,即使兩塊磁碟同時失效也不會影響資料的使用,進一步加強了對資料的保護。
  • N(N>=4)塊盤組成陣列,(N-2)/N容量 (相當於2塊磁碟的容量空間用於儲存奇偶校驗資訊)
  • RAID 6需要分配給奇偶校驗資訊更大的磁碟空間,相對於RAID 5有更大的“寫損失”,因此寫效能較差

1.5:RAID容錯對比表

-RAID 1 , RAID 5, RAID 6都具有容錯性,我們做個對比
在這裡插入圖片描述

  • 相對於其他幾種RAID來說,當N>2時,RAID 6的磁碟利用率得到了提高。又因為允許同時兩塊儲存裝置故障,顯然提供了更好的可用性

1.6:RAID 1+0磁碟陣列介紹

在這裡插入圖片描述

  • RAID 1+0是RAID 1和RAID 0的結合,先做映象,再做條帶
  • 兼顧了RAID 1的容錯能力與RAID 0的條帶化讀寫資料的優點,效能好,可靠性高。屬於混合型RAID
  • N(偶數,N>=4)塊盤兩兩映象後,在組合成一個RAID 0,最多允許所有磁碟基組中的磁碟各損壞一個,但是不允許同一基組中的磁碟同時有壞的。
  • 磁碟的利用率為N/2,
    N/2塊盤同時寫入資料,N快盤同時讀取資料
  • 類似的混合RAID還有RAID 0+1,二者在讀寫效能上差別不大,但是在安全性上 RAID 1+0 要好於 RAID 0+1

二:陣列卡介紹

2.1:陣列卡介紹

  • 陣列卡全稱為磁碟陣列卡,是用來實現RAID 功能的板卡
  • RAID卡一般分為硬RAID卡和軟RAID卡兩種
  • 通過硬體來實現RAID功能的就是硬RAID,通常是喲I/O處理器,硬碟控制器,硬碟聯結器和快取等一些列元件構成
  • 通過軟體並使用CPU的RAID卡我們成為軟RAID,因為軟RAID佔用CUP資源比較高,所以絕大部分的伺服器裝置都使用的硬RAID
  • 不同的RAID卡支援的RAID功能不同,例如支援RAID 0,RAID 1,RAID 5,RAID1+0等
  • RAID卡的第一個重要功能就是他可以達到單個磁碟驅動器的幾倍,幾十倍甚至上百倍的速率,這也是RAID最初想要解決的問題
  • RAID卡的第二個重要功能就是提供容錯能力,現在伺服器基本上整合了RAID卡

2.2:RAID卡的介面型別

  • RAID卡的介面指的是支援的介面,目前有IDE 介面,SCSI介面,SATA介面和SAS介面
  1. IDE介面
  • IDE的英文全稱為“Integrated Drive Electronics”,即“電子整合驅動器”,屬於並行介面。
  • 它是把“硬碟控制器”與“盤體”整合在一起的硬碟驅動器,這樣使得硬碟介面的電纜數目與長度有所減少,從而資料傳輸的可靠性得到增強
  • IDE介面價格低廉,相容性強
  • 在實際的應用中,這種型別的介面隨著介面技術的不斷髮展已經很少用了,逐漸被後續發展分支出更多型別的硬碟介面所取代。
  1. SCSI介面
  • SCSI 的英文全稱為“Small Computer System Interface”(小型計算機系統介面),是和IDE完全不同的介面,IDE介面是普通PC的標準介面,而SCSI是一種通用的介面標準,具備與不同型別外部裝置進行通訊的能力,是一種廣泛應用於小型機上的高速資料傳輸技術
  • SCSI是個多工介面,設有母線仲裁功能,掛在一個SCSI母線上的多個外部裝置可以同時工作,並平等佔有匯流排
  • SCSI介面可以同步或非同步傳輸資料,同步傳輸資料可以達到10M/s,非同步傳輸速率可以達到1.5M/s
  • SCSI介面的CPU佔用率低,支援熱插熱拔,但價格較高,因此SCSI硬碟主要用於中,高階工作站中
  1. SATA介面
  • SATA是“Serial ATA”的縮寫,主要用在主機板和大量儲存裝置之間傳輸資料。擁有這種介面的硬碟又叫串列埠硬碟,以採用序列方式傳輸資料

  • SATA匯流排使用了嵌入式時鐘訊號,使得其具備更強的糾錯能力。如果發現資料傳輸中的錯誤會自動進行矯正,很大程度上提高了資料傳輸的可靠性,也是一種支援熱拔熱插的介面

  1. SAS介面
  • SAS的英文全稱為“Serial Attached SCSI”是新一代的SCSI技術,稱為序列式SCSI
  • SAS可以看做是SATA與SCSI的結合體,是同時發揮兩者的優勢產生的,主要用在周邊零件的資料傳輸上
  • 和SATA硬碟相同,都是採用序列技術以獲得更高的傳輸速度
  • SAS的介面技術可以向下相容SATA裝置

2.3:陣列卡的快取

  • 快取(Cache)是RAID卡與外部匯流排交換資料的場所,是RAID卡電路板上的一塊儲存晶片,與硬碟碟片相比,具有極快的存取速度。RAID卡現將資料傳送到快取,再經由快取和外邊資料匯流排交換資料
  • 快取的大小與速度是直接關係到RAID卡的實際傳輸速度的重要因素,大快取能夠大幅度的提高資料命中率從而提高RAID卡整體效能
  • 不同的RAID卡出廠時配備的記憶體容量不同,一般為幾兆到數百兆容量不等,主要取決於磁碟陣列產品所應用的範圍

相關文章