主頁 > 軟體設計 > RAID0、1、3、5、6、10、50和熱備盤超詳細說明

RAID0、1、3、5、6、10、50和熱備盤超詳細說明

2022-11-09 09:12:43 軟體設計

 

 

傳統RAID技術
RAID概念說明

RAID技術出現的初衷是把多個小容量的硬碟組合起來,以獲得更大的存盤容量,當前我們所說的RAID技術更多則是與資料保護相關,換言之,當物理設備失效時,RAID能夠用來防止資料的丟失,

RAID技術的主要功能:

  • 通過對硬碟上的資料進行條帶化,實作對資料成塊存取,減少硬碟的機械尋道時間,提高了資料存取速度,
  • 通過對一陣列中的幾塊硬碟同時讀取(并行訪問),減少了硬碟的機械尋道時間,提高了資料存取速度,
  • 通過鏡像或者存盤奇偶校驗資訊的方式,實作了對資料的冗余保護,
  • 隨著陣列技術的發展,已經產生了很多不同型別的RAID,但現在只有少數幾種RAID仍在使用,在這個章節中,我們將討論最常用的RAID型別,也會學習RAID的其它相關功能,比資料保護等,同時,選擇不同的RAID型別意味著不同的性能/成本,

在存盤設備中,可以通過2種方式實作RAID功能:硬體RAID和軟體RAID,

  • 硬體RAID使用專用的RAID配接器、硬碟控制器或存盤處理器,RAID控制器有自己的處理器,I/O處理芯片,和記憶體,用來提高資源利用率和資料傳輸速度,RAID控制器管理路由、緩沖區,控制主機與RAID間資料流,硬體RAID通常在服務器中使用,
  • 軟體實作的RAID沒有它自己的處理器或I/O處理芯片,而是完全依賴于主機處理器,因此,低速CPU不能滿足RAID實施的要求,軟體RAID通常在企業級存盤設備上使用,

  • 分條寬度

指在一個分條中資料成員盤的個數;

  • 分條深度

指一個條帶的容量大小,

  • RAID技術通常有2種不同的方式進行資料保護,

一種方法是在另一塊冗余的硬碟上保存資料的副本,

二是使用奇偶校驗演算法,奇偶校驗碼是使用用戶資料計算出的額外資訊,對于使用奇偶校驗的RAID型別,它意味著需要額外的校驗硬碟,奇偶校驗采用的是異或(XOR的計算符號⊕)演算法,

異或演算法的輸出見下表:

 

 

 

 

總結來說,RAID技術的優勢體現在如下幾個方面:

  • 把多個硬碟組合成一個邏輯盤組,以提供更大容量的存盤,
  • 將資料分割成資料塊,對多個硬碟并行進行寫入/讀出,提高硬碟訪問速度,
  • 通過提供鏡像或奇偶校驗來提供容錯,

 

熱備盤說明

  • 當壞盤出現后,服務器會報警,人工可以手動將壞盤替換出來,當插入好盤的時候,RAID控制器會根據XOR,將的三塊盤的資訊在后臺算出來,然后寫入新的硬碟,有些RAID控制系統會用NVRAM來存放陣列資訊,因此和整列相關的條帶化資料也會重新分配到新盤上,這些作業都對用戶和應用程式來說都是透明的,用戶可能會感受到的就是系統會因為在后臺底層進行條帶資料的重新分配而帶來的服務器回應延遲,
  • 當然,如果條件允許,用戶也可以強制作重新分配,當然是在維護停機時間內操作,
  • 但是由于XOR的限制和RAID 5這個級別的限制,如果連續兩個盤出現了問題,呢么整個盤陣中的資料就完蛋了,系統也會不可用,
  • 特別是那些無人值守的機房,RAID 5中死掉一個盤,沒有關系,如果他們比較倒霉,在管理人員沒有更換壞盤的時候,第二個硬碟也死掉了,那麼就都完蛋了,
  • Hot-Spare盤就是一個不參與盤陣的,但是加電上線的盤,一點RAID 中的盤出現問題,它都可以自動的替換進入盤陣,你可以把它想象成一個"自動換盤"的概念,
  • 硬碟數量的話,就需要多一塊,比如raid1需要兩塊盤,做熱備的話就需要3塊盤了,但使用的依然是2快,剩下一塊隨時準備替換使用中的2快中壞了的盤,

