標準的raid寫操作,需包括以下幾個步驟:
1以校驗盤中讀取數(shù)據(jù)
2以目標數(shù)據(jù)盤中讀取數(shù)據(jù)
3以舊校驗數(shù)據(jù),新數(shù)據(jù)及已存在數(shù)據(jù),生成新的校驗數(shù)據(jù)
4將新校驗數(shù)據(jù)寫入校驗盤
5將新數(shù)據(jù)寫入目標數(shù)據(jù)盤
當主機將一個待寫入陣列raid組中的數(shù)據(jù)發(fā)送到陣列時,陣列控制器將該數(shù)據(jù)保存在緩存中并立即報告主機該數(shù)據(jù)的寫入工作已完成。該數(shù)據(jù)寫入到陣列硬盤的工作由陣列控制器完成,該數(shù)據(jù)可繼續(xù)存放在cache中直到cache滿,而且要為新數(shù)據(jù)騰出空間而必須刷新時或陣列需停機時,控制器會及時將該數(shù)據(jù)從cache寫入陣列硬盤中。
這種緩存回寫技術(shù)使得主機不必等待raid校驗計算過程的完成,即可處理下一個讀寫任務,這樣,主機的讀寫效率大為增加。當主機命令將一個數(shù)據(jù)寫入硬盤,則陣列控制器將該數(shù)據(jù)寫入緩存上面的位置,只有新數(shù)據(jù)才會被控制器按write-back cache的方式之后寫入硬盤。
概述
冗余磁盤陣列技術(shù)redundant array of inexpensive disks,冷磁盤陣列公司,簡稱raid技術(shù))是一種數(shù)據(jù)的虛擬存儲技術(shù),其結(jié)合了多個物理磁盤驅(qū)動器件在一個邏輯磁盤內(nèi)用以實現(xiàn)比單個磁盤更高的存儲性能。其在1987 年由加州大學伯克利分校的david patterson, garth a. gibson 和 randy katz共同提出。起初的研制目的是為了組合小的廉價磁盤來代替大的昂貴磁盤,以降低大批量數(shù)據(jù)存儲的費用,同時也希望采用冗余信息的方式,使得磁盤失效時不會使數(shù)據(jù)受損,冷磁盤陣列公司,從而開發(fā)出一定水平的數(shù)據(jù)保護技術(shù)。如下圖所示,當 raid 組中的某一磁盤損壞時,冷磁盤陣列,服務器可以通過對其它磁盤的冗余操作,達到對數(shù)據(jù)的冗余保護功能。
raid 技術(shù)利用多個硬盤的組合提高存儲的效率和容錯能力,其主要由兩部分組成,即控制器和磁盤陣列。控制器依據(jù)接口協(xié)議對磁盤陣列中的磁盤進行讀寫操作和管理數(shù)據(jù)。控制器通常由的 cpu 構(gòu)成,能夠完成大量的計算任務。磁盤陣列是由多個磁盤構(gòu)成,其讀寫操作由控制器控制,多個磁盤通過控制器虛擬化成為一個磁盤。
從實現(xiàn)角度來說, raid 主要分為軟 raid、硬 raid 以及軟硬混合 raid 三種。軟 raid 所有功能均由操作系統(tǒng)和 cpu 來完成,沒有獨立的 raid 控制 / 處理芯片和 i/o 處理芯片,效率自然很低。硬 raid 配備了專門的 raid 控制 / 處理芯片和 i/o 處理芯片以及陣列緩沖,不占用 cpu 資源,但成本---。軟硬混合 raid 具備 raid 控制 / 處理芯片,但缺乏 i/o 處理芯片,需要 cpu 和驅(qū)動程序來完成,性能和成本 在軟 raid 和硬 raid 之間。
raid,中文名稱叫獨立磁盤冗余陣列廉價磁盤冗余陣列,簡稱磁盤陣列。它的作用呢,是在多塊硬盤組成的陣列系統(tǒng)中,---一塊至多塊硬盤的容量,來對數(shù)據(jù)的存儲提供一定的容錯能力。
我們先來簡單假設一種使用情況:你擁有一些重要的數(shù)據(jù),但是你并沒有將這些數(shù)據(jù)進行備份,他們只存在于你臺式機的單一硬盤中。那么一旦遇到臺式機的硬盤損壞,你的這些數(shù)據(jù)只能去找數(shù)據(jù)恢復公司了;而如果你的臺式機做了磁盤陣列,冷磁盤陣列公司,那么只需要替換陣列中壞掉的硬盤就可以重新恢復數(shù)據(jù)了。
這正是raid的---所在。如果你只組建一個相對廉價的陣列,甚至不需要額外的硬件成本,只要你的主板支持raid功能,就可以體驗raid給你帶來的好處。