【廣告】
磁盤陣列原理
磁盤陣列作為獨立系統(tǒng)在主機外直連或通過網(wǎng)絡(luò)與主機相連。磁盤陣列有多個端口可以被不同主機或不同端口連接。一個主機連接陣列的不同端口可提升傳輸速度。 [2] 和當(dāng)時PC用單磁盤內(nèi)部集成緩存一樣,在磁盤陣列內(nèi)部為加快與主機交互速度,都帶有一定量的緩沖存儲器。主機與磁盤陣列的緩存交互,緩存與具體的磁盤交互數(shù)據(jù)。 [2] 在應(yīng)用中,有部分常用的數(shù)據(jù)是需要經(jīng)常讀取的,磁盤陣列根據(jù)內(nèi)部的算法,查找出這些經(jīng)常讀取的數(shù)據(jù),存儲在緩存中,加快主機讀取這些數(shù)據(jù)的速度,而對于其他緩存中沒有的數(shù)據(jù),主機要讀取,則由陣列從磁盤上直接讀取傳輸給主機。對于主機寫入的數(shù)據(jù),只寫在緩存中,主機可以立即完成寫操作。然后由緩存再慢慢寫入磁盤。
磁盤陣列優(yōu)點
提高傳輸速率。RAID通過在多個磁盤上同時存儲和讀取數(shù)據(jù)來大幅提高存儲系統(tǒng)的數(shù)據(jù)吞吐量(Throughput)。在RAID中,可以讓很多磁盤驅(qū)動器同時傳輸數(shù)據(jù),而這些磁盤驅(qū)動器在邏輯上又是一個磁盤驅(qū)動器,所以使用RAID可以達到單個磁盤驅(qū)動器幾倍、幾十倍甚至上百倍的速率。這也是RAID起初想要解決的問題。因為當(dāng)時CPU的速度增長很快,而磁盤驅(qū)動器的數(shù)據(jù)傳輸速率無法大幅提高,所以需要有一種方案解決二者之間的矛盾。RAID成功了。 [2] 通過數(shù)據(jù)校驗提供容錯功能。普通磁盤驅(qū)動器無法提供容錯功能,如果不包括寫在磁盤上的CRC(循環(huán)冗余校驗)碼的話。RAID容錯是建立在每個磁盤驅(qū)動器的硬件容錯功能之上的,所以它提供更高的安全性。在很多RAID模式中都有較為完備的相互校驗/恢復(fù)的措施,甚至是直接相互的鏡像備份,從而大大提高了RAID系統(tǒng)的容錯度,提高了系統(tǒng)的穩(wěn)定冗余性。
RAID級別介紹
一般常用的RAID,分別是RAID 0、RAID1、RAID 2、RAID 3、RAID 4以及RAID 5,再加上二合一型 RAID 0 1﹝或稱RAID 10﹞。我們先把這些RAID級別的優(yōu)、缺點做個比較:
RAID級別 相對優(yōu)點 相對缺點
RAID 0 存取速度很快 沒有容錯
RAID 1 完全容錯 成本高
RAID 2 帶海明碼校驗,數(shù)據(jù)冗余多,速度慢
RAID 3 寫入性能較好 沒有多任務(wù)功能
RAID 4 具備多任務(wù)及容錯功能 Parity 磁盤驅(qū)動器造成性能瓶頸
RAID 5 具備多任務(wù)及容錯功能 寫入時有overhead
RAID 0 1/RAID 10 速度快、完全容錯 成本高