RAID——Redundant Array of Independent Disks(獨立硬盤冗餘陣列)安全
目前分爲幾種級別:Raid0、Raid一、Raid五、Raid十、Raid01性能
定義:spa
RAID 0又稱爲Stripe或Striping,它表明了全部RAID級別中最高的存儲性能。RAID 0提升存儲性能的原理是把連續的數據分散到多個磁盤上存取,這樣,系統有數據請求就能夠被多個磁盤並行的執行,每一個磁盤執行屬於它本身的那部分數據請求。這種數據上的並行操做能夠充分利用總線的帶寬,顯著提升磁盤總體存取性能。blog
工做原理:ip
系統向三個磁盤組成的邏輯硬盤(RAID0 磁盤組)發出的I/O數據請求被轉化爲3項操做,其中的每一項操做都對應於一塊物理硬盤。經過創建RAID 0,原先順序的數據請求被分散到全部的三塊硬盤中同時執行。從理論上講,三塊硬盤的並行操做使同一時間內磁盤讀寫速度提高了3倍。 但因爲總線帶寬等多種因素的影響,實際的提高速率確定會低於理論值,可是,大量數據並行傳輸與串行傳輸比較,提速效果顯著顯然毋庸置疑。get
優缺點:同步
讀寫性能是全部RAID級別中最高的。it
RAID 0的缺點是不提供數據冗餘,所以一旦用戶數據損壞,損壞的數據將沒法獲得恢復。RAID0運行時只要其中任一塊硬盤出現問題就會致使整個數據的故障。通常不建議企業用戶單獨使用。原理
總結:請求
磁盤空間使用率:100%,故成本最低。
讀性能:N*單塊磁盤的讀性能
寫性能:N*單塊磁盤的寫性能
冗餘:無,任何一塊磁盤損壞都將致使數據不可用。
定義:
RAID 1經過磁盤數據鏡像實現數據冗餘,在成對的獨立磁盤上產生互爲備份的數據。當原始數據繁忙時,可直接從鏡像拷貝中讀取數據,所以RAID 1能夠提升讀取性能。RAID 1是磁盤陣列中單位成本最高的,但提供了很高的數據安全性和可用性。當一個磁盤失效時,系統能夠自動切換到鏡像磁盤上讀寫,而不須要重組失效的數據。
工做原理:
RAID1是將一個兩塊硬盤所構成RAID磁盤陣列,其容量僅等於一塊硬盤的容量,由於另外一塊只是看成數據「鏡像」。RAID1磁盤陣列顯然是最可靠的一種陣列,由於它老是保持一份完整的數據備份。它的性能天然沒有RAID0磁盤陣列那樣好,但其數據讀取確實較單一硬盤來的快,由於數據會從兩塊硬盤中較快的一塊中讀出。RAID1磁盤陣列的寫入速度一般較慢,由於數據得分別寫入兩塊硬盤中並作比較。RAID1磁盤陣列通常支持「熱交換」,就是說陣列中硬盤的移除或替換能夠在系統運行時進行,無須中斷退出系統。RAID1磁盤陣列是十分安全的,不過也是較貴一種RAID磁盤陣列解決方案,由於兩塊硬盤僅能提供一塊硬盤的容量。RAID1磁盤陣列主要用在數據安全性很高,並且要求可以快速恢復被破壞的數據的場合。
在這裏,須要注意的是,讀只能在一塊磁盤上進行,並不會進行並行讀取,性能取決於硬盤中較快的一塊。寫的話一般比單塊磁盤要慢,雖然是並行寫,即對兩塊磁盤的寫入是同時進行的,但由於要比較兩塊硬盤中的數據,因此性能比單塊磁盤慢。
優缺點:
RAID1經過硬盤數據鏡像實現數據的冗餘,保護數據安全,在兩塊盤上產生互爲備份的數據,當原始數據繁忙時,可直接從鏡像備份中讀取數據,所以RAID1能夠提供讀取性能。
RAID1是硬盤中單位成本最高的,但提供了很高的數據安全性和可用性,當一個硬盤失效時,系統能夠自動切換到鏡像硬盤上讀/寫,而且不須要重組失效的數據。
總結:
磁盤空間使用率:50%,故成本最高。
讀性能:只能在一個磁盤上讀取,取決於磁盤中較快的那塊盤
寫性能:兩塊磁盤都要寫入,雖然是並行寫入,但由於要比對,故性能單塊磁盤慢。
冗餘:只要系統中任何一對鏡像盤中有一塊磁盤可使用,甚至能夠在一半數量的硬盤出現問題時系統均可以正常運行。
定義:
RAID 5是RAID 0和RAID 1的折中方案。RAID 5具備和RAID0相近似的數據讀取速度,只是多了一個奇偶校驗信息,寫入數據的速度比對單個磁盤進行寫入操做稍慢。同時因爲多個數據對應一個奇偶校驗信息,RAID5的磁盤空間利用率要比RAID 1高,存儲成本相對較低,是目前運用較多的一種解決方案。
工做原理:
RAID5把數據和相對應的奇偶校驗信息存儲到組成RAID5的各個磁盤上,而且奇偶校驗信息和相對應的數據分別存儲於不一樣的磁盤上,其中任意N-1塊磁盤上都存儲完整的數據,也就是說有至關於一塊磁盤容量的空間用於存儲奇偶校驗信息。所以當RAID5的一個磁盤發生損壞後,不會影響數據的完整性,從而保證了數據安全。當損壞的磁盤被替換後,RAID還會自動利用剩下奇偶校驗信息去重建此磁盤上的數據,來保持RAID5的高可靠性。
作raid 5陣列全部磁盤容量必須同樣大,當容量不一樣時,會以最小的容量爲準。 最好硬盤轉速同樣,不然會影響性能,並且可用空間=磁盤數n-1,Raid 5 沒有獨立的奇偶校驗盤,全部校驗信息分散放在全部磁盤上, 只佔用一個磁盤的容量。
https://weigang-gao.iteye.com/blog/2247367
總結:
磁盤空間利用率:(N-1)/N,即只浪費一塊磁盤用於奇偶校驗。
讀性能:(n-1)*單塊磁盤的讀性能,接近RAID0的讀性能。
寫性能:比單塊磁盤的寫性能要差(這點不是很明白,不是能夠並行寫入麼?)
冗餘:只容許一塊磁盤損壞。
定義:
RAID10也被稱爲鏡象陣列條帶。象RAID0同樣,數據跨磁盤抽取;象RAID1同樣,每一個磁盤都有一個鏡象磁盤, 因此RAID 10的另外一種會說法是 RAID 0+1。RAID10提供100%的數據冗餘,支持更大的捲尺寸,但價格也相對較高。對大多數只要求具備冗餘度而沒必要考慮價格的應用來講,RAID10提供最好的性能。使用RAID10,能夠得到更好的可靠性,由於即便兩個物理驅動器發生故障(每一個陣列中一個),數據仍然能夠獲得保護。RAID10須要4 + 2*N 個磁盤驅動器(N >=0), 並且只能使用其中一半(或更小, 若是磁盤大小不一)的磁盤用量, 例如 4 個 250G 的硬盤使用RAID10 陣列, 實際容量是 500G。
實現原理:
Raid10其實結構很是簡單,首先建立2個獨立的Raid1,而後將這兩個獨立的Raid1組成一個Raid0,當往這個邏輯Raid中寫數據時,數據被有序的寫入兩個Raid1中。磁盤1和磁盤2組成一個Raid1,磁盤3和磁盤4又組成另一個Raid1;這兩個Raid1組成了一個新的Raid0。如寫在硬盤1上的數據一、三、五、7,寫在硬盤2中則爲數據一、三、五、7,硬盤中的數據爲0、二、四、6,硬盤4中的數據則爲0、二、四、6,所以數據在這四個硬盤上組合成Raid10,且具備raid0和raid1二者的特性。
雖然Raid10方案形成了50%的磁盤浪費,可是它提供了200%的速度和單磁盤損壞的數據安全性,而且當同時損壞的磁盤不在同一Raid1中,就能保證數據安全性。假如磁盤中的某一塊盤壞了,整個邏輯磁盤仍能正常工做的。
當咱們須要恢復RAID10中損壞的磁盤時,只須要更換新的硬盤,按照RAID10的工做原理來進行數據恢復,恢復數據過程當中系統仍能正常工做。原先的數據會同步恢復到更換的硬盤中。
總結:
磁盤空間利用率:50%。
讀性能:N/2*單塊硬盤的讀性能
寫性能:N/2*單塊硬盤的寫性能
冗餘:只要一對鏡像盤中有一塊磁盤可使用就沒問題。