RAID0 說明

 

 

 

  • 在所有RAID級別中,RAID 0(也被稱為條帶化RAID)具有最高的存盤性能,RAID 0使用條帶化技術將資料分布存盤在RAID組的所有硬碟中,
  • 一個RAID 0包含至少2個成員盤,RAID 0組將資料分為大小不等的從512個位元組至兆位元組的資料塊(通常是512位元組的倍數),并行將其寫入到不同的硬碟中,如圖所示的兩個硬碟(驅動器)構成的RAID中:前兩塊資料被寫入到分條0上,其中,第一個資料塊被寫在硬碟1的條帶0上,第二個資料塊并行存放在硬碟2的條帶0上;這時,再下一個資料塊被寫到硬碟1上的下一個條帶(條帶1)上,以此類推,以這種方式,I/O的負載平衡分布在RAID中的所有硬碟上,由于資料傳輸總線上的速度遠大于硬碟讀寫速度,因此,RAID組上的硬碟可以認為在同時進行讀寫,
  • 一個RAID 0的硬碟組中的硬碟必須具有相同的大小,轉速,如果一個RAID0的由4個硬碟組成,則讀寫速率理論上可達單個硬碟的4倍(實際上可能有系統損耗),容量為單個硬碟的4倍,RAID 0 中硬碟的容量大小不同,可用容量是最小的硬碟的容量的4倍,速度也是最小硬碟速度的4倍,
  • RAID 0像是提供了一個單一的大容量的硬碟,還同時具有非常快速I/O的特點,在RAID0技術使用之前,類似RAID 0的一種技術被稱為JBOD,一個JBOD(Just a Bundle OfDisks,簡稱一堆硬碟)是一組硬碟組合成一個虛擬的大硬碟,與RAID 0最大的區別是,一個JBOD的資料塊不是同時并行寫入不同硬碟的,在JBOD中,只有將第一塊硬碟的存盤空間使用完,才會使用第二塊硬碟,所以JBOD總的可用容量是所有個硬碟容量的總和,但性能是單個硬碟的性能!
  • RAID 0 安全相關說明:
    1. RAID 0是最不安全的,包括跟普通磁盤比較,也不如的,現在大部分硬碟壞的,都是硬故障,也就是磁盤本身問題,根檔案沒關系,某個檔案壞了,不管在RAID幾下面,他都是壞的,RAID是提高物理設備,也就是磁盤,的性能或者安全性,與軟體,比如檔案,沒有關系的,一個檔案壞了,不影響別的檔案,不管是單磁盤還是RAID任何級別的情況下,說RAID幾 安全不,都是說硬體,比如有磁盤壞了,資料會不會丟,會不會導致服務器不能作業,等等,這一討論都是在硬體層上的,硬體壞了,資料檔案依然可以完好,只是機器不能作業,就不能讀取這些檔案了,
    2. 組建RAID0,所有的檔案基本上(注意是基本上,除了很小的檔案,具體多小不深入討論了,越說越多),都是跨磁盤存盤的,比如兩個磁盤組RAID0,那一個檔案就被分稱多份,存在不同磁盤上,只有所有磁盤都可讀,才能把分開的多份,合并成一個完整檔案,作業系統才能識別,這個檔案,而普通模式【未做raid】的兩個磁盤A和B,每個檔案還是單獨在要么磁盤A,或者B 上面存的,A盤壞了,B盤檔案還是可以讀的,不像RAID0檔案被分割后分別存盤在A和B上,基本上,每次訪問檔案都得要求讀取兩塊,這樣任何一個磁盤壞,兩個磁盤上的所有資料都無法訪問了,因為即使另一個磁盤好的,但是它上面的資料都是分開的,不是完整的,依賴于另一塊磁盤,三塊,四塊磁盤的RAID0風險就更高了,
    3. 既然你能創建RAID0,那不想要了,就不創建,刪了他,以普通模式作業,很簡單,在哪里創建,就在那里洗掉(一般機器有專門的RAID管理界面,類似BIOS,啟動時候按規定的快捷鍵進入,)沒有什么特殊的,備份資料了,就跟對一臺新設備操作一樣,想怎么設定隨便你,

  • RAID 0采用條帶化技術將資料寫入硬碟組中,它將資料分為資料塊,并均勻地分布存盤在RAID組中的所有硬碟上,只有當RAID組的前一個分條被資料塊寫滿后,資料才會寫入到下一個分條,在圖中,資料塊D0,D1,D2,D3,D4,D5正在等待寫入到RAID 0級別的硬碟組,D0將被寫入到第一個分條(分條0)的第一塊盤(硬碟1)上、D1寫到的第一個分條的硬碟2上,以此類推,正是通過條帶化并行的方式,將所有資料塊寫入到RAID 0組,
  • RAID 0組的寫入性能與硬碟的數量成正比,

  • 當RAID 0接收資料讀取請求時,它會在所有硬碟上搜索目標資料塊并讀取資料,在圖中,我們可以看到整個讀取程序,
  • 首先,陣列收到讀取資料塊D0,D1,D2,D3,D4,D5的請求,接下來,陣列并行從硬碟1讀取D0,從硬碟2讀取D1,其他資料塊也按類似的方式讀取,所有的資料塊從RAID讀取后,他們被集成到RAID控制器,然后發送到主機,
  • 同寫入資料一樣,RAID 0的讀取性能與硬碟的數量成正比,

 

