1. 什麼叫RAID寫懲罰不同RAID要如何計算
RAID 0(Striped Disk Array without Fault Tolerance)
RAID 0是把所有的硬碟並聯起來成為一個大的硬碟組。其容量為所有屬於這個組的硬碟的總和。所有數據的存取均以並行分割方式進行。由於所有存取的數據均以平衡方式存取到整組硬碟里,存取的速度非常快。越是多硬碟數量的RAID 0陣列其存取的速度就越快。容量效率方面也是所有RAID格式中最高的,達到100%。但RAID 0有一個致命的缺點–就是它跟普通硬碟一樣沒有一點的冗餘能力。一旦有一個硬碟失效時,所有的數據將盡失。沒法重組回來!一般來講,RAID 0隻用於一些已有原數據載體的多媒體文件的高速讀取環境。如視頻點播系統的數據共享部分等。RAID 0隻需要兩個或以上的硬碟便能組成。
RAID 1(Mirroring)
RAID 1是硬碟鏡像備份操作。由兩個硬碟所組成。其中一個是主硬碟而另外一個是鏡像硬碟。主硬碟的 數據會不停的被鏡像到另外一個鏡像硬碟上。由於所有主硬碟的數據會不停地鏡像到另外一個硬碟上, 故RAID 1具有很高的冗餘能力。達到最高的100%。可是正由於這個鏡像做法不是以演算法操作,故它的容量效率非常的低,只有50%。RAID 1隻支持兩個硬碟操作。容量非常有限,故一般只用於操作系統中。
RAID 0+1(Mirroring and Striping)
RAID 0+1即由兩組RAID 0的硬碟作RAID 1的鏡像容錯。雖然RAID 0+1具備有RAID 1的容錯能力和RAID 0的容量性能。但RAID 0+1的容量效率還是與RAID 1一樣只有50%,故同樣地沒有被普及使用。
RAID 3(Striping with dedicated parity)
RAID 3在安全方面以奇偶校驗(parity check)做錯誤校正及檢測,只需要一個額外的校檢磁碟(parity disk)。奇偶校驗值的計算是以各個磁碟的相對應位作XOR的邏輯運算,然後將結果寫入奇偶校驗磁碟, 任何數據的修改都要做奇偶校驗計算。如某一磁碟故障,換上新的磁碟後,整個磁碟陣列(包括奇偶校驗 磁碟)需重新計算一次,將故障磁碟的數據恢復並寫入新磁碟中,如奇偶校驗磁碟故障,則重新計算奇偶 校驗值,以達容錯的要求。
RAID 5(Striping with distributed parity)
RAID 5也是一種具容錯能力的RAID 操作方式,但與RAID 3不一樣的是RAID 5的容錯方式不應用專用容錯硬碟,容錯信息是平均的分布到所有硬碟上。當陣列中有一個硬碟失效,磁碟陣列可以從其他的幾個硬碟的對應數據中算出已掉失的數據。由於我們需要保證失去的信息可以從另外的幾個硬碟中算出來,我們就需要在一定容量的基礎上多用一個硬碟以保證其他的成員硬碟可以無誤地重組失去的數據。其總容量為(N-1)x最低容量硬碟的容量。從容量效率來講,RAID 5同樣地消耗了一個硬碟的容量,當有一個硬碟失效時,失效硬碟的數據可以從其他硬碟的容錯信息中重建出來,但如果有兩個硬碟同時失效的話,所有數據將盡失。
2. RAID 6的校驗位方法
與RAID 5相比,RAID 6增加了第二個獨立的奇偶校驗信息塊。兩個獨立的奇偶系統使用不同的演算法,數據的可靠性非常高,即使兩塊磁碟同時失效也不會影響數據的使用。但RAID 6需要分配給奇偶校驗信息更大的磁碟空間,相對於RAID 5有更大的「寫損失」,因此「寫性能」非常差。較差的性能和復雜的實施方式使得RAID 6很少得到實際應用。
常見的RAID6組建類型 RAID 6(6D + 2P)
1 RAID 6(6D + 2P)原理
和RAID 5相似,RAID 6(6D + 2P)根據條帶化的數據生成校驗信息,條帶化數據和校驗數據一起分散存儲到RAID組的各個磁碟上。在圖1中,D0,D1,D2,D3,D4和D5是條帶化的數據,P代表校驗數據,Q是第二份校驗數據。
RAID 6校驗數據生成公式(P和Q):
P的生成用了異或
P = A0 XOR B0 XOR C0 XOR D0 XOR E0 XOR F0
A、B、C、D、E、F代表raid6中6塊硬碟,A0、B0、C0、D0、E0、F0代表6塊硬碟的第一個strip
Q的生成用了系數和異或,假設生成硬碟D的Q校驗
QA = A0*D0 XOR A1*D1 XOR A2*D2 XOR A3*D3 XOR A4*D4 XOR A5*D5.....XOR An*Dn
D0~Dn:單個硬碟的所有條帶化數據
A0~An:系數
XOR:異或
*:乘
硬碟D的Q校驗數據不會存放在硬碟D中,而是存放在其他硬碟中
Q校驗數據的計算只需要使用剛剛寫入的strip數據Dn*An再XOR這次寫入以前的Qn-1即可。
在RAID 6中,當有1塊磁碟出故障的時候,利用公式1恢復數據,這個過程是和RAID 5一樣的。而當有2塊磁碟同時出故障的時候,就需要同時用公式1和公式2來恢復數據了。
各系數A0~A5是線性無關的系數,在D0,D1,D2,D3,D4,D5,P,Q中有兩個未知數的情況下,也可以聯列求解兩個方程得出兩個未知數的值。這樣在一個RAID組中有兩塊磁碟同時壞的情況下,也可以恢復數據。 上面描述的是校驗數據生成的演算法。其實RAID 6的核心就是有兩份檢驗數據,以保證兩塊磁碟同時出故障的時候,也能保障數據的安全。
假設一共6塊硬碟,使用4塊創建邏輯盤,raid6,4個硬碟在使用時都被先條帶化,然後分別存儲數據和校驗位。
如果一塊硬碟出現物理故障,RAID的會處於降級狀態,但是仍然有容錯功能;
如果第二塊硬碟出現故障,邏輯盤中還剩下的兩塊硬碟就不再有容錯功能。
如果陣列中有熱備硬碟,出故障的硬碟上的數據會轉移到熱備硬碟上,並且自動進行重建,數據的條帶化存儲方式和原來的兩塊硬碟相同。
3. 什麼是raid card,能否用深入淺出的說一下.
參考一下,平時我們主要用raid5級就夠了
(一句話就是把多個硬碟當成一塊硬碟來用)
主要級別
主要包含RAID 0~RAID 7等數個規范,它們的側重點各不相同,常見的規范有如下幾種:
RAID 0:無差錯控制的帶區組
要實現RAID0必須要有兩個以上硬碟驅動器,RAID0實現了帶區組,數據並不是保存在一個硬碟上,而是分成數據塊保存在不同驅動器上。因為將數據分布在不同驅動器上,所以數據吞吐率大大提高,驅動器的負載也比較平衡。如果剛好所需要的數據在不同的驅動器上效率最好。它不需要計算校驗碼,實現容易。它的缺點是它沒有數據差錯控制,如果一個驅動器中的數據發生錯誤,即使其它盤上的數據正確也無濟於事了。不應該將它用於對數據穩定性要求高的場合。如果用戶進行圖象(包括動畫)編輯和其它要求傳輸比較大的場合使用RAID0比較合適。同時,RAID可以提高數據傳輸速率,比如所需讀取的文件分布在兩個硬碟上,這兩個硬碟可以同時讀取。那麼原來讀取同樣文件的時間被縮短為1/2。在所有的級別中,RAID 0的速度是最快的。但是RAID 0沒有冗餘功能的,如果一個磁碟(物理)損壞,則所有的數據都無法使用。
RAID 1:鏡象結構
raid1
對於使用這種RAID1結構的設備來說,RAID控制器必須能夠同時對兩個盤進行讀操作和對兩個鏡象盤進行寫操作。通過下面的結構圖您也可以看到必須有兩個驅動器。因為是鏡象結構在一組盤出現問題時,可以使用鏡象,提高系統的容錯能力。它比較容易設計和實現。每讀一次盤只能讀出一塊數據,也就是說數據塊傳送速率與單獨的盤的讀取速率相同。因為RAID1的校驗十分完備,因此對系統的處理能力有很大的影響,通常的RAID功能由軟體實現,而這樣的實現方法在伺服器負載比較重的時候會大大影響伺服器效率。當您的系統需要極高的可靠性時,如進行數據統計,那麼使用RAID1比較合適。而且RAID1技術支持「熱替換」,即不斷電的情況下對故障磁碟進行更換,更換完畢只要從鏡像盤上恢復數據即可。當主硬碟損壞時,鏡像硬碟就可以代替主硬碟工作。鏡像硬碟相當於一個備份盤,可想而知,這種硬碟模式的安全性是非常高的,RAID 1的數據安全性在所有的RAID級別上來說是最好的。但是其磁碟的利用率卻只有50%,是所有RAID級別中最低的。
RAID2:帶海明碼校驗
從概念上講,RAID 2同RAID 3類似,兩者都是將數據條塊化分布於不同的硬碟上, 條塊單位為位或字
節。然而RAID 2 使用一定的編碼技術來提供錯誤檢查及恢復。這種編碼技術需要多個磁碟存放檢查及恢復信息,使得RAID 2技術實施更復雜。因此,在商業環境中很少使用。下圖右邊的各個磁碟上是數據的各個位,由一個數據不同的位運算得到的海明校驗碼可以保存另一組磁碟上,具體情況請見下圖。由於海明碼的特點,它可以在數據發生錯誤的情況下將錯誤校正,以保證輸出的正確。它的數據傳送速率相當高,如果希望達到比較理想的速度,那最好提高保存校驗碼ECC碼的硬碟,對於控制器的設計來說,它又比RAID3,4或5要簡單。沒有免費的午餐,這里也一樣,要利用海明碼,必須要付出數據冗餘的代價。輸出數據的速率與驅動器組中速度最慢的相等。
RAID3:帶奇偶校驗碼的並行傳送
raid3
這種校驗碼與RAID2不同,只能查錯不能糾錯。它訪問數據時一次處理一個帶區,這樣可以提高讀取和寫入速度,它像RAID 0一樣以並行的方式來存放數據,但速度沒有RAID 0快。校驗碼在寫入數據時產生並保存在另一個磁碟上。需要實現時用戶必須要有三個以上的驅動器,寫入速率與讀出速率都很高,因為校驗位比較少,因此計算時間相對而言比較少。用軟體實現RAID控制將是十分困難的,控制器的實現也不是很容易。它主要用於圖形(包括動畫)等要求吞吐率比較高的場合。不同於RAID 2,RAID 3使用單塊磁碟存放奇偶校驗信息。如果一塊磁碟失效,奇偶盤及其他數據盤可以重新產生數據。如果奇偶盤失效,則不影響數據使用。RAID 3對於大量的連續數據可提供很好的傳輸率,但對於隨機數據,奇偶盤會成為寫操作的瓶頸。利用單獨的校驗盤來保護數據雖然沒有鏡像的安全性高,但是硬碟利用率得到了很大的提高,為(n-1)/n。
RAID4:帶奇偶校驗碼的獨立磁碟結構
raid4
RAID4和RAID3很像,不同的是,它對數據的訪問是按數據塊進行的,也就是按磁碟進行的,每次是一個盤。在圖上可以這么看,RAID3是一次一橫條,而RAID4一次一豎條。它的特點和RAID3也挺像,不過在失敗恢復時,它的難度可要比RAID3大得多了,控制器的設計難度也要大許多,而且訪問數據的效率不怎麼好。
RAID5:分布式奇偶校驗的獨立磁碟結構
RAID5清晰圖片
從它的示意圖上可以看到,它的奇偶校驗碼存在於所有磁碟上,其中的p0代表第0帶區的奇偶校驗值,其它的意思也相同。RAID5的讀出效率很高,寫入效率一般,塊式的集體訪問效率不錯。因為奇偶校驗碼在不同的磁碟上,所以提高了可靠性,允許單個磁碟出錯。RAID 5也是以數據的校驗位來保證數據的安全,但它不是以單獨硬碟來存放數據的校驗位,而是將數據段的校驗位交互存放於各個硬碟上。這樣,任何一個硬碟損壞,都可以根據其它硬碟上的校驗位來重建損壞的數據。硬碟的利用率為n-1。但是它對數據傳輸的並行性解決不好,而且控制器的設計也相當困難。RAID 3 與RAID 5相比,重要的區別在於RAID 3每進行一次數據傳輸,需涉及到所有的陣列盤。而對於RAID 5來說,大部分數據傳輸只對一塊磁碟操作,可進行並行操作。在RAID 5中有「寫損失」,即每一次寫操作,將產生四個實際的讀/寫操作,其中兩次讀舊的數據及奇偶信息,兩次寫新的數據及奇偶信息。RAID-5的話,優點是提供了冗餘性(支持一塊盤掉線後仍然正常運行),磁碟空間利用率較高(N-1/N),讀寫速度較快(N-1倍)。RAID5最大的好處是在一塊盤掉線的情況下,RAID照常工作,相對於RAID0必須每一塊盤都正常才可以正常工作的狀況容錯性能好多了。因此RAID5是RAID級別中最常見的一個類型。RAID5校驗位即P位是通過其它條帶數據做異或(xor)求得的。計算公式為P=D0xorD1xorD2…xorDn,其中p代表校驗塊,Dn代表相應的數據塊,xor是數學運算符號異或。 RAID5校驗位演算法詳解 P=D1 xor D2 xor D3 … xor Dn (D1,D2,D3 …Dn為數據塊,P為校驗,xor為異或運算) XOR(Exclusive OR)的校驗原理如下表: A值 B值 Xor結果
0 0 0
1 0 1
0 1 1
1 1 0
這里的A與B值就代表了兩個位,從中可以發現,A與B一樣時,XOR(非或又稱"非異或")結果為0,A與B不一樣時,XOR結果就是1,如果知道XOR結果,A和B中的任何兩個數值,就可以反推出剩下的一個數值。比如A為1,XOR結果為1,那麼B肯定為0,如果XOR結果為0,那麼B肯定為1。這就是XOR編碼與校驗的基本原理。
RAID6:兩種存儲的奇偶校驗碼的磁碟結構
raid6
名字很長,但是如果看到圖,大家立刻會明白是為什麼,請注意p0代表第0帶區的奇偶校驗值,而pA代表數據塊A的奇偶校驗值。它是對RAID5的擴展,主要是用於要求數據絕對不能出錯的場合。當然了,由於引入了第二種奇偶校驗值,所以需要N+2個磁碟,同時對控制器的設計變得十分復雜,寫入速度也不好,用於計算奇偶校驗值和驗證數據正確性所花費的時間比較多,造成了不必須的負載。我想除了軍隊沒有人用得起這種東西。 常見的RAID6組建類型RAID 6(6D + 2P) 1 RAID 6(6D + 2P)原理 和RAID 5相似,RAID 6(6D + 2P)根據條帶化的數據生成校驗信息,條帶化數據和校驗數據一起分散存儲到RAID組的各個磁碟上。在圖1中,D0,D1,D2,D3,D4和D5是條帶化的數據,P代表校驗數據,Q是第二份校驗數據。 RAID 6(6D + 2P)根據條帶化的數據生成校驗信息,條帶化數據和校驗數據一起分散存儲到RAID組的各個磁碟上 RAID 6校驗數據生成公式(P和Q): P的生成用了異或 P = D0 XOR D1 XOR D2 XOR D3 XOR D4 XOR D5 Q的生成用了系數和異或 Q = A0*D0 XOR A1*D1 XOR A2*D2 XOR A3*D3 XOR A4*D4 XOR A5*D5 D0~D5:條帶化數據 A0~A5:系數 XOR:異或 *:乘 在RAID 6中,當有1塊磁碟出故障的時候,利用公式1恢復數據,這個過程是和RAID 5一樣的。而當有2塊磁碟同時出故障的時候,就需要同時用公式1和公式2來恢復數據了。 各系數A0~A5是線性無關的系數,在D0,D1,D2,D3,D4,D5,P,Q中有兩個未知數的情況下,也可以聯列求解兩個方程得出兩個未知數的值。這樣在一個RAID組中有兩塊磁碟同時壞的情況下,也可以恢復數據。 上面描述的是校驗數據生成的演算法。其實RAID 6的核心就是有兩份檢驗數據,以保證兩塊磁碟同時出故障的時候,也能保障數據的安全。
RAID7:優化的高速數據傳送磁碟結構
RAID7所有的I/O傳送均是同步進行的,可以分別控制,這樣提高了系統的並行性,提高系統訪問數據的速度;每個磁碟都帶有高速緩沖存儲器,實時操作系統可以使用任何實時操作晶元,達到不同實時系統的需要。允許使用SNMP協議進行管理和監視,可以對校驗區指定獨立的傳送信道以提高效率。可以連接多台主機,因為加入高速緩沖存儲器,當多用戶訪問系統時,訪問時間幾乎接近於0。由於採用並行結構,因此數據訪問效率大大提高。需要注意的是它引入了一個高速緩沖存儲器,這有利有弊,因為一旦系統斷電,在高速緩沖存儲器內的數據就會全部丟失,因此需要和UPS一起工作。當然了,這么快的東西,價格也非常昂貴。
RAID10/01:高可靠性與高效磁碟結構
這種結構無非是一個帶區結構加一個鏡象結構,因為兩種結構各有優缺點,因此可以相互補充,達到既高效又高速還可以互為鏡像的目的。大家可以結合兩種結構的優點和缺點來理解這種新結構。這種新結構的價格高,可擴充性不好。主要用於容量不大,但要求速度和差錯控制的資料庫中。 其中可分為兩種組合:RAID10和RAID01 RAID 10是先鏡射再分區數據。是將所有硬碟分為兩組,視為是RAID 0的最低組合,然後將這兩組各自視為RAID 1運作。RAID 10有著不錯的讀取速度,而且擁有比RAID 0更高的數據保護性。 RAID 01則是跟RAID 10的程序相反,是先分區再將數據鏡射到兩組硬碟。它將所有的硬碟分為兩組,變成RAID 1的最低組合,而將兩組硬碟各自視為RAID 0運作。RAID 01比起RAID 10有著更快的讀寫速度,不過也多了一些會讓整個硬碟組停止運轉的機率;因為只要同一組的硬碟全部損毀,RAID 01就會停止運作,而RAID 10則可以在犧牲RAID 0的優勢下正常運作。 RAID 10巧妙的利用了RAID 0的速度以及RAID 1的保護兩種特性,不過它的缺點是需要的硬碟數較多,因為至少必須擁有四個以上的偶數硬碟才能使用。
RAID 50:被稱為分布奇偶位陣列條帶
同RAID 10相仿的,它具有RAID 5和RAID 0的共同特性。它由兩組RAID 5磁碟組成(每組最少3個),每一組都使用了分布式奇偶位,而兩組硬碟再組建成RAID 0,實驗跨磁碟抽取數據。RAID 50提供可靠的數據存儲和優秀的整體性能,並支持更大的捲尺寸。即使兩個物理磁碟發生故障(每個陣列中一個),數據也可以順利恢復過來。 RAID 50最少需要6個驅動器,它最適合需要高可靠性存儲、高讀取速度、高數據傳輸性能的應用。這些應用包括事務處理和有許多用戶存取小文件的辦公應用程序。
RAID 53:稱為高效數據傳送磁碟結構
結構的實施同Level 0數據條陣列,其中,每一段都是一個RAID 3陣列。它的冗餘與容錯能力同RAID 3。這對需要具有高數據傳輸率的RAID 3配置的系統有益,但是它價格昂貴、效率偏低。
RAID 1.5:一個新生的磁碟陣列方式
它具有RAID 0+1的特性,而不同的是,它的實現只需要2個硬碟。 從表面上來看,組建RAID 1.5後的磁碟,兩個都具有相同的數據。當然,RAID 1.5也是一種不能完全利用磁碟空間的磁碟陣列模式,因此,兩個80GB的硬碟在組建RAID 1.5後,和RAID 1是一樣的,即只有80GB的實際使用空間,另外80GB是它的備份數據。如果把兩個硬碟分開,分別把他們運行在原系統,也是暢通無阻的。但通過實際應用,我們發現如果兩個硬碟在分開運行後,其數據的輕微改變都會引起再次重組後的磁碟陣列,沒法實現完全的數據恢復,而是以數據較少的磁碟為准。
4. RAID 6是什麼比RAID 5好在哪裡
RAID 6採用雙重校驗,比RAID 5多一重,在一個RAID組中需要兩台硬碟驅動器的容量來保存校驗數據,因此能夠在兩台硬碟同時故障的情況下保證數據不丟失,但是性能也會受到比較明顯的影響。
很多種演算法都可以實現RAID 6,其中就有一種在橫向和斜向兩個方向上進行XOR(異或)運算的Dual-XOR演算法,橫向當然是與RAID 5一樣了,區別在於斜向,所以也被稱為「對角線演算法」。它的校驗數據生成過程相對簡單,但在兩台硬碟驅動器掉線的時候,只能支持逐個數據塊的恢復,而且不同條帶之間還要一起參與計算(斜向嘛)。這種做法在分布式校驗的環境中很是麻煩,卻很適合獨立校驗的口味,於是成為了RAID-DP的基礎。
真正被廣為接受的還是基於P+Q的RAID 6演算法。這個P么,就是RAID 5的那個P(Parity),也即同一條帶中全部原始數據(當然不包括Q)的XOR運算結果。至於多出來的Q,則是同一條帶中其他數據(包括P)進行伽羅華域(Galois Field,簡稱GF,有限域)乘法運算的結果。
P+Q演算法的優勢在於恢復數據相對簡單。在一台硬碟驅動器掉線時,丟掉原始數據或P內容的條帶,與RAID 5一樣利用XOR恢復數據;丟掉Q域的條帶,利用GF變換的逆運算恢復數據。而如果有兩台硬碟驅動器掉線,就需要同時使用XOR和GF變換來恢復數據了。
然而,無論採用哪種演算法,RAID 6都比RAID 5需要更多的計算資源。如果I/O處理器(IOP)沒有對此進行專門的優化,性能下降顯然是不可避免的。
可參考下文:http://www.stor-age.com/stor-age/2007/1218/686517.shtml
5. 為什麼RAID5至少需要三塊硬碟
RAID5的存儲機制是兩塊存數據,一塊存另外兩塊硬碟的交易校驗結果,就好像最簡單的數學題,1+2=3,當你少了其中任何一個數時,就可以通過逆推,找到第三個數。RAID5的建立後,壞掉一塊硬碟,可以通過另外兩塊硬碟的數據算出第三塊的,所以至少要3塊。
第一RAID5 是用XOR效驗來作的 1+2=3 如果少了其中一位數等式能成立嗎其中1 和 2 是數據 3就是效驗碼 + 號是計算格式如果其中2 那個數據丟失了 陣列卡可以通過 3-1=2 「計算出2」的那個數據所以當RAID 5其中一個硬碟出問題了 系統雖然可以運行但速 度會很慢。
RAID 5 是一種存儲性能、數據安全和存儲成本兼顧的存儲解決方案。 RAID 5可以理解為是RAID 0和RAID 1的折中方案。RAID 5可以為系統提供數據安全保障,但保障程度要比Mirror低而磁碟空間利用率要比Mirror高。RAID 5具有和RAID 0相近似的數據讀取速度,只是多了一個奇偶校驗信息,寫入數據的速度比對單個磁碟進行寫入操作稍慢。同時由於多個數據對應一個奇偶校驗信息,RAID 5的磁碟空間利用率要比RAID 1高,存儲成本相對較低,是目前運用較多的一種解決方案。
6. raid 5 是如何計算出奇偶校驗信息所需佔用的空間大小的
1,你這樣理解進入誤區了
2,知識准備,raid5的工作模式;
假設一組數據是010
那麼這組數據的校驗碼是0+1+0+=1(假定此控制器採用XOR運算來檢驗)
在假定你再用4快盤做raid5,那麼控制器會把「0,1,0,1」這4個數據分別寫到硬碟內,這樣在無數個這樣的過程中,第4塊盤上的空間因為要記錄校驗數據被浪費掉了,
3,假設是5快盤那麼如圖所示
如果還是困難,請給我郵箱我會把一份清晰的文檔發給你。