概述
冗余磁盤陣列技術redundant array of inexpensive disks,簡稱raid技術)是一種數據的虛擬存儲技術,其結合了多個物理磁盤驅動器件在一個邏輯磁盤內用以實現比單個磁盤更高的存儲性能。其在1987 年由加州大學伯克利分校的david patterson, garth a. gibson 和 randy katz共同提出。起初的研制目的是為了組合小的廉價磁盤來代替大的昂貴磁盤,以降低大批量數據存儲的費用,同時也希望采用冗余信息的方式,使得磁盤失效時不會使數據受損,從而開發出一定水平的數據保護技術。如下圖所示,當 raid 組中的某一磁盤損壞時,服務器可以通過對其它磁盤的冗余操作,達到對數據的冗余保護功能。
raid 技術利用多個硬盤的組合提高存儲的效率和容錯能力,其主要由兩部分組成,即控制器和磁盤陣列。控制器依據接口協議對磁盤陣列中的磁盤進行讀寫操作和管理數據。控制器通常由的 cpu 構成,能夠完成大量的計算任務。磁盤陣列是由多個磁盤構成,其讀寫操作由控制器控制,多個磁盤通過控制器虛擬化成為一個磁盤。
從實現角度來說, raid 主要分為軟 raid、硬 raid 以及軟硬混合 raid 三種。軟 raid 所有功能均由操作系統和 cpu 來完成,沒有獨立的 raid 控制 / 處理芯片和 i/o 處理芯片,效率自然很低。硬 raid 配備了專門的 raid 控制 / 處理芯片和 i/o 處理芯片以及陣列緩沖,不占用 cpu 資源,但成本---。軟硬混合 raid 具備 raid 控制 / 處理芯片,但缺乏 i/o 處理芯片,需要 cpu 和驅動程序來完成,性能和成本 在軟 raid 和硬 raid 之間。
raid通俗的說就是通過將多個存儲設備按照一定的形式和方案組織起來,如同使用一個硬盤一樣但是卻通過這樣的形式獲取了比單個存儲設備更高的速度、---的穩定性、的存儲能力的存儲設備的解決方案。根據你的需要不同,可以采用不同形式以及不同價格從幾千元到上百萬元的raid解決方案--很顯然,越好的raid系統,價格越昂貴,所以幾乎沒有的raid系統。另外,選擇raid系統要適應不同的應用程序。
一般來說raid是用于比較昂貴的服務器系統中的。不過,隨著便宜的raid控制器的出現,它已經漸漸向市場主流發展了。當然在目前的主流市場實現raid有一定的局限性,它并不適用于每一個人。
鏡像 mirroring 、數據條帶 data stripping 和數據校驗 data parity 。鏡像,將數據copy到多個磁盤,磁盤冷數據存儲,一方面可以提高---性,磁盤冷數據存儲公司,另一方面可并發從兩個或多個副本讀取數據來提高讀性能。顯而易見,鏡像的寫性能要稍低, ---數據正確地寫到多個磁盤需要更多的時間消耗。數據條帶,將數據分片保存在多個不同的磁盤,多個數據分片共同組成一個完整數據副本,這與鏡像的多個副本是不同的,磁盤冷數據存儲公司,它通常用于性能考慮。數據條帶具有更高的并發粒度,當訪問數據時,可以同時對位于不同磁盤上數據進行讀寫操作, 從而獲得非常---的 i/o 性能提升 。數據校驗,利用冗余數據進行數據錯誤檢測和修復,冗余數據通常采用海明碼、異或操作等算法來計算獲得。利用校驗功能,可以很大程度上提高磁盤陣列的---性、魯棒性和容錯能力。不過,數據校驗需要從多處讀取數據并進行計算和對比,會影響系統性能。 不同等級的 raid 采用一個或多個以上的三種技術,來獲得不同的數據---性、可用性和 i/o 性能。至于設計何種 raid 甚至新的等級或類型或采用何種模式的 raid ,需要在深入理解系統需求的前提下進行合理選擇,綜合評估---性、性能和成本來進行折中的選擇。
|