RAID1說明

  • RAID 1(也被稱為鏡像結構的硬碟陣列)旨在建立一個高安全性的RAID級別,RAID1使用2個相同的硬碟系統【raid1只能為2塊硬碟】,并設定了鏡像,當資料寫入到一個硬碟上時,資料的副本會同時存盤在鏡像硬碟上,當源硬碟(物理)失敗時,鏡像硬碟從源硬碟接管服務,保證服務的連續性,鏡像盤作為備份,提供高資料可靠性,
  • 一個RAID 1組存盤的資料量只是單個硬碟的容量,另一硬碟保存的是資料的副本,相當于每一G位元組的資料存盤占用了2G位元組的硬碟空間,所以說兩個硬碟組成的RAID 1的空間利用率是50%,
  • RAID 1的兩個硬碟必須具有相同的大小,如果兩個硬碟的容量大小不同,可用容量是最小的硬碟的容量, 壞一塊盤資料不會丟失,2塊同時壞,資料將丟失,

  • RAID 0采用條帶化技術將不同資料并行寫入到硬碟中,而RAID 1則是同時寫入相同的資料到每個硬碟,資料在所有成員硬碟中都是相同的,在上圖所示,資料塊D0,D1和D2,等待寫入到硬碟,D0和D0的副本同時寫入到兩個硬碟中(硬碟1和硬碟2),其他資料塊也以相同的方式(鏡像)寫入到RAID 1硬碟組中,
  • 通常來說,一個RAID 1的寫性能是單個硬碟的寫性能,

 

 

 

  • RAID 1讀取資料時,會同時讀取資料盤和鏡像盤,以提高讀取性能,如果其中一個硬碟失敗,可以從另一個硬碟讀取資料,
  • RAID 1系統的讀取性能等于兩個硬碟的性能之和,在RAID組降級的情況下,性能下降一半,

RAID3 說明

  • RAID 3與RAID 0類似,不同之處在于RAID 3帶有專用的奇偶校驗的分條,在RAID 3中,一塊專用硬碟(校驗盤)用來保存同一分條上其他硬碟上的相應的條帶中的資料的奇偶校驗值,如果檢測到不正確的資料或硬碟出現故障,我們可以利用奇偶校驗資訊來恢復故障硬碟上的資料,RAID 3適用于資料密集型或單用戶環境,需要長期、連續訪問的資料塊,RAID 3將資料寫入操作分配給RAID組內的資料成員盤,但是,當有新資料需要寫入時,無論寫入哪個硬碟,RAID 3都需要重新計算并重寫校驗資訊,因此,當某個應用程式需要大量寫入時,RAID 3的奇偶校驗盤將有很大的作業量,因為需要等待奇偶校驗,所以會對RAID 3組的讀寫性能有一定影響,此外,因為校驗盤有較高的作業負載,它往往是RAID 3里最容易失效的硬碟,這就是為什么校驗盤被稱為RAID 3的瓶頸的原因,
  • RAID3 最少硬碟數為3塊,假定一個RAID 3的硬碟數為N,其中有效用戶資料存盤容量為N-1個硬碟的容量,與其他RAID一樣,RAID 3中的成員盤的容量和轉速應該是相同的,
  • 在RAID 3級別和RAID 5級別的硬碟陣列中,如果一個硬碟失效,該硬碟組將從在線(正常)狀態轉變為降級狀態,直到完成重構失效硬碟,如果RAID中的另一個硬碟也出現故障,則硬碟組的資料將丟失,

  • RAID 3采用單硬碟容錯和并行資料傳輸,換句話說,RAID 3采用分條技術將資料分塊,這些塊進行異或演算法,并將奇偶校驗資料寫到最后一個盤——RAID 3組的奇偶校驗硬碟,當硬碟出現故障時,資料被寫入到那些沒有故障的硬碟上,奇偶校驗繼續,
  • RAID 3的性能不是固定的,原則上,RAID 3采用的是N+1的資料保護方法,這意味著當有N個硬碟的用戶資料需要保護時,需要一個額外的硬碟來存盤校驗資訊,在這種情況下,新的資料塊被寫入硬碟同時,奇偶校驗資訊被計算生成后,寫入校驗硬碟,
  • 通常情況下,RAID 3組的所有的硬碟會在分條程序中合作,N個硬碟會并行寫入,但當新寫入的資料較少,只需寫入一個或兩個硬碟時,按照RAID 3的作業原理,仍需要讀所有的硬碟以便重新計算新的奇偶校驗值,這種少量寫入資料的場景,因為需要額外的讀和寫操作,相對于對單個硬碟進行資料寫入,并沒有提升硬碟的性能,這種情況被稱為RAID 3的“寫懲罰”,
  • RAID 3的寫入性能取決于更改資料的數量、硬碟的數目、以及計算和存盤奇偶校驗資訊所需的時間,假定一個RAID 3的硬碟數為N,當所有成員盤的轉速相同時,在不考慮寫懲罰,滿分條寫的情況下,RAID 3的順序IO寫性能理論上略小于 N-1倍單個硬碟的性能(計算冗余校驗需要額外的計算時間),

  • 在RAID 3中,資料以分條的方式進行讀取,RAID中的每個硬碟的硬碟驅動器被控制,所以RAID 3里同一條帶上的資料塊可以并行讀取,所以,RAID 3的每一個硬碟被充分利用,提升了讀取性能,
  • RAID 3使用并行資料讀(寫)模式,
  • RAID 3的讀取性能取決于讀取的資料量和RAID 3陣列的硬碟數量,

