linux磁盤陣列的概念解析

liunx磁盤陣列的概念問題
   1.什麼是磁盤陣列(Disk Array)?
  磁盤陣列(Disk Array)是由一個硬盤控制器來控制多個硬盤的相互連接,使多個硬盤的讀寫同步,減少錯誤,增加效率和可靠度的技術。
 
 2.什麼是RAID?
  RAID是Redundant Array ofInexpensive Disk的縮寫,意爲廉價冗餘磁盤陣列,是磁盤陣列在技術上實現的理論標準,其
目的在於減少錯誤、提高存儲系統的性能與可靠度。常用的等級有1、3、5級等。
 
 3.什麼是RAID Level 0?
  RAID Level 0是Data Striping(數據分割)技術的實現,它將所有硬盤構成一個磁盤陣列,可以同時對多個硬盤做讀寫動作,但是不具備備份及容錯能力,它價格便宜,硬盤使用效率最佳,但是可靠度是最差的。
  以一個由兩個硬盤組成的RAID Level 0磁盤陣列爲例,它把數據的第1和2位寫入第一個硬盤,第三和第四位寫入第二個硬盤……以此類推,所以叫“數據分割",因爲各盤數據的寫入動作是同時做的,所以它的存儲速度可以比單個硬盤快幾倍。
  但是,這樣一來,萬一磁盤陣列上有一個硬盤壞了,由於它把數據拆開分別存到了不同的硬
盤上,壞了一顆等於中斷了數據的完整性,如果沒有整個磁盤陣列的備份磁帶的話,所有的數據是無法挽回的。因此,儘管它的效率很高,但是很少有人冒着數據丟失的危險採用這項技術。
 
 4.什麼是RAID Level 1?
  RAID Level 1使用的是Disk Mirror(磁盤映射)技術,就是把一個硬盤的內容同步備份複製到另一個硬盤裏,所以具備了備份和容錯能力,這樣做的使用效率不高,但是可靠性高。
 
 5.什麼是RAID Level 3?
  RAID Level 3採用Byte-interleaving(數據交錯存儲)技術,硬盤在SCSI控制卡下同時動作,並將用於奇偶校驗的數據儲存到特定硬盤機中,它具備了容錯能力,硬盤的使用效率是安裝幾個就減掉一個,它的可靠度較佳。
 
 6.什麼是RAID Level 5?
  RAID Level 5使用的是Disk Striping(硬盤分割)技術,與Level 3的不同之處在於它把奇偶校驗數據存放到各個硬盤裏,各個硬盤在SCSI控制卡的控制下平行動作,有容錯能力,跟Level 3一樣,它的使用效率也是安裝幾個再減掉一個。 
 
    7.什麼是熱插拔硬盤?
  熱插拔硬盤英文名爲Hot-SwappableDisk,在磁盤陣列中,如果使用支持熱插拔技術的硬盤,在有一個硬盤壞掉的情況下,服務器可以不用關機,直接抽出壞掉的硬盤,換上新的硬盤。一般的商用磁盤陣列在硬盤壞掉的時候,
會自動鳴叫提示管理員更換硬盤。

磁盤陣列(Disk array)原理
爲什麼需要磁盤陣列? 如何增加磁盤的存取(acces)速度,如何防止數據因磁盤的故障而失落及如 何有效的利用磁盤空間,一直是電腦專業人員和用戶的困憂;而大容量磁盤的價 格非常昂貴,對用戶形成很大的負擔。磁盤陣列技術
的產生一舉解決了這些問題。
過去十年來,CPU的處理速度幾乎是幾何級數的躍升,內存(memory)的 存取速度亦大幅增加,而數據儲存裝置——它要是磁盤(harddisk)——的存取 速度相較之下。較爲緩慢。整個I/0吞吐量不能和系統匹配,形成電腦系統的瓶 頸,降低了電腦系統的整體性能(throughout)若不能有效的提升磁盤的存取速度,CPU、內存及磁盤間的不平衡將使CPU及內
存的改進形成浪費。目前改進磁盤存取速度的方式主要有兩種。
一是
磁盤快取控制(disk cache controller),它將從磁盤讀取的數據存在快取內存(cache memory)中以減少磁 盤存取的次數。數據的讀寫都在cache內存中進行,大幅增加存取的速度,如要讀 取的數據不在cache內存中,或要寫數據到磁盤時,才做磁盤的存取動作。這種方 式在單工期環境(Single—tasking envioronment)如DOS之下。對大量數據的 存取有很好的性能(量小且頻繁的存取則不然)。但在多工(multi—tasking)環 境之下(因爲要不停的作數據交換(swapping)的動作)或數據庫(database) 的存取
(因每一記錄都很小)就不能顯示其性能。這種方式沒有任何安全保障。
 
