您好,歡迎來到易龍商務網(wǎng)!
發(fā)布時間:2021-05-09 06:20  
【廣告】





什么是磁盤陣列?
磁盤陣列(raid),一種把多塊獨立硬盤(物理硬盤)按照不同方式組合成一個硬盤組(邏輯硬盤),從而提供比單個硬盤更好的存儲性能和數(shù)據(jù)備份能力的技術。是在多塊硬盤組成的陣列系統(tǒng)中,犧牲一塊或多塊硬盤自己的容量,來對數(shù)據(jù)的存儲提供一定的容錯能力。塔式目前使用的較為廣泛的數(shù)據(jù)保護模式。
提到磁盤陣列數(shù)據(jù)的安全性,我們假設一下,如果你把重要的數(shù)據(jù)在沒有備份的情況下存儲在單一的硬盤中,如果硬盤損壞,輕的你可以找數(shù)據(jù)恢復公司進行數(shù)據(jù)恢復,損壞嚴重的你的數(shù)據(jù)就將丟失。但如果你采用磁盤陣列的形式進行數(shù)據(jù)的存儲方式,那我們只需要替換掉陣列中壞的硬盤數(shù)據(jù)就可以恢復了。
磁盤陣列 RAID 技術基本原理
RAID 技術可以將一個硬盤上的任務分散或copy到多個(少則兩個)磁盤上,借此來提高了性能或建立數(shù)據(jù)冗余以防驅動器發(fā)生故障。可以通過設定設備的 RAID 模式來決定設備以何種方式處理數(shù)據(jù)。RAID 配置可讓多個硬盤驅動器以不同的方式(例如使用條帶技術或鏡像技術)組合成單一的運行單元。
RAID 的兩個關鍵目標是提高數(shù)據(jù)可靠性和 I/O 性能。磁盤陣列中,數(shù)據(jù)分散在多個磁盤中,然而對于計算機系統(tǒng)來說,就像一個單獨的磁盤。通過把相同數(shù)據(jù)同時寫入到多塊磁盤(典型地如鏡像),或者將計算的校驗數(shù)據(jù)寫入陣列中來獲得冗余能力,當單塊磁盤出現(xiàn)故障時可以保證不會導致數(shù)據(jù)丟失。有些 RAID 等級允許更多地 磁盤同時發(fā)生故障。在這樣的冗余機制下,可以用新磁盤替換故障磁盤, RAID 會自動根據(jù)剩余磁盤中的數(shù)據(jù)和校驗數(shù)據(jù)重建丟失的數(shù)據(jù),保證數(shù)據(jù)一致性和完整性。數(shù)據(jù)分散保存在 RAID 中的多個不同磁盤上,并發(fā)數(shù)據(jù)讀寫要大大優(yōu)于單個磁盤,因此可以獲得更高的聚合 I/O 帶寬。當然,磁盤陣列會減少全體磁盤的總可用存儲空間,犧牲空間換取更高的可靠性和性能。比如, RAID1 存儲空間利用率僅有 50% , RAID5 會損失其中一個磁盤的存儲容量,空間利用率為 (n-1)/n 。
RAID的操作步驟
標準的RAID寫操作,需包括以下幾個步驟:
?。?)以校驗盤中讀取數(shù)據(jù)
?。?)以目標數(shù)據(jù)盤中讀取數(shù)據(jù)
?。?)以舊校驗數(shù)據(jù),新數(shù)據(jù)及已存在數(shù)據(jù),生成新的校驗數(shù)據(jù)
?。?)將新校驗數(shù)據(jù)寫入校驗盤
?。?)將新數(shù)據(jù)寫入目標數(shù)據(jù)盤
當主機將一個待寫入陣列RAID組中的數(shù)據(jù)發(fā)送到陣列時,陣列控制器將該數(shù)據(jù)保存在緩存中并立即報告主機該數(shù)據(jù)的寫入工作已完成。該數(shù)據(jù)寫入到陣列硬盤的工作由陣列控制器完成,該數(shù)據(jù)可繼續(xù)存放在Cache中直到Cache滿,而且要為新數(shù)據(jù)騰出空間而必須刷新時或陣列需停機時,控制器會及時將該數(shù)據(jù)從Cache寫入陣列硬盤中。
這種緩存回寫技術使得主機不必等待RAID校驗計算過程的完成,即可處理下一個讀寫任務,這樣,主機的讀寫效率大為增加。當主機命令將一個數(shù)據(jù)寫入硬盤,則陣列控制器將該數(shù)據(jù)寫入緩存上面的位置,只有新數(shù)據(jù)才會被控制器按Write-Back Cache的方式之后寫入硬盤。