RAID5 說明

  • RAID 5是改進版的RAID 3,使用條帶化并計算奇偶校驗資訊,在RAID 3中有一塊專用硬碟負責奇偶校驗資料的寫入和讀取,這導致了我們前面提到的性能瓶頸問題,RAID 5使用的是分布式奇偶校驗,每個成員硬碟將用于存盤用戶資料和奇偶校驗資料,所以RAID 5沒有瓶頸或熱點,
  • RAID5 最少硬碟數為3塊,假定一個RAID 5的硬碟數為N,其中有效用戶資料存盤容量為N-1個硬碟的容量,與其他RAID一樣,RAID 5陣列中的成員盤的容量和轉速應該是相同的,
  • 在RAID 3級別和RAID 5級別的硬碟陣列中,如果一個硬碟失效,該硬碟組將從在線(正常)狀態轉變為降級狀態,直到完成重構失效硬碟,如果RAID中的另一個硬碟也出現故障,則硬碟組的資料將丟失,

 

 

 

 

  • 在RAID 5中,資料以分條的形式寫入硬碟組中,硬碟組中的每個硬碟都存盤資料塊和校驗資訊,資料塊寫一個分條時,奇偶資訊被寫入相應的校驗硬碟,在RAID 5進行連續寫入的時候,不同分條用來存盤奇偶校驗的硬碟是不同的,因此RAID 5的不同分條的奇偶校驗資料不是單獨存在一個固定的校驗盤里的,而是按一定規律分散存放的,
  • RAID 3在少量的資料被寫入時有寫懲罰,RAID 5類似,
  • RAID 5的寫入性能取決于所寫的資料量和RAID 5組中硬碟的數量,假定一個RAID 5的硬碟數為N,當所有成員盤的轉速相同時,在不考慮寫懲罰,滿分條寫的情況下,RAID 5的順序IO寫性能理論上略小于 N-1倍單個硬碟的性能(計算冗余校驗需要額外的計算時間),

  • RAID 5組的資料以分條的形式存盤在硬碟上,只需N-1個硬碟的資料就可以恢復全部資料,
  • RAID 5組的讀取性能取決于所寫的資料量和RAID組中的硬碟數量,

