張新諾

[摘要]隨著時代的發展和科技的進步,各個領域的數據存儲就需要越來越可靠和穩定,同時提高讀寫速率也是極為重要的,因此,作為一種被廣泛認同的存儲管理技術,即RAID技術,在如今這個時代迅速發展且被大量運用。本文就信息化建設方面來詳述RAID技術,由于不同的信息化建設部門采用的RAID模式不一樣,因此針對RAID模式的不同進行分析研究,在總結其優點和缺點的同時并提出建議,以此更好地提高效率。文中最后表述了RAID技術的應用實踐并說明了應該如何對其進行日常維護,這也有利于RAID技術能夠更好地服務于信息化建設當中。
[關鍵詞]RAID技術;信息化建設;應用
0引言
信息化建設主要是針對農業、工業及教育科學技術等方面,同時也有利于我國信息資源開發領域的發展,由國家進行統一規劃及實行,其對我國現代化建設也有十分重要的意義。隨著現代化進程的推動,各行各業所需的相關信息量越來越多,需要更高效率的信息處理技術,因此計算機和通信技術在這種形勢下迅速發展,其中,由于性能優勢而備受我國各大領域信賴的RAID技術得到了廣泛運用和發展。
1RAID技術
起初,David A.Patterson等人提出了RAID(Redundant Arrays of Inexpensive Disks)即廉價冗余磁盤陣列這個概念。作為加利福利亞大學伯克利分校的研究人員,David A.Patterson等人原本是為了解決由于磁盤性能的增長速度趕不上CPU性能而不能與之相匹配的問題,但是由于RAID技術越來越可靠、安全,且其可擴展性等不斷提高,也就順其自然地被廣泛運用到各個領域的實際存儲系統中。RAID技術利用冗余數據使數據本身具有高可靠性,且通過將數據條帶化從而增強I/O的并行性,這樣有利于數據存儲的高效性和安全性。冗余數據就是指備份或編碼原有數據,通常利用復制、域運算及異域運算的手段進行,且把經過處理的數據放到不同磁盤中進行存儲,由此得到有相應容錯能力的磁盤陣列。而數據條帶化則是把被分成些許獨立數據段的整段數據放到不同磁盤中進行存儲,這樣進程可以并行訪問多個磁盤,因此磁盤的I/O并行度得到增強,即形成了具有更高I/O帶寬的磁盤陣列。
但是,冗余數據的方式不同就會使得磁盤陣列的容錯能力及I/O能力不同。比如,單塊磁盤存儲冗余數據的磁盤陣列容錯能力低于兩塊磁盤,但是其空間利用率就相對較高。也就是說兩塊磁盤存儲冗余數據使得磁盤陣列空間利用率降低,但卻增加了數據的安全性及可靠性。
所以,為了滿足不同情況下所需的磁盤陣列容錯能力和I/O能力,也就出現了不同等級的RAID技術。
2RAID技術的工作原理及特點
2.1RAID技術工作原理
RAID 0:RAID 0由于其沒有數據冗余功能,不能被稱作真正的RAID結構。其分割數據的單位是位或者字節,其在多個磁盤上是以并行讀寫的方式進行的,所以數據傳輸率較高。RAID 0不能保障數據可靠,只能提高性能,且如果有一個磁盤損壞就會使所有數據受到影響,這也是其不適用于要求數據較高安全性情況的原因所在。
當將磁盤陣列設置成RAID 0模式時,磁盤陣列的總容量等于該陣列最小磁盤容量乘上磁盤數量。例如:5塊300GB的硬盤和一個250 GB硬盤組成RAID 0,則可得到的磁盤空間是1 500 GB(250 GB×6)。
RAID 1:其數據冗余是利用磁盤數據鏡像的方式,即采用成對且獨立的磁盤相互備份數據來實現數據冗余。如果原始數據處于繁忙狀態而不及時提供有效數據,則可以通過鏡像拷貝直接讀取相關數據,這也是RAID 1能使讀取性能增強的體現。RAID 1的數據安全性及可靠性較高,當然其單位成本高于其他磁盤陣列。由于其具有能自動在鏡像磁盤中讀寫的性能,即便是有一個磁盤損壞,也不會對數據產生影響,無需重新組成。
設置成RAID 1模式的陣列容量等于兩個磁盤中較小那個的容量。例如,一個100 GB的硬盤和一個120 GB的硬盤組成RAID 1,則其RAID 1卷的容量等于100 GB。
RAID 0+1:RAID 0+1是RAID 0和RAID 1的組合,又稱為RAID 10。它既用條塊化讀寫,同時又使用鏡像操作。RAID(O+1)完全使用硬盤來實現資料備份,因此允許多個硬盤損壞。在每次寫人數據,磁盤陣列控制器會將資料同時寫入該兩組“大容量數組硬盤組”內。同RAID 1一樣,雖然其硬盤使用率亦只有50%,但它卻是最具高效率的規劃方式。
RAID 2:其是在RAID 0的基礎上延伸得到的,RAID 2可以以字節為單位來分割數據,其磁盤陣列的容錯能力是采用海明碼方式得到的,這也使得其實行過程變得繁雜而逐漸被淘汰。
RAID 3:與RAID 2很相似的是兩者都是把數據條帶化后而存儲于不同的磁盤上,不同的是RAID 3采用簡易的奇偶校驗且將處理后的信息存儲于單塊磁盤中。假如一塊數據磁盤損壞,那存儲奇偶校驗信息的單塊磁盤和其他數據磁盤則能再次產生數據;若奇偶校驗信息存儲盤損壞的話,數據還是可以正常使用。RAID 3能有效傳輸龐大的連續數據,但是由于奇偶校驗信息存儲盤的存在,則不能很好地進行隨機數據的寫功能。
RAID 4:是用特定磁盤來存儲校驗信息,這點與RAID 3很相似,但是RAID 4數據存儲的單位是數據塊。由于一個固定大小的數據單元就是一個數據塊,因此只要數據塊完整,就能順利地對數據進行編解碼和恢復產生。雖然RAID4由于校驗效率要高于RAID 3,寫入速度要高于RAID 3,但其數據恢復要比RAID 3困難的多,控制器設計難度也非常大,所以數據訪問效率比較低。
RAID 5:具有存儲性能高、數據安全性好及存儲成本控制等的一系列優點,其讀寫速度較快且空間利用率也較高,但是假使一塊硬盤損壞就會影響整個系統性能。RAID 5能夠保障系統數據的安全,雖然沒有鏡像的高保障性,但是其磁盤空間利用率較高。RAID 5的數據讀取速率與RAID 0相差不大,但是由于其有奇偶校驗信息存儲盤,使得其寫入數據的速率低于單個磁盤的RAID 0,而RAID 5的一個奇偶校驗信息對應多個數據使得其磁盤空間利用率高于RAID 1。
RAID 6:多了一個獨立的奇偶校驗信息存儲盤,具有兩個獨立的使用不同算法的奇偶校驗信息存儲盤,增加了數據的可靠性,就算是兩個奇偶校驗信息存儲盤都損壞也對數據產生不了影響。由于其寫“損失”比RAID 5大,這也就降低了寫的性能。
RAID 7:與前面的技術都不同,其是一種新型的RAID標準。RAID 7能夠智能地進行實時操作,其具有的軟件工具能夠進行存儲管理,還能與主機脫離而獨自運作,且完全不需要CPU支持。RAID 7磁盤結構的傳輸是通過優化后的高速數據進行的,同步I/0傳送且能單獨掌控,這對系統并行性有很大的提升作用,同時也能使系統訪問數據的速度得到有效增加;由于高速緩沖存儲器在各個磁盤中都具有,不同實時系統在無論哪一個操作芯片都能控制實時操作系統的條件下而得到需求滿足,也就是多個用戶可以連接多臺主機進行接近零時間系統訪問,非常便捷。
最常用的RAID0~5級的描述、速度與容錯功能見表1。
2.2RAID技術特點
就RAID不同級別的發展及運用方面:
第一,RAID控制器的讀寫功能是運用磁盤陣列的并行數據實現的,這樣不僅擺脫了磁盤機電設計的影響,還有利于存取速度的增大,也就是說幾張磁盤陣列的讀寫速度就是單盤讀寫速度的幾倍,因此能有效地運用到多種應用。
第二,RAID系統的數據存儲容量很大,主機可以根據需要隨時運用磁盤上的相關數據。對于較為復雜的RAID系統,用戶可以利用控制器傳數據的有關方式對多個磁盤進行級別連接。比如九十張磁盤的尋址操作可由一個設置完善的RAID的高性能控制器進行同一時間的控制。
第三,RAID系統奇偶校驗技術的應用對數據可靠性的增強十分有幫助。其控制器在磁盤上進行數據寫功能的同時還能把相關的奇偶校驗冗余數據進行如實記錄,這樣一來,即便磁盤損壞,記錄下來的奇偶校驗信息也能把丟失的相關信息重新計算出來,且不影響RAID控制器的性能。
3RAID技術在信息存儲中的應用
3.1RAID的實現方式
磁盤陣列的實現是通過軟件陣列和硬件陣列這兩種形式。
軟件陣列:連接普通SCSI卡的多塊硬盤被網絡操作系統本身具有的磁盤管理功能分成邏輯盤并組成軟件陣列,比如NOVELL的Net Ware操作系統具有軟件陣列功能和RAID 1功能。軟件陣列能冗余數據,可是會降低磁盤子系統的相關性能。
硬件陣列:通過專門的磁盤陣列卡形成,磁盤陣列卡在如今的非入門及服務器中很常見,無論是否集成在主板上都能形成硬件陣列。其中,動態修改陣列級別、超高速緩沖及自動數據恢復等功能都能通過硬件陣列實現,另外硬件陣列還具有數據保護、可靠、實用及可控等特性。磁盤陣列卡有一個專門的處理器用來進行數據的高速處理,另外還有一個專門的存貯器用來進行數據的高速緩沖。由此,磁盤陣列卡就可以實現服務器操作磁盤這個功能,這也就不會占用太多的CPU資源,還能節省系統內存,且對磁盤子系統的性能沒有影響。
3.2RAID應用場景
數據的存儲可根據不同的需求選擇不同的數據RAID方式。
RAID 0:由于RAID 0數據冗余性差但磁盤讀寫效率和磁盤利用率高的特點,一般應用于小型私人盤陣中,不適合應用于大型商業或者數據安全性較高的場合。
RAID 1:采用備份盤的方式,安全性高,因此多應用于財務部門、付款部門等需要高可用性以及對數據的安全有較高要求的部門。
RAID 0+1:由于具有RAID 1和RAID 0兩種方式的特點,RAID 10的數據安全性和讀寫效率高,但建設成本較大。因此該種方式多應用于圖像處理、數據庫服務器、一般文件服務器、備份磁盤驅動器及在信息化建設中對存儲速度和數據安全性都有要求的單位。
RAID 2:該種方式由于只是RAID 0的延伸,并且實現方式更加復雜,已經逐漸被淘汰。
RAID 3:由于RAID 3不能很好地執行隨機數據的寫功能,可用于寫連續數據的工作環境,如繪圖、數據倉儲、視訊編輯、影像、高速數據擷取、多媒體等單位應用。
RAID 4:和RAID 3的方式類似,雖然校驗速度高于RAID 3,但其數據恢復要比RAID 3更加復雜,其應用的場合較少。
RAID 5:具有存儲性能高、數據安全性好及存儲成本控制等的一系列優點,已成為大部分存儲系統首選的RAID方式,許多政府機關、科研單位、企業等的存儲系統都是采用RAID 5方式。
RAID 6:由于RAID 6的建設成本比RAID 5高,同時其方式的設計復雜,其應用性要遠小于RAID 5,只有對數據安全性有特殊要求的部分單位和部門應用。
RAID 7:由于RAID 7為一種新型RAID標準,其應用的成本很高,暫時只有部分高I/0需求的科研單位測試使用。
3.3硬盤數據恢復
RAID系統與操作系統及其他軟件相比,簡單來說其就是一個硬盤,其他的磁盤都無法看到,比如說分區及格式化等操作都是圍繞一個硬盤進行。因此,RAID數據恢復在很多數據恢復軟件中進行的過程其實和一個硬盤數據恢復相比沒什么不同,并且像Recover4all等在一個硬盤上實現數據恢復的軟件也具備這個特性。
根據不同的RAID自身損壞的情況實行不同的解決方案。一般都是由于操作錯誤而失去了RAID邏輯盤,這種情況下一定不要初始化邏輯盤,而是只需按照原來的方式來設置RAID參數并重新啟動就行了。也有一些RAID卡,如果將其RAID邏輯盤重新構建就會再次條帶化各硬盤,而且數據也因此可能再也無法恢復。所以,應該先明確用戶用的是哪種RAID,操作系統有沒有損壞以及是否需要刷新RAID系統等后才能決定要不要恢復RAID系統。
3.4RAID的安全管理
3.4.1注意對日志文件的運行進行檢查
磁盤陣列內部的運行狀況都被一一記錄在日志文件中,其中含有事件序列號、設備位置、發生時間等相關信息,有利于查出磁盤陣列出現的問題并有效排除不相干部分。
3.4.2注意對系統配置參數進行備份
邏輯配置、狀態配置等相關參數,比如所用RAID類型、邏輯盤大小、條帶容量、物理磁盤組成種類及各物理磁盤的通道號、型號、目標序列號等數據應該在磁盤陣列系統建成后做好詳細記錄。
3.4.3注意對重要數據進行定時備份
陣列控制器冗余、備用電池及雙UPS電源供電等技術由于設備成本及技術繁雜等而不能同時使用,因此,重要的工作需要通過磁帶、磁盤等介質對數據進行定時備份,也可以采用操作系統對數據進行本地備份,另外還可以利用網絡系統對數據進行遠程備份。
3.4.4注意對熱備用磁盤進行建立
作為RAID技術的新型技術,即熱備用磁盤技術。在磁盤陣列中,正常運行時,一個待機的磁盤會自動替代物理磁盤中損壞的那個,此時利用邏輯驅動器的冗余數據,原來損壞磁盤中存儲的數據會被利用邏輯驅動器冗余數據的陣列控制器采用校驗算法而在熱備用磁盤上再次建立。
這種重新建立數據的熱備用磁盤,其空間容量應該比損壞磁盤的容量大或者兩者相等,在平時必須保證其不被占用,而且其陣列控制器必須能正常地自動進行數據重新建立。一個陣列對應一個熱備用磁盤,系統管理員一旦發現熱備用磁盤數據丟失的機率增大,就應該立即把相應的新熱備用磁盤代替損壞的磁盤,如此才有利于維護相關性能的正常。
3.4.5注意對數據一致性進行定期檢查
為了保證數據的一致性,應該每周一到兩次來仔細檢查RAID互為鏡像磁盤的數據,當然也可以重新檢驗主數據,這樣也能達到效果。
4結語
目前,我國各領域已經普遍且較為成熟地運用RAID技術,其作用不可忽視。隨著信息化建設進程的推動,企業需要結合自身發展情況來決定采用哪種RAID模式,只有這樣,才有利于增強企業本身的信息化管理能力,同時對辦公水平的提高也有十分重要的意義。所以,為了我國信息化建設的全面發展,應該深入研究RAID技術,并為此奠定有力基礎。