其一是使用磁盤陣列的技術。磁盤陣列是把多個磁盤組成一個陣列,當作單 一磁盤使用,它將數據以分段(striping)的方式儲存在不同的磁盤中,存取數據 時,陣列中的相關磁盤一起動作:大幅減低數據的存取時間,同時有更佳的空間 利用率。磁盤陣列所利用的不同的技術,稱爲RAID level,不同的level針對不 同的系統及應用,以解決數據安全的問題。
一般高性能的磁盤陣
列都足以硬件的形式來達
成、進—步的把磁盤cache控制 及磁盤陣列結
合在—個控制器(RAID controler)或控制卡個,
針對個同的用戶 解決人們對磁盤輸出/入系統
的四大要求:
(1)增加存取速度。
(2)容錯(fault tolerance),即安全性。
(3)有效的利用磁盤空間。
(4)儘量的平衡CPU,內存及磁盤的性能並異,
提高電腦的整體工作性能。
磁盤陣列原理
1987年,加州伯克利大學的一位人員發表了名爲“磁盤陣列研究”的論文, 正式提到了RAID也就是滋盤陣列,論文提出廉價的5.25”及3.5”的硬盤也能如 大機器上的8”盤能提供人容量、高性能和數據的一致性,並詳述了RAIDl至5 的技術。 磁盤陣列針對不同的應用使用的不同技術,稱爲RAID level,RAID是RedundantArray of Inexpenslve Disks的縮寫,而每一level代表一種技術,目前 業界公認的標準是RAID0—RAID5。這個level並不代表技術的高低,level5並不高於level3,level1也個低於level4。字於要選樣哪一種RAID level的產品,純視用戶的操作環境(Operatingenvir0nment)及應用(application)而定,與level 的高低沒有必然的關係。RAID0沒有安全的保障,僅其快速,所以適合高速I/0 的系統;RAIDl適用於需安全性又要兼顧速度的系統,RAID2及RAID3適用於 大型電腦及影像、CAD/CAM等處理;RAID5多用於0LTP,因有餘融機構及 大型數據處理中心的迫切需要,故使用較多而較有名氣,但也因此形成很多人對磁盤陣列的誤解,以爲磁盤陣列非要RAID5不
可;RAID4較少使用、和RAID5 有其共同之處,但RAID4適合大量數據的存取。其他如RAID6,RAID7。乃至 RAIDl0、50、100等,都是廠商各做各的,並無一致的標準,在此不作說明。
RAID1
RAID1是使用磁盤鏡像(disk muroring)的技術,磁盤鏡像應用在RAIDl 之前就在很多系統中使用,它的方式是在工作磁盤(workingdisk)之外再加一 額外的備份磁盤(backupdisk)兩個磁盤所儲存的數據安全一致。數據在寫入工 作磁盤同時也寫入備份磁盤。
RAID2
RAID2是把數據分散爲位元/位元組(bit/byte)或塊(b1ock),加入海明碼HammingCode、在磁盤陣列中作間隔寫入(Interleaving)到每個磁盤小。而 且地址(address)都一樣,也就是在各個磁盤中,其數據都在相同的磁道(cylinder or track)及扇區中。RAID2又稱爲並行陣列(parallel array)其設計足使 用共軸同步(spindle synchronize)的技術,存取數據時、控個磁盤陣列
—起動 作,在各個磁盤的相同位置作平行存取,所以有最好的存取時間(auesstime),共 總線(bus)是特別的設計以大
帶寬並行傳輸所存取的數據,所以有最好的傳輸時 間(transfer time)。在人型檔案的存取應用,RAID2有最好的件能,僅如果檔 案太小,會將其性能批下來。因爲磁盤的存取足以期區爲單位。而RAID2的存取是所有磁盤平行動作,而且是作單位元或位元組的存取。故小於—個扇區的數據 最會使其性能大打折扣。RAID2是設計給需要連續且大量數據的電腦使用的、如 大型電腦(mainframe to supercomputer)、作影像處理或CAD/CAM的工作站 (workstation)等,並個適用於—般的多用戶環境網絡服務器(network server)。 小型機或PC。
RAID3
RAID3的數據儲存及存取方式都和RAID2一樣,僅在安今方面以奇偶較驗 (parity check)取代海明碼做錯誤校正及檢測,所以只需要—個額外的校檢磁盤 (parity disk)。奇偶校驗值的計算足以各個磁盤的相對應位作XOR的邏輯運算,然後將結果寫入奇偶校驗磁盤,仟何數據的修改都要做奇偶校驗計算。
RAID4
RAID4也使用一個校驗磁盤,但和RAID3不一樣,RAID4的方式是RAID0 加上一個校驗磁盤。RAID5
RAID5和RAID4相似但避免了RAID4的瓶頸,方法是不用校驗磁盤而將校 驗數據以循環的方式放在每一個磁盤中,RAID5的控制比較複雜,尤其是利用硬件對磁盤陣列的控制,因爲這種方式的應用比其他的RAID level要掌握更多的事情,更多的輸出/入需求,既要速度快,又要處理數據,計算校驗值,做錯誤 校正等,所以價格較高,其應用最好是0LTP,至於用於大型文件,不見得有最 佳的性能。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章