RAID 6 說明

  • 如上圖,RAID 6 最少需要5個硬碟,公式為:N+2(N>2)個硬碟
  • 前面討論到的RAID組資料保護都是考慮單一硬碟失效的場景(RAID 0排除在外),現在,硬碟的容量已經增加了很多,同時重構時間也增加了,很多大容量的硬碟組合起來形成的一個RAID 5組重建失效硬碟可能需要幾天,而不是幾個小時,在重建程序中,系統處于降級狀態,這種情況下,任何額外的硬碟故障都會導致硬碟組失效和資料丟失,這就是為什么一些組織或單位需要一個雙冗余系統,換句話說:一個RAID組應該允許2個硬碟故障時,同時所有的資料應該是可訪問的,這種雙重冗余資料保護型別的實作有一些不同的方式:
    1. 第一種是多重鏡像,多重鏡像是指資料塊存盤在主盤時同步存盤多個多個副本到多余硬碟的方法,這種方式意味著大量的開銷,
    2. 第二種方式是RAID 6級別硬碟陣列,RAID 6組對2個硬碟失效提供保護,這些硬碟甚至可以在同一時間失效,
    3. RAID 6的正式名稱是分布式雙校驗RAID,本質上它是一種改進的RAID 5,也具有條帶化和分布式奇偶校驗,現在在RAID 6有雙校驗,這意味著兩點:
    4. 寫入用戶資料時,附加的雙校驗計算需要進行,所以,在所有RAID 型別中,RAID 6是 “最慢”的,
    5. 額外的校驗資訊需要占用兩個盤的存盤空間,這就是為什么我們把RAID 6看作是一個N+2型別的RAID,
    6. 目前,RAID 6沒有一個統一的標準,不同公司以不同的方式實施RAID 6,以下2個是主要的實作方式:
    7. RAID P + Q:華為,HDS
    8. RAID DP:NetApp
  • 這2種模式獲得校驗資料的方法不同,然而,在RAID組有2塊硬碟故障的情況下,他們可以確保資料的完整性,并支持資料訪問,

RAID 6 P+Q說明

  • RAID 6采用P+Q校驗時,P和Q是2個彼此獨立的校驗值,它們使用不同的演算法,用戶資料和校驗資料分布在同一分條的所有硬碟上,
  • P是用戶資料塊的簡單的異或運算得到的,Q是對用戶資料進行GF(GF =伽羅瓦域)變換再異或運算得到,α,β和γ為常量系統,由此產生的值是一個所謂的“蘆葦碼”,該演算法將資料硬碟相同分條的所有資料進行轉換和異或運算,
  • 如圖所示,P1是通過對D0,D1,D2所在的分條0進行異或操作獲得的,P2是對D3,D4,D5所在的分條1異或操作實作的,P3則是對D6,D7,D8 所在的分條2條進行異或操作,
  • Q1是對D0,D1,D2 所在的分條0條進行GF變換再異或操作實作的,Q2是對D3,D4,D5 所在的分條1進行GF變換再異或運算, Q3實作對D6,D7,D8分條2進行GF變換再異或,
  • 如果一個硬碟中的一個分條失效,只需有P校驗值即可恢復失效硬碟上的資料,異或運算在P校驗值和其它資料硬碟間執行,如果同一個分條有2個硬碟同時故障,不同的場景有不同的處理方法,如果Q校驗值不在失效的一個硬碟上,資料可以被恢復到資料盤上,然后重新計算校驗資訊,如果Q在其中一個失效的硬碟上,兩個的公式都需要使用才能恢復兩個失效硬碟上的資料,

RAID 6 DP說明

  • 另一種演算法是RAID 6 DP,RAID 6 DP也有兩個獨立的校驗資料塊,第一個校驗資訊與RAID 6 P+Q的第一個校驗值是相同的,第二個不同于RAID 6 P+Q,采用的是斜向異或運算得到行對角奇偶校驗資料塊,行奇偶校驗值是同一分條的用戶資料異或運算獲得到,所圖所示:P0是由分條0上的D0,D1,D2和D3異或運算得到,P1由分條1上的D4,D5,D6,D7異或運算,等等,所以,P0 = D0 ⊕D1⊕ D2⊕D3,P1 = D4⊕D5⊕D6⊕D7,如此類推,
  • 第二個校驗資料塊是由陣列的對角線資料塊進行異或運算,資料塊的選擇程序比較復雜,DP0是由硬碟1 的分條0上的D0,硬碟2的分條1上的D5,硬碟3上的分條2的D10,和硬碟上4 分條3上的D15異或操作得到,DP1是對硬碟2 的分條0上的D1,硬碟3的分條1上的D6,硬碟4上分條2的 D11,和的第一塊校驗硬碟上分條3 上的P3進行異或運算得到,DP2是硬碟3 分條0上的D2,硬碟4上的分條1的 D7,奇偶硬碟分條2的P2,和硬碟1 分條3上的D12進行異或運算得到,所以,DP0 = D0⊕D5⊕D10⊕D15,DP1 =D1⊕D6⊕D11⊕P3,如此類推,
  • 一個RAID 6陣列能夠容忍雙硬碟失效,如上圖所示,如果硬碟1和2失效,上面的所有資料會丟失,但其他硬碟上的資料和奇偶校驗資訊是有效的,我們了解一下陣列資料是如何恢復的,恢復D12采用DP2和斜向校驗(D12 = D2⊕D7⊕P2⊕DP2);恢復D13利用P3和橫向校驗(D13 = D12⊕D14⊕D15⊕P3),通過使用DP3和斜向校驗恢復D8(D8 = D3⊕P1⊕DP3⊕D13),使用P2和橫向校驗得到D9(D9 =D8⊕D10⊕D11⊕P2),恢復D4采用DP4和斜向校驗,利用P1和橫向校驗得到D5等,這些操作是重復的,直到所有資料在故障盤被恢復,
  • 一個RAID 6組的性能,無論演算法是DP還是P+Q,相對都比較慢,因此,RAID 6適用兩種場景:
  1. 資料非常重要,需要盡可能長的時間處于在線和可使用的狀態,
  2. 使用的硬碟容量非常大(通常超過2T),大容量硬碟的重建時間較長,兩個硬碟都失效是會造成資料較長時間不能訪問,在RAID 6中,可以實作一個硬碟重構時另一個硬碟失效,一些企業希望在使用大容量硬碟后,存盤陣列的供應商使用一個雙重保護的RAID組,

