我的地盤我做主(一)——RAID

  獨立硬盤冗餘陣列(RAID, Redundant Array of Independent Disks),舊稱廉價磁盤冗餘陣列(Redundant Array of Inexpensive Disks),簡稱磁盤陣列。其基本思想就是把多個相對便宜的硬盤組合起來,成爲一個硬盤陣列組,使性能達到甚至超過一個價格昂貴、容量巨大的硬盤。根據選擇的版本不同,RAID比單顆硬盤有以下一個或多個方面的好處:增強數據集成度,增強容錯功能,增加處理量或容量。另外,磁盤陣列對於電腦來說,看起來就像一個單獨的硬盤或邏輯存儲單元。分爲RAID-0,RAID-1,RAID-1E,RAID-5,RAID-6,RAID-7,RAID-10,RAID-50,RAID-60。——維基百科

  OK,今天我們來聊聊RAID,它最大的作用就是做了磁盤的冗餘與擴大,也就是將我們計算機的地盤做的更大、更安全一些,保證在計算機使用過程中因磁盤損害而數據不會丟失的一種技術手段,這裏需要注意的是他的冗餘性只針對物理磁盤的損壞,而對邏輯分區及誤刪操作無能爲力。提到RAID人們都會問一句:RAID幾?這個“幾”就是RAID的級別,一般來說單RAID有6個級別,而混合RAID有RAID7|10|50等,其中RAID7不是公開的而且非常昂貴。我麼現在就來詳細的說以下RAID的各個級別:

    RAID0:此級別是將多個(至少兩個)磁盤連接起來當一個大磁盤使用,I/O的方式是將數據分割成塊,編上號,按照順序依次的分散存儲在每個磁盤上,其I/O速率會有顯著提升,理論上是n*disk,不過沒有任何冗餘能力。值得注意的是大家不要把RAID0和JBOD混淆,JBOD也是將多個磁盤組合成一個大的磁盤來用,但是JBOD的I/O是從第一個開始存,存滿第一個再存第二個,它們兩個有點類似於電路中的串聯和並聯,請大家自行體會。

wKiom1UqD6CyTNmHAAA9xcCM5L8273.jpg

    RAID1:此級別是將兩個磁盤做爲一組,一個用於存放數據,另一個做鏡像備份。它的大小取決於最小的那個磁盤,而且不管有幾個磁盤,只要是做RAID1那麼就只有一個磁盤的容量,其餘全是鏡像盤,所以RAID1一般只會做成兩兩一組。它的寫性能有所下降,讀性能有所提升,但理論上都是1塊磁盤的讀寫速度。

wKioL1UqExWCt4eZAAA9tp6Iy6w043.jpg

    RAID2:這是RAID 0的改良版,以漢明碼(Hamming Code)的方式將數據進行編碼後分區爲獨立的比特,並將數據分別寫入硬盤中。因爲在數據中加入了錯誤修正碼(ECC,Error Correction Code),所以數據整體的容量會比原始數據大一些,RAID2最少要三臺磁盤驅動器方能運作。--維基百科

wKiom1UqEnigD27lAACP22dcTmY238.jpg

    RAID3:採用Bit-interleaving(數據交錯存儲)技術,它需要通過編碼再將數據比特分割後分別存在硬盤中,而將同比特檢查後單獨存在一個硬盤中,但由於數據內的比特分散在不同的硬盤上,因此就算要讀取一小段數據資料都可能需要所有的硬盤進行工作,所以這種規格比較適於讀取大量數據時使用。--維基百科

wKiom1UqEqqhsHbiAABayZSSzmk072.jpg

    RAID4:此級別是用多個磁盤存取數據,抽出其中一塊做校驗盤,也就是說這個盤上存放的不是原始數據,而是根據原始數據計算出來的校驗和,以三塊盤爲例:如果其中某塊數據盤損壞,能夠通過校驗盤和另一塊數據盤還原回損壞的盤上的數據,但是這種模式會對校驗盤造成很大的讀取壓力。

wKioL1UqFaHD54AIAABdz6RzNtI463.jpg

    RAID5:此級別是對RAID4的一種改進,我們說過4級別會對校驗盤產生很大的壓力,所以校驗盤容易損壞,那麼我們就將教研盤分散到各個盤之中,同樣以三塊盤爲例:第一次存放數據:A存,B存,C教研;第二次:A校驗,B存,C存;第三次:A存,B校驗,C存。以此類推即可。

wKiom1UqFW7iYS2RAABdOpL0bGk500.jpg

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

wKioL1UqF5TyJRkyAAB-cpzUGxs955.jpg

    RAID10:這是一個混合級別及先做RAID1再做RAID0,能夠達到既有冗餘有增加讀寫能力。

wKioL1UqGeGQxQVFAABciAI2EHI063.jpg

    RAID01:同理,先做0後做1,但是01沒有10在實際運用中常見,因爲多塊磁盤中損壞一塊磁盤要比兩塊磁盤中損壞一塊磁盤的概率高。

wKiom1UqGSTBLdfVAABehHaR48M585.jpg

    RAID50:這就是先做5後做0啦,這是在實際運用中最常見的一種模式了,經濟實惠,方便快捷,可爲居家旅行殺人越貨之良器。

    

wKiom1UqGiPzsM6bAASTVY0lUk0757.jpg

  好了,這就是幾種我們常見的RAID了,下面我們在總結一下他們各自的特點:

wKiom1UqGr6xmG2BAAIoH9O_ypM797.jpg

 看了這麼多的理論知識,有些童鞋應該磨刀霍霍了,我們來實際的操作一下,建立一個3G的RAID5(軟RAID),並有一個空閒磁盤做替換盤:

    1、我們需要5個1G的磁盤空間,並且都爲fd模式

    2、創建RAID5設備/dev/md0

wKiom1UqIiGzNpyHAAINuoaca3g130.jpg

    3、查看/dev/md0

wKioL1UqI8CjxY3TAAJGbbPZQR8609.jpg

    4、格式化並掛載RAID5設備

wKiom1UqI6bATzXsAAL9R_DlLcI381.jpg

   好了,我們的RAID5已經可以使用了,本文到這裏就基本結束了,但是RAID還有很多實用的知識及技巧,例如我們提到的軟、硬RAID,這些還需要各位童鞋自己去搜集一下相關資料吧。

    希望本文能夠給您帶來幫助,如有不當之處敬請各位看官指出,拜謝!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章