混合RAID 10 說明

  • 對于大多數的企業客戶而言,RAID 0并不是一個真正可以操作的選擇,而RAID 1受限于硬碟容量利用率,RAID 10組合了RAID 1和RAID 0,提供了最好的解決方案,特別是在隨機寫入時,由于不存在寫懲罰,性能優勢比較明顯,
  • RAID 10組的硬碟數量總是偶數,最少需要4塊硬碟(2個RAID1組成一個RAID0),一半硬碟進行用戶資料寫入,另一半保存用戶資料的鏡像副本,鏡像基于分條執行,
  • 我們一般使用RAID1+RAID0模式,如上圖,在圖中,物理硬碟1和2構成一個RAID 1,物理硬碟3和物理硬碟4形成另一個RAID 1,這2個RAID 1子組再形成RAID 0,
  • RAID 10組寫入資料時,子組間采用并行的方式寫入資料塊,子組內資料采用鏡像的方式寫入,如圖所示,D0將寫入物理硬碟1,副本將被寫入物理硬碟2,
  • 當硬碟在不同的RAID 1組故障(例如硬碟2和4),RAID 10組的資料訪問不受影響,這是因為其他2個硬碟(3和1)上有故障盤2和4上資料的完整副本,但是,如果同一RAID1子組的硬碟(例如,硬碟1和2)在同一時間失敗,資料將不能訪問,
  • 從理論上講,RAID 10可以忍受總數一半的物理硬碟失效,然而,從最壞的情況來看,在同一個子組的兩個硬碟故障時,RAID 10也可能出現資料丟失,通常RAID 10用來保護單一的硬碟失效,

混合RAID 50 說明

  • RAID 50是RAID 0和RAID 5的組合,兩個子組被配置成RAID 5,這兩個子組再形成RAID0,每個RAID 5子組完全獨立于對方,RAID 50需要至少六個硬碟,因為一個RAID 5組最少需要三個硬碟
  • 所圖所示,物理硬碟1,2,和3形成一個RAID 5,物理硬碟4,5,和6形成另一組RAID5組,兩個RAID 5子組間再構成一個RAID 0,
  • 在RAID 50中,RAID可以同時接受多個硬碟的并發故障,然而,一旦兩塊硬碟在同一RAID5組同時失敗,RAID 50的資料將丟失,

 

本文來自博客園,作者:古道輕風,轉載請注明原文鏈接:https://www.cnblogs.com/88223100/p/Detailed-description-of-RAID0_1_3_5_6_10_50-and-hot-spare.html

轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/530012.html

標籤:其他

上一篇:Python基礎之面向物件:7、面向物件之魔法方法

下一篇:初識設計模式 - 中介模式

標籤雲
其他(157675) Python(38076) JavaScript(25376) Java(17977) C(15215) 區塊鏈(8255) C#(7972) AI(7469) 爪哇(7425) MySQL(7132) html(6777) 基礎類(6313) sql(6102) 熊猫(6058) PHP(5869) 数组(5741) R(5409) Linux(5327) 反应(5209) 腳本語言(PerlPython)(5129) 非技術區(4971) Android(4554) 数据框(4311) css(4259) 节点.js(4032) C語言(3288) json(3245) 列表(3129) 扑(3119) C++語言(3117) 安卓(2998) 打字稿(2995) VBA(2789) Java相關(2746) 疑難問題(2699) 细绳(2522) 單片機工控(2479) iOS(2429) ASP.NET(2402) MongoDB(2323) 麻木的(2285) 正则表达式(2254) 字典(2211) 循环(2198) 迅速(2185) 擅长(2169) 镖(2155) 功能(1967) .NET技术(1958) Web開發(1951) python-3.x(1918) HtmlCss(1915) 弹簧靴(1913) C++(1909) xml(1889) PostgreSQL(1872) .NETCore(1853) 谷歌表格(1846) Unity3D(1843) for循环(1842)

熱門瀏覽
  • 面試突擊第一季,第二季,第三季

    第一季必考 https://www.bilibili.com/video/BV1FE411y79Y?from=search&seid=15921726601957489746 第二季分布式 https://www.bilibili.com/video/BV13f4y127ee/?spm_id_fro ......

    uj5u.com 2020-09-10 05:35:24 more
  • 第三單元作業總結

    1.前言 這應該是本學期最后一次寫作業總結了吧。總體來說,對作業的節奏也差不多掌握了,作業做起來的效率也更高了。雖然和之前的作業一樣,作業中都要用到新的知識,但是相比之前,更加懂得了如何利用工具以及資料。雖然之間卡過殼,但總體而言,這幾次作業還算完成的比較好。 2.作業程序總結 相比前兩個單元,此單 ......

    uj5u.com 2020-09-10 05:35:41 more
  • 北航OO(2020)第四單元博客作業暨課程總結博客

    北航OO(2020)第四單元博客作業暨課程總結博客 本單元作業的架構設計 在本單元中,由于UML圖具有比較清晰的樹形結構,因此我對其中需要進行查詢操作的元素進行了包裝,在樹的父節點中存盤所有孩子的參考。考慮到性能問題,我采用了快取機制,一次查詢后盡可能快取已經遍歷過的資訊,以減少遍歷次數。 本單元我 ......

    uj5u.com 2020-09-10 05:35:48 more
  • BUAA_OO_第四單元

    一、UML決議器設計 ? 先看下題目:第四單元實作一個基于JDK 8帶有效性檢查的UML(Unified Modeling Language)類圖,順序圖,狀態圖分析器 MyUmlInteraction,實際上我們要建立一個有向圖模型,UML中的物件(元素)可能與同級元素連接,也可與低級元素相連形成 ......

    uj5u.com 2020-09-10 05:35:54 more
  • 6.1邏輯運算子

    邏輯運算子 1. && 短路與 運算式1 && 運算式2 01.運算式1為true并且運算式2也為true 整體回傳為true 02.運算式1為false,將不會執行運算式2 整體回傳為false 03.只要有一個運算式為false 整體回傳為false 2. || 短路或 運算式1 || 運算式2 ......

    uj5u.com 2020-09-10 05:35:56 more
  • BUAAOO 第四單元 & 課程總結

    1. 第四單元:StarUml檔案決議 本單元采用了圖模型決議UML。 UML檔案可以抽象為圖、子圖、邊的邏輯結構。 在實作中,圖的節點包括類、介面、屬性,子圖包括狀態圖、順序圖等。 采用了三次遍歷UML元素的方法建圖,第一遍遍歷建點,第二、三次遍歷設定屬性、連邊,實作圖物件的初始化。這里借鑒了一些 ......

    uj5u.com 2020-09-10 05:36:06 more
  • 談談我對C# 多型的理解

    面向物件三要素:封裝、繼承、多型。 封裝和繼承,這兩個比較好理解,但要理解多型的話,可就稍微有點難度了。今天,我們就來講講多型的理解。 我們應該經常會看到面試題目:請談談對多型的理解。 其實呢,多型非常簡單,就一句話:呼叫同一種方法產生了不同的結果。 具體實作方式有三種。 一、多載 多載很簡單。 p ......

    uj5u.com 2020-09-10 05:36:09 more
  • Python 資料驅動工具:DDT

    背景 python 的unittest 沒有自帶資料驅動功能。 所以如果使用unittest,同時又想使用資料驅動,那么就可以使用DDT來完成。 DDT是 “Data-Driven Tests”的縮寫。 資料:http://ddt.readthedocs.io/en/latest/ 使用方法 dd. ......

    uj5u.com 2020-09-10 05:36:13 more
  • Python里面的xlrd模塊詳解

    那我就一下面積個問題對xlrd模塊進行學習一下: 1.什么是xlrd模塊? 2.為什么使用xlrd模塊? 3.怎樣使用xlrd模塊? 1.什么是xlrd模塊? ?python操作excel主要用到xlrd和xlwt這兩個庫,即xlrd是讀excel,xlwt是寫excel的庫。 今天就先來說一下xl ......

    uj5u.com 2020-09-10 05:36:28 more
  • 當我們創建HashMap時,底層到底做了什么?

    jdk1.7中的底層實作程序(底層基于陣列+鏈表) 在我們new HashMap()時,底層創建了默認長度為16的一維陣列Entry[ ] table。當我們呼叫map.put(key1,value1)方法向HashMap里添加資料的時候: 首先,呼叫key1所在類的hashCode()計算key1 ......

    uj5u.com 2020-09-10 05:36:38 more
最新发布
  • 【中介者設計模式詳解】C/Java/JS/Go/Python/TS不同語言實作

    * 中介者模式是一種行為型設計模式,它可以用來減少類之間的直接依賴關系,
    * 將物件之間的通信封裝到一個中介者物件中,從而使得各個物件之間的關系更加松散。
    * 在中介者模式中,物件之間不再直接相互互動,而是通過中介者來中轉訊息。 ......

    uj5u.com 2023-04-20 08:20:47 more
  • 露天煤礦現場調研和交流案例分享

    他們集團的資訊化公司及研究院在一個礦區正在做智能礦山的統一平臺的 試點,專案投資大概1億,包括了礦山的各方面的內容,顯示得我們這次交流有點多余。他們2年前開始做智能礦山的規劃,有很多煤礦行業專家的加持,他們的描述是非常完美,但是去年底應該上線的平臺,現在還沒有看到影子。他們確實有很多場景需求,但是被... ......

    uj5u.com 2023-04-20 08:20:25 more
  • 《社區人員管理》實戰案例設計&個人案例分享

    設計是一個讓人夢想成真程序,開始編碼、測驗、除錯之前進行需求分析和架構設計,才能保證關鍵方面都做正確 ......

    uj5u.com 2023-04-20 08:20:17 more
  • 軟體架構生態化-多角色交付的探索實踐

    作為一個技術架構師,不僅僅要緊跟行業技術趨勢,還要結合研發團隊現狀及痛點,探索新的交付方案。在日常中,你是否遇到如下問題 “ 業務需求排期長研發是瓶頸;非研發角色感受不到研發技改提效的變化;引入ISV 團隊又擔心質量和安全,培訓周期長“等等,基于此我們探索了一種新的技術體系及交付方案來解決如上問題。 ......

    uj5u.com 2023-04-20 08:20:10 more
  • 【中介者設計模式詳解】C/Java/JS/Go/Python/TS不同語言實作

    * 中介者模式是一種行為型設計模式,它可以用來減少類之間的直接依賴關系,
    * 將物件之間的通信封裝到一個中介者物件中,從而使得各個物件之間的關系更加松散。
    * 在中介者模式中,物件之間不再直接相互互動,而是通過中介者來中轉訊息。 ......

    uj5u.com 2023-04-20 08:19:44 more
  • 露天煤礦現場調研和交流案例分享

    他們集團的資訊化公司及研究院在一個礦區正在做智能礦山的統一平臺的 試點,專案投資大概1億,包括了礦山的各方面的內容,顯示得我們這次交流有點多余。他們2年前開始做智能礦山的規劃,有很多煤礦行業專家的加持,他們的描述是非常完美,但是去年底應該上線的平臺,現在還沒有看到影子。他們確實有很多場景需求,但是被... ......

    uj5u.com 2023-04-20 08:19:07 more
  • 《社區人員管理》實戰案例設計&個人案例分享

    設計是一個讓人夢想成真程序,開始編碼、測驗、除錯之前進行需求分析和架構設計,才能保證關鍵方面都做正確 ......

    uj5u.com 2023-04-20 08:18:57 more
  • 軟體架構生態化-多角色交付的探索實踐

    作為一個技術架構師,不僅僅要緊跟行業技術趨勢,還要結合研發團隊現狀及痛點,探索新的交付方案。在日常中,你是否遇到如下問題 “ 業務需求排期長研發是瓶頸;非研發角色感受不到研發技改提效的變化;引入ISV 團隊又擔心質量和安全,培訓周期長“等等,基于此我們探索了一種新的技術體系及交付方案來解決如上問題。 ......

    uj5u.com 2023-04-20 08:18:49 more
  • 05單件模式

    #經典的單件模式 public class Singleton { private static Singleton uniqueInstance; //一個靜態變數持有Singleton類的唯一實體。 // 其他有用的實體變數寫在這里 //構造器宣告為私有,只有Singleton可以實體化這個類! ......

    uj5u.com 2023-04-19 08:42:51 more
  • 【架構與設計】常見微服務分層架構的區別和落地實踐

    軟體工程的方方面面都遵循一個最基本的道理:沒有銀彈,架構分層模型更是如此,每一種都有各自優缺點,所以請根據不同的業務場景,并遵循簡單、可演進這兩個重要的架構原則選擇合適的架構分層模型即可。 ......

    uj5u.com 2023-04-19 08:42:41 more