完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>
標(biāo)簽 > RAID
磁盤陣列是由很多價(jià)格較便宜的磁盤,組合成一個(gè)容量巨大的磁盤組,利用個(gè)別磁盤提供數(shù)據(jù)所產(chǎn)生加成效果提升整個(gè)磁盤系統(tǒng)效能。
磁盤陣列(Redundant Arrays of Independent Disks,RAID),有“獨(dú)立磁盤構(gòu)成的具有冗余能力的陣列”之意。
磁盤陣列是由很多價(jià)格較便宜的磁盤,組合成一個(gè)容量巨大的磁盤組,利用個(gè)別磁盤提供數(shù)據(jù)所產(chǎn)生加成效果提升整個(gè)磁盤系統(tǒng)效能。利用這項(xiàng)技術(shù),將數(shù)據(jù)切割成許多區(qū)段,分別存放在各個(gè)硬盤上。
磁盤陣列還能利用同位檢查(Parity Check)的觀念,在數(shù)組中任意一個(gè)硬盤故障時(shí),仍可讀出數(shù)據(jù),在數(shù)據(jù)重構(gòu)時(shí),將數(shù)據(jù)經(jīng)計(jì)算后重新置入新硬盤中。分類
磁盤陣列其樣式有三種,一是外接式磁盤陣列柜、二是內(nèi)接式磁盤陣列卡,三是利用軟件來仿真。
磁盤陣列(Redundant Arrays of Independent Disks,RAID),有“獨(dú)立磁盤構(gòu)成的具有冗余能力的陣列”之意。
磁盤陣列是由很多價(jià)格較便宜的磁盤,組合成一個(gè)容量巨大的磁盤組,利用個(gè)別磁盤提供數(shù)據(jù)所產(chǎn)生加成效果提升整個(gè)磁盤系統(tǒng)效能。利用這項(xiàng)技術(shù),將數(shù)據(jù)切割成許多區(qū)段,分別存放在各個(gè)硬盤上。
磁盤陣列還能利用同位檢查(Parity Check)的觀念,在數(shù)組中任意一個(gè)硬盤故障時(shí),仍可讀出數(shù)據(jù),在數(shù)據(jù)重構(gòu)時(shí),將數(shù)據(jù)經(jīng)計(jì)算后重新置入新硬盤中。分類
磁盤陣列其樣式有三種,一是外接式磁盤陣列柜、二是內(nèi)接式磁盤陣列卡,三是利用軟件來仿真。
外接式磁盤陣列柜最常被使用大型服務(wù)器上,具可熱交換(Hot Swap)的特性,不過這類產(chǎn)品的價(jià)格都很貴。
內(nèi)接式磁盤陣列卡,因?yàn)閮r(jià)格便宜,但需要較高的安裝技術(shù),適合技術(shù)人員使用操作。硬件陣列能夠提供在線擴(kuò)容、動態(tài)修改陣列級別、自動數(shù)據(jù)恢復(fù)、驅(qū)動器漫游、超高速緩沖等功能。它能提供性能、數(shù)據(jù)保護(hù)、可靠性、可用性和可管理性的解決方案。陣列卡專用的處理單元來進(jìn)行操作。
利用軟件仿真的方式,是指通過網(wǎng)絡(luò)操作系統(tǒng)自身提供的磁盤管理功能將連接的普通SCSI卡上的多塊硬盤配置成邏輯盤,組成陣列。軟件陣列可以提供數(shù)據(jù)冗余功能,但是磁盤子系統(tǒng)的性能會有所降低,有的降低幅度還比較大,達(dá)30%左右。因此會拖累機(jī)器的速度,不適合大數(shù)據(jù)流量的服務(wù)器。
原理
磁盤陣列作為獨(dú)立系統(tǒng)在主機(jī)外直連或通過網(wǎng)絡(luò)與主機(jī)相連。磁盤陣列有多個(gè)端口可以被不同主機(jī)或不同端口連接。一個(gè)主機(jī)連接陣列的不同端口可提升傳輸速度。
和當(dāng)時(shí)PC用單磁盤內(nèi)部集成緩存一樣,在磁盤陣列內(nèi)部為加快與主機(jī)交互速度,都帶有一定量的緩沖存儲器。主機(jī)與磁盤陣列的緩存交互,緩存與具體的磁盤交互數(shù)據(jù)。
在應(yīng)用中,有部分常用的數(shù)據(jù)是需要經(jīng)常讀取的,磁盤陣列根據(jù)內(nèi)部的算法,查找出這些經(jīng)常讀取的數(shù)據(jù),存儲在緩存中,加快主機(jī)讀取這些數(shù)據(jù)的速度,而對于其他緩存中沒有的數(shù)據(jù),主機(jī)要讀取,則由陣列從磁盤上直接讀取傳輸給主機(jī)。對于主機(jī)寫入的數(shù)據(jù),只寫在緩存中,主機(jī)可以立即完成寫操作。然后由緩存再慢慢寫入磁盤。
優(yōu)缺點(diǎn)
優(yōu)點(diǎn)
提高傳輸速率。RAID通過在多個(gè)磁盤上同時(shí)存儲和讀取數(shù)據(jù)來大幅提高存儲系統(tǒng)的數(shù)據(jù)吞吐量(Throughput)。在RAID中,可以讓很多磁盤驅(qū)動器同時(shí)傳輸數(shù)據(jù),而這些磁盤驅(qū)動器在邏輯上又是一個(gè)磁盤驅(qū)動器,所以使用RAID可以達(dá)到單個(gè)磁盤驅(qū)動器幾倍、幾十倍甚至上百倍的速率。這也是RAID最初想要解決的問題。因?yàn)楫?dāng)時(shí)CPU的速度增長很快,而磁盤驅(qū)動器的數(shù)據(jù)傳輸速率無法大幅提高,所以需要有一種方案解決二者之間的矛盾。RAID最后成功了。
通過數(shù)據(jù)校驗(yàn)提供容錯功能。普通磁盤驅(qū)動器無法提供容錯功能,如果不包括寫在磁盤上的CRC(循環(huán)冗余校驗(yàn))碼的話。RAID容錯是建立在每個(gè)磁盤驅(qū)動器的硬件容錯功能之上的,所以它提供更高的安全性。在很多RAID模式中都有較為完備的相互校驗(yàn)/恢復(fù)的措施,甚至是直接相互的鏡像備份,從而大大提高了RAID系統(tǒng)的容錯度,提高了系統(tǒng)的穩(wěn)定冗余性。
缺點(diǎn)
RAID0沒有冗余功能,如果一個(gè)磁盤(物理)損壞,則所有的數(shù)據(jù)都無法使用。RAID1磁盤的利用率最高只能達(dá)到50%(使用兩塊盤的情況下),是所有RAID級別中最低的。RAID0+1以理解為是RAID 0和RAID 1的折中方案。RAID 0+1可以為系統(tǒng)提供數(shù)據(jù)安全保障,但保障程度要比 Mirror低而磁盤空間利用率要比Mirror高。
RAID級別
1、RAID 0
RAID 0是最早出現(xiàn)的RAID模式,即Data Stripping數(shù)據(jù)分條技術(shù)。RAID 0是組建磁盤陣列中最簡單的一種形式,只需要2塊以上的硬盤即可,成本低,可以提高整個(gè)磁盤的性能和吞吐量。RAID 0沒有提供冗余或錯誤修復(fù)能力,但實(shí)現(xiàn)成本是最低的。
RAID 0最簡單的實(shí)現(xiàn)方式就是把N塊同樣的硬盤用硬件的形式通過智能磁盤控制器或用操作系統(tǒng)中的磁盤驅(qū)動程序以軟件的方式串聯(lián)在一起創(chuàng)建一個(gè)大的卷集。在使用中電腦數(shù)據(jù)依次寫入到各塊硬盤中,它的最大優(yōu)點(diǎn)就是可以整倍的提高硬盤的容量。如使用了三塊80GB的硬盤組建成RAID 0模式,那么磁盤容量就會是240GB。其速度方面,各單獨(dú)一塊硬盤的速度完全相同。最大的缺點(diǎn)在于任何一塊硬盤出現(xiàn)故障,整個(gè)系統(tǒng)將會受到破壞,可靠性僅為單獨(dú)一塊硬盤的1/N。
為了解決這一問題,便出現(xiàn)了RAID 0的另一種模式。即在N塊硬盤上選擇合理的帶區(qū)來創(chuàng)建帶區(qū)集。其原理就是將原先順序?qū)懭氲臄?shù)據(jù)被分散到所有的四塊硬盤中同時(shí)進(jìn)行讀寫。四塊硬盤的并行操作使同一時(shí)間內(nèi)磁盤讀寫的速度提升了4倍。
在創(chuàng)建帶區(qū)集時(shí),合理的選擇帶區(qū)的大小非常重要。如果帶區(qū)過大,可能一塊磁盤上的帶區(qū)空間就可以滿足大部分的I/O操作,使數(shù)據(jù)的讀寫仍然只局限在少數(shù)的一、兩塊硬盤上,不能充分的發(fā)揮出并行操作的優(yōu)勢。另一方面,如果帶區(qū)過小,任何I/O指令都可能引發(fā)大量的讀寫操作,占用過多的控制器總線帶寬。因此,在創(chuàng)建帶區(qū)集時(shí),我們應(yīng)當(dāng)根據(jù)實(shí)際應(yīng)用的需要,慎重的選擇帶區(qū)的大小。
帶區(qū)集雖然可以把數(shù)據(jù)均勻的分配到所有的磁盤上進(jìn)行讀寫。但如果我們把所有的硬盤都連接到一個(gè)控制器上的話,可能會帶來潛在的危害。這是因?yàn)楫?dāng)我們頻繁進(jìn)行讀寫操作時(shí),很容易使控制器或總線的負(fù)荷 超載。為了避免出現(xiàn)上述問題,建議用戶可以使用多個(gè)磁盤控制器。最好解決方法還是為每一塊硬盤都配備一個(gè)專門的磁盤控制器。
雖然RAID 0可以提供更多的空間和更好的性能,但是整個(gè)系統(tǒng)是非常不可靠的,如果出現(xiàn)故障,無法進(jìn)行任何補(bǔ)救。所以,RAID 0一般只是在那些對數(shù)據(jù)安全性要求不高的情況下才被人們使用。
2、RAID 1
RA
ID 1稱為磁盤鏡像,原理是把一個(gè)磁盤的數(shù)據(jù)鏡像到另一個(gè)磁盤上,也就是說數(shù)據(jù)在寫入一塊磁盤的同時(shí),會在另一塊閑置的磁盤上生成鏡像文件,在不影響性能情況下最大限度的保證系統(tǒng)的可靠性和可修復(fù)性上,只要系統(tǒng)中任何一對鏡像盤中至少有一塊磁盤可以使用,甚至可以在一半數(shù)量的硬盤出現(xiàn)問題時(shí)系統(tǒng)都可以正常運(yùn)行,當(dāng)一塊硬盤失效時(shí),系統(tǒng)會忽略該硬盤,轉(zhuǎn)而使用剩余的鏡像盤讀寫數(shù)據(jù),具備很好的磁盤冗余能力。雖然這樣對數(shù)據(jù)來講絕對安全,但是成本也會明顯增加,磁盤利用率為50%,以四塊80GB容量的硬盤來講,可利用的磁盤空間僅為160GB。另外,出現(xiàn)硬盤故障的RAID系統(tǒng)不再可靠,應(yīng)當(dāng)及時(shí)的更換損壞的硬盤,否則剩余的鏡像盤也出現(xiàn)問題,那么整個(gè)系統(tǒng)就會崩潰。更換新盤后原有數(shù)據(jù)會需要很長時(shí)間同步鏡像,外界對數(shù)據(jù)的訪問不會受到影響,只是這時(shí)整個(gè)系統(tǒng)的性能有所下降。因此,RAID 1多用在保存關(guān)鍵性的重要數(shù)據(jù)的場合。
RAID 1主要是通過二次讀寫實(shí)現(xiàn)磁盤鏡像,所以磁盤控制器的負(fù)載也相當(dāng)大,尤其是在需要頻繁寫入數(shù)據(jù)的環(huán)境中。為了避免出現(xiàn)性能瓶頸,使用多個(gè)磁盤控制器就顯得很有必要。
3、RAID0+1
從RAID 0+1名稱上我們便可以看出是RAID0與RAID1的結(jié)合體。在我們單獨(dú)使用RAID 1也會出現(xiàn)類似單獨(dú)使用RAID 0那樣的問題,即在同一時(shí)間內(nèi)只能向一塊磁盤寫入數(shù)據(jù),不能充分利用所有的資源。為了解決這一問題,我們可以在磁盤鏡像中建立帶區(qū)集。因?yàn)檫@種配置方式綜合了帶區(qū)集和鏡像的優(yōu)勢,所以被稱為RAID 0+1。把RAID0和RAID1技術(shù)結(jié)合起來,數(shù)據(jù)除分布在多個(gè)盤上外,每個(gè)盤都有其物理鏡像盤,提供全冗余能力,允許一個(gè)以下磁盤故障,而不影響數(shù)據(jù)可用性,并具有快速讀/寫能力。RAID0+1要在磁盤鏡像中建立帶區(qū)集至少4個(gè)硬盤。
4、RAID: LSI MegaRAID、Nytro和Syncro
MegaRAID、Nytro和Syncro都是LSI 針對RAID而推出的解決方案,并且一直在創(chuàng)造更新。
LSI MegaRAID的主要定位是保護(hù)數(shù)據(jù),通過高性能、高可靠的RAID控制器功能,為數(shù)據(jù)提供高級別的保護(hù)。LSI MegaRAID在業(yè)界有口皆碑。
LSI Nytro的主要定位是數(shù)據(jù)加速,它充分利用當(dāng)今備受追捧的閃存技術(shù),極大地提高數(shù)據(jù)I/O速度。LSI Nytro包括三個(gè)系列:LSI Nytro WarpDrive加速卡、LSI Nytro XD 應(yīng)用加速存儲解決方案和LSI Nytro MegaRAID 應(yīng)用加速卡。Nytro MegaRAID主要用于DAS環(huán)境,Nytro WarpDrive加速卡主要用于SAN和NAS環(huán)境,Nytro XD解決方案由Nytro WarpDrive加速卡和Nytro XD 智能高速緩存軟件兩部分構(gòu)成。
LSI Syncro的定位主要用于數(shù)據(jù)共享,提高系統(tǒng)的可用性、可擴(kuò)展性,降低成本。
LSI通過MegaRAID提供基本的可靠性保障;通過Nytro實(shí)現(xiàn)加速;通過Syncro突破容量瓶頸,讓價(jià)格低廉的存儲解決方案可以大規(guī)模擴(kuò)展,并且進(jìn)一步提高可靠性。5、RAID2:帶海明碼校驗(yàn)
從概念上講,RAID 2 同RAID 3類似, 兩者都是將數(shù)據(jù)條塊化分布于不同的硬盤上, 條塊單位為位或字節(jié)。然而RAID 2 使用一定的編碼技術(shù)來提供錯誤檢查及恢復(fù)。這種編碼技術(shù)需要多個(gè)磁盤存放檢查及恢復(fù)信息,使得RAID 2技術(shù)實(shí)施更復(fù)雜。因此,在商業(yè)環(huán)境中很少使用。下圖左邊的各個(gè)磁盤上是數(shù)據(jù)的各個(gè)位,由一個(gè)數(shù)據(jù)不同的位運(yùn)算得到的海明校驗(yàn)碼可以保存另一組磁盤上。由于海明碼的特點(diǎn),它可以在數(shù)據(jù)發(fā)生錯誤的情況下將錯誤校正,以保證輸出的正確。它的數(shù)據(jù)傳送速率相當(dāng)高,如果希望達(dá)到比較理想的速度,那最好提高保存校驗(yàn)碼ECC碼的硬盤,對于控制器的設(shè)計(jì)來說,它又比RAID3,4或5要簡單。沒有免費(fèi)的午餐,這里也一樣,要利用海明碼,必須要付出數(shù)據(jù)冗余的代價(jià)。輸出數(shù)據(jù)的速率與驅(qū)動器組中速度最慢的相等。
6 、RAID3:帶奇偶校驗(yàn)碼的并行傳送
這種校驗(yàn)碼與RAID2不同,只能查錯不能糾錯。它訪問數(shù)據(jù)時(shí)一次處理一個(gè)帶區(qū),這樣可以提高讀取和寫入速度。校驗(yàn)碼在寫入數(shù)據(jù)時(shí)產(chǎn)生并保存在另一個(gè)磁盤上。需要實(shí)現(xiàn)時(shí)用戶必須要有三個(gè)以上的驅(qū)動器,寫入速率與讀出速率都很高,因?yàn)樾r?yàn)位比較少,因此計(jì)算時(shí)間相對而言比較少。用軟件實(shí)現(xiàn)RAID控制將是十分困難的,控制器的實(shí)現(xiàn)也不是很容易。它主要用于圖形(包括動畫)等要求吞吐率比較高的場合。不同于RAID 2,RAID 3使用單塊磁盤存放奇偶校驗(yàn)信息。如果一塊磁盤失效,奇偶盤及其他數(shù)據(jù)盤可以重新產(chǎn)生數(shù)據(jù)。 如果奇偶盤失效,則不影響數(shù)據(jù)使用。RAID 3對于大量的連續(xù)數(shù)據(jù)可提供很好的傳輸率,但對于隨機(jī)數(shù)據(jù),奇偶盤會成為寫操作的瓶頸。
7、RAID4:帶奇偶校驗(yàn)碼的獨(dú)立磁盤結(jié)構(gòu)
RAID4和RAID3很象,不同的是,它對數(shù)據(jù)的訪問是按數(shù)據(jù)塊進(jìn)行的,也就是按磁盤進(jìn)行的,每次是一個(gè)盤。在圖上可以這么看,RAID3是一次一橫條,而RAID4一次一豎條。它的特點(diǎn)和RAID3也挺象,不過在失敗恢復(fù)時(shí),它的難度可要比RAID3大得多了,控制器的設(shè)計(jì)難度也要大許多,而且訪問數(shù)據(jù)的效率不怎么好。
8、RAID5:分布式奇偶校驗(yàn)的獨(dú)立磁盤結(jié)構(gòu)
從它的示意圖上可以看到,它的奇偶校驗(yàn)碼存在于所有磁盤上,其中的p0代表第0帶區(qū)的奇偶校驗(yàn)值,其它的意思也相同。RAID5的讀出效率很高,寫入效率一般,塊式的集體訪問效率不錯。因?yàn)槠媾夹r?yàn)碼在不同的磁盤上,所以提高了可靠性。但是它對數(shù)據(jù)傳輸?shù)牟⑿行越鉀Q不好,而且控制器的設(shè)計(jì)也相當(dāng)困難。RAID 3 與RAID 5相比,重要的區(qū)別在于RAID 3每進(jìn)行一次數(shù)據(jù)傳輸,需涉及到所有的陣列盤。而對于RAID 5來說,大部分?jǐn)?shù)據(jù)傳輸只對一塊磁盤操作,可進(jìn)行并行操作。在RAID 5中有“寫損失”,即每一次寫操作,將產(chǎn)生四個(gè)實(shí)際的讀/寫操作,其中兩次讀舊的數(shù)據(jù)及奇偶信息,兩次寫新的數(shù)據(jù)及奇偶信息。
9、RAID6:帶有兩種分布存儲的奇偶校驗(yàn)碼的獨(dú)立磁盤結(jié)構(gòu)
名字很長,但是如果看到圖,大家立刻會明白是為什么,請注意p0代表第0帶區(qū)的奇偶校驗(yàn)值,而pA代表數(shù)據(jù)塊A的奇偶校驗(yàn)值。它是對RAID5的擴(kuò)展,主要是用于要求數(shù)據(jù)絕對不能出錯的場合。當(dāng)然了,由于引入了第二種奇偶校驗(yàn)值,所以需要N+2個(gè)磁盤,同時(shí)對控制器的設(shè)計(jì)變得十分復(fù)雜,寫入速度也不好,用于計(jì)算奇偶校驗(yàn)值和驗(yàn)證數(shù)據(jù)正確性所花費(fèi)的時(shí)間比較多,造成了不必須的負(fù)載。我想除了軍隊(duì)沒有人用得起這種東西。
10、RAID7:優(yōu)化的高速數(shù)據(jù)傳送磁盤結(jié)構(gòu)
RAID7所有的I/O傳送均是同步進(jìn)行的,可以分別控制,這樣提高了系統(tǒng)的并行性,提高系統(tǒng)訪問數(shù)據(jù)的速度;每個(gè)磁盤都帶有高速緩沖存儲器,實(shí)時(shí)操作系統(tǒng)可以使用任何實(shí)時(shí)操作芯片,達(dá)到不同實(shí)時(shí)系統(tǒng)的需要。允許使用SNMP協(xié)議進(jìn)行管理和監(jiān)視,可以對校驗(yàn)區(qū)指定獨(dú)立的傳送信道以提高效率。可以連接多臺主機(jī),因?yàn)榧尤敫咚倬彌_存儲器,當(dāng)多用戶訪問系統(tǒng)時(shí),訪問時(shí)間幾乎接近于0。由于采用并行結(jié)構(gòu),因此數(shù)據(jù)訪問效率大大提高。需要注意的是它引入了一個(gè)高速緩沖存儲器,這有利有弊,因?yàn)橐坏┫到y(tǒng)斷電,在高速緩沖存儲器內(nèi)的數(shù)據(jù)就會全部丟失,因此需要和UPS一起工作。當(dāng)然了,這么快的東西,價(jià)格也非常昂貴。
11、RAID10:高可靠性與高效磁盤結(jié)構(gòu)
這種結(jié)構(gòu)無非是一個(gè)帶區(qū)結(jié)構(gòu)加一個(gè)鏡象結(jié)構(gòu),因?yàn)閮煞N結(jié)構(gòu)各有優(yōu)缺點(diǎn),因此可以相互補(bǔ)充,達(dá)到既高效又高速的目的。大家可以結(jié)合兩種結(jié)構(gòu)的優(yōu)點(diǎn)和缺點(diǎn)來理解這種新結(jié)構(gòu)。這種新結(jié)構(gòu)的價(jià)格高,可擴(kuò)充性不好。主要用于數(shù)據(jù)容量不大,但要求速度和差錯控制的數(shù)據(jù)庫中。
12、RAID53:高效數(shù)據(jù)傳送磁盤結(jié)構(gòu)
越到后面的結(jié)構(gòu)就是對前面結(jié)構(gòu)的一種重復(fù)和再利用,這種結(jié)構(gòu)就是RAID3和帶區(qū)結(jié)構(gòu)的統(tǒng)一,因此它速度比較快,也有容錯功能。但價(jià)格十分高,不易于實(shí)現(xiàn)。這是因?yàn)樗械臄?shù)據(jù)必須經(jīng)過帶區(qū)和按位存儲兩種方法,在考慮到效率的情況下,要求這些磁盤同步真是不容易。
RAID技術(shù)的應(yīng)用
DAS--direct access storage device直接訪問存儲設(shè)備DAS是磁盤存儲設(shè)備的術(shù)語,以前被用在大、中型機(jī)上。使用在PC機(jī)上還包括硬盤設(shè)備DAS的最新形式是RAID。“直接訪問”指訪問所有數(shù)據(jù)的時(shí)間是相同的。NAS--Network Attached Storage網(wǎng)絡(luò)附加存儲設(shè)備一種特殊目的的服務(wù)器,它具有嵌入式的軟件系統(tǒng),可以通過網(wǎng)絡(luò)對個(gè)種的系統(tǒng)平臺提供文件共享服務(wù)。SAN--Storage Area Networks存儲區(qū)域網(wǎng)一種高速的專用網(wǎng)絡(luò),用于建立服務(wù)器、磁盤陣列和磁帶庫之間的一種直接聯(lián)接。它如同擴(kuò)展的存儲器總線,將專用的集線器、交換器以及網(wǎng)關(guān)或橋路互相連接在一起。SAN常使用光纖通道。一個(gè)SAN可以是本地的或者是遠(yuǎn)程的,也可以是共享的或者是專用的。SAN打破了存儲器與服務(wù)器之間的束縛,允許獨(dú)立地選擇最佳的存儲器或者是最佳的服務(wù)器,從而提高可擴(kuò)性和靈活性。
混合RAID混合RAID是一種冗余存儲解決方案,采用高容量低成本的SATA或者高性能SAS硬盤與低延遲高IOPs的固態(tài)盤,再加上SSD感知的RAID控制卡。
在混合RAID中,讀取操作在更高速的SSD中進(jìn)行,而出于冗余考慮,寫入操作則在SSD和HDD中進(jìn)行?;旌蟁AID適合于數(shù)據(jù)等級較低的應(yīng)用,例如互聯(lián)網(wǎng)網(wǎng)關(guān)、文件服務(wù)器或者虛擬機(jī)
[3] 混合RAID 的好處是什么?
混合RAID陣列的性能遠(yuǎn)遠(yuǎn)超過標(biāo)準(zhǔn)HDD RAID陣列,而且成本比純SSD RAID陣列更低。相比純HDD RAID陣列,混合陣列加速IOPS并降低延遲,使數(shù)據(jù)中心和云計(jì)算環(huán)境能夠托管更多用戶,每秒鐘在每臺服務(wù)器上執(zhí)行更多交易,減少了支持任何特定工作負(fù)載所需的服務(wù)器數(shù)量。除了服務(wù)器數(shù)量縮減會減少數(shù)據(jù)中心服務(wù)器的占地空間之外,在財(cái)務(wù)上體現(xiàn)出的好處就是降低了采購額外服務(wù)器所需的資本開支,以及供電、冷卻與維護(hù)相關(guān)的運(yùn)營開支。
混合RAID解決方案
從硬件的角度看,搭建一個(gè)混合RAID解決方案可以使用任何容量的SSD和HDD(不過SSD和HDD的數(shù)量必須相同)。如果這個(gè)RAID陣列使用容量不同的驅(qū)動器,那么驅(qū)動器容量就是更小的那個(gè)。例如, 一個(gè)RAID 1 使用1個(gè)128GB SSD和2TB HDD,那么邏輯設(shè)備就是128GB。一個(gè)RAID 10使用2個(gè)128GB SSD和2個(gè)2TB HDD,邏輯設(shè)備就是256GB。剩下的HDD容量可用于存儲。
不過,從應(yīng)用的角度看,因?yàn)榇蠖鄶?shù)軟件并不能識別出采用兩種有著不同特點(diǎn)的存儲的可能性。為了充分利用混合RAID,必須部署一種具有智能存儲處理能力、SSD感知的RAID控制卡。Adaptec 6系列、5Z系列、5系列、2系列和Q系列控制卡經(jīng)過最新的固件升級之后, 可以很好地利用剩余容量,自動創(chuàng)建一個(gè)混合RAID陣列,將1個(gè)或者多個(gè)SSD與相同數(shù)量的HDD做成RAID 1或者RAID 10陣列。這個(gè)混合RAID陣列對于操作系統(tǒng)和所有運(yùn)行中的應(yīng)用都是透明的。此外,Adaptec控制卡通過向HDD和SSD的寫入、100%從SSD讀取,提供了最高的混合陣列性能(見右圖Adaptec混合RAID解決方案)。
Adaptec混合RAID陣列提供了比標(biāo)準(zhǔn)HDD陣列更高的IOPs性能,同時(shí)寫I/O性能也沒有降級,見下圖-IOMeter原始性能。
一些應(yīng)用甚至看到了通過Adaptec混合RAID獲得的少量性能優(yōu)勢,并且混合RAID 1速度比單個(gè)SSD更快,見下圖-AS SSD應(yīng)用性能。
軟 RAID 和硬 RAID 各有什么優(yōu)劣?
Raid 1+0 軟硬raid 差別不大,甚至硬raid控制器的吞吐量不如x86的系統(tǒng),從而吞吐量會比不上軟Raid。
Raid 5,6則是硬raid完勝。why?
?。ó?dāng)然這個(gè)前提不包括Solaris ZFS文件系統(tǒng),以及使用Linux 3.09之后的內(nèi)核的相關(guān)系統(tǒng))
簡單通過Raid5來進(jìn)行比較。Raid 5基本原理是異或運(yùn)算來實(shí)現(xiàn)。
XOR (0, 1) = 1
XOR (1, 0) = 1
XOR (0, 0) = 0
XOR (1, 1) = 0
硬盤1 硬盤2 硬盤3
| 101 | 010 | 011 |
XOR (101, 010, 011) = 100
過程如下:
XOR (101,010) = 111 , XOR (111, 011) = 100
校驗(yàn)盤P
| 101 | 010 | 011 | 100 |
| 101 | 掛了 | 011 | 100 |
還原010
XOR (101, 011, 100) = 010
當(dāng)然實(shí)際過程比這個(gè)要復(fù)雜的多的多。
Raid 5讀寫數(shù)據(jù)流程是,讀寫也是基于Raid stripe size, 相當(dāng)于是一個(gè)數(shù)據(jù)快是Raid最小基礎(chǔ)單元。像人體細(xì)胞一樣。
Raid5 寫一份數(shù)據(jù),需要下列操作,普通硬盤只要1次寫操作。
控制器讀取舊的數(shù)據(jù)塊,
讀取舊的校驗(yàn)塊。
并和新計(jì)算出來的進(jìn)行比對,如果有修改,則要改寫舊塊為新塊(數(shù)據(jù)快和校驗(yàn)塊)。
如果只是同等內(nèi)容修改,沒有用到新的塊。就到此為止了。
簡單的例子是,我新建一個(gè)文本文檔,只有一個(gè)字符A,沒有空格,空行,tab。我修改A為B,然后保存,文件大小是不變的。如果我把A改成兩個(gè)字母“AB”,再保存。相當(dāng)于申請新的空間來保存另外一個(gè)字符B。(此例子只能用來理解,不能代表100%Raid控制器和文件系統(tǒng)是這樣存儲數(shù)據(jù))
如果有追加的數(shù)據(jù)
則還要寫入新的數(shù)據(jù)塊和新的校驗(yàn)塊。這一段參考wiki,但是它沒有寫出追加和修改的區(qū)別,我這里寫出來了。
所謂硬件Raid控制器也是一套私有系統(tǒng),自己的CPU,內(nèi)存,以及存儲數(shù)據(jù)的單元。只是很小,根據(jù)LSI的文檔,同一代高中低端的芯片也是這樣劃分的。根據(jù)CPU,內(nèi)存頻率,當(dāng)然也有軟件算法升級和以及某些功能license。其實(shí)和intel,nvidia沒啥區(qū)別。
注意cache的速度比硬盤快很多。100倍或更多。當(dāng)然和硬件有關(guān)。
硬件raid控制器優(yōu)勢,有電池或者SLC的SSD來對cache進(jìn)行保護(hù)。(不清楚有沒有無良廠商使用MLC的),相當(dāng)于給你的臺式機(jī)內(nèi)存加裝電池,或者類似win7的關(guān)機(jī)休眠功能,關(guān)機(jī)后,內(nèi)存仍可以得到供電。重新開機(jī)后,打開的程序都還在。所以有了電池或者SSD作為cahce,所以硬件raid控制器可以把上述Raid5頻繁讀寫操作往cache里面塞,主要針對讀寫量不連續(xù)磁盤塊的寫操作和以及校驗(yàn)操作,如果夠大的話,會預(yù)讀一部分校驗(yàn)數(shù)據(jù)到緩存里面。順序讀寫磁盤速度是可以接受的(相對來說,極少磁盤額外尋道時(shí)間)。所以,我寫10次校驗(yàn)數(shù)據(jù)不連續(xù)的寫操作,可能都是寫到帶電池的高速緩存中,同樣連續(xù)的寫操作,cache會保存校驗(yàn)數(shù)據(jù),但是個(gè)人覺得連續(xù)寫操作不經(jīng)過cache效率會更高。
同樣,軟raid,控制調(diào)度是OS內(nèi)核,Xeon E5 E7怎么都比Power 800要牛B的多吧,注意注意,高速cache不是內(nèi)存哦。因?yàn)槟愕姆?wù)器內(nèi)存木有電池哦,所以軟Raid則會使用同步IO操作(帶fsync, O_SYNC標(biāo)志的操作)。結(jié)果就是相當(dāng)于沒有內(nèi)存,因?yàn)槊看我却疟P確認(rèn)響應(yīng),相當(dāng)于你把你的硬Raid控制器調(diào)整為write through模式。相當(dāng)于你的Raid沒有那塊高速cache。
于是,校驗(yàn)寫一次,雖然經(jīng)過內(nèi)存,但是kernel要求要求軟raid驅(qū)動給一個(gè)數(shù)據(jù)寫入的確認(rèn),軟raid驅(qū)動會把這個(gè)請求仍給硬盤,要求我(軟raid驅(qū)動)剛才寫入1,2,3,4號盤的數(shù)據(jù)是不是都寫入了。如果寫入了給一個(gè)確認(rèn)。它會等到最后才執(zhí)行完的那塊硬盤給出確認(rèn)后,再回復(fù)kernel,啊,數(shù)據(jù)寫完了。
廢話這么多,硬件raid可以在高速緩存中合并非連續(xù)寫和校驗(yàn)寫為連續(xù)的寫操作。
軟件raid則要確認(rèn)每一次數(shù)據(jù)和校驗(yàn)寫是否都寫入到磁盤上去了,還要額外附加一些讀操作,7200或者15000的磁頭要轉(zhuǎn)啊轉(zhuǎn),延時(shí)啊。
所以軟Raid用來做Raid 1+0 或者Raid 1是和硬件Raid沒有太多區(qū)別,可能性能會更好。
但是用來做有校驗(yàn)的Raid 4,5,6. 則會導(dǎo)致寫性能瓶頸。
當(dāng)然如果你做Raid4,校驗(yàn)盤用一塊同容量SSD來替代,也是不錯的。哈哈。
在來一個(gè)例子理解,比如軟raid要出差,目前在帝都北京,但是明天要去武漢,后天又要回北京,最后還要去深圳,去完了還要返回北京,客戶都約好了,不能改時(shí)間。
但是硬raid比較靈活,提前和客戶排好了班,先去深圳,再去武漢,最后回北京。
雖然OS自己有自己的IO調(diào)度隊(duì)列,但是被fsync,O_SYNC這種同步IO標(biāo)志限制了,沒辦法必須寫到此盤,因?yàn)闆]有帶電池的內(nèi)存。(不帶電存儲的高速cache)
但是Linux 3.09之后,情況不是這樣了,3.09引入dm-cache,3.10引入bcache
簡單而言,就是可以使用一個(gè)block device塊設(shè)備,作為另一個(gè)塊設(shè)備的write back cache。
也就是說,我用一塊高速SSD + 若干的硬盤做軟raid,也有高速寫cache了。
硬件raid慢慢要失去優(yōu)勢了。后續(xù)我也看好btrfs加入raid5,6的支持,當(dāng)然在沒有raid7,8出現(xiàn)的情況下。
之前還提到了Sun的存儲,Sun有一個(gè)系列Sun ZFS Storage
為什么Sun的SAN存儲都是軟Raid + SSD,就可以實(shí)現(xiàn)和硬Raid匹敵的速度呢?
因?yàn)閆FS里面或者說Solaris內(nèi)核里面,早就實(shí)現(xiàn)了linux 3.10的bcache的功能。
所以SUN真是先驅(qū)者。確認(rèn)了用更廉價(jià)的硬件是可以搭建出和硬件raid匹敵的硬件。
本人非硬件驅(qū)動,電子電路工程師,少部分只是看程序YY的答案,回答難免有誤。
歡迎大嬸指正。
vSAN 6. 2引入了2種新的RAID類型:第一個(gè)是RAID-5,第二個(gè)是RAID-6。當(dāng)虛擬機(jī)存儲策略中的容錯方法(failure toleranc...
2017-10-30 標(biāo)簽:raid虛擬機(jī)分布式儲存技術(shù) 2.3萬 0
什么是raid0、raid1、raid5、raid10?需要幾塊硬盤?
我們在做監(jiān)控項(xiàng)目存儲時(shí),經(jīng)常會用到磁盤陣列,什么是磁盤陣列呢?那為什么要做磁盤陣列呢?用什么樣的磁盤陣列合適呢?前幾天在我們?nèi)蹼奦IP技術(shù)群中也討論到。
磁盤陣列的優(yōu)缺點(diǎn)及日常維護(hù)注意事項(xiàng)
磁盤陣列(RAID)是由很多塊獨(dú)立的磁盤,組合成一個(gè)容量巨大的磁盤組,利用個(gè)別磁盤提供數(shù)據(jù)所產(chǎn)生加成效果提升整個(gè)磁盤系統(tǒng)效能。利用這項(xiàng)技術(shù),將數(shù)據(jù)切割成...
存儲設(shè)備那點(diǎn)事:什么是RAID?RAID的等級
在說RAID3之前,先往回倒個(gè)三言兩語。前面的RAID0和RAID1的插圖中,每個(gè)硬盤都畫了一些小格子,保存A、B或A1、A2等。劃分這些小格子的行為稱...
磁盤陣列(RAID)技術(shù)在視頻監(jiān)控應(yīng)用的問題與發(fā)展
視頻監(jiān)控網(wǎng)絡(luò)化步伐已全面展開,大量的監(jiān)控?cái)?shù)據(jù)被保存在安裝硬盤的NVR、IP-SAN中,眾所周知,目前大容量硬盤都屬于精密機(jī)械部件,本身故障多發(fā),屬于易耗...
2013-06-27 標(biāo)簽:視頻監(jiān)控RAIDSmart RAID技術(shù) 6678 0
探討一下在2018年數(shù)據(jù)中心這些存儲趨勢的細(xì)節(jié)
在過去的2017年中,傳統(tǒng)SAN設(shè)備的衰落隨著企業(yè)組織紛紛對超融合基礎(chǔ)設(shè)施、純軟件解決方案和固態(tài)硬盤的興趣大漲而抵消。在新的2018年,整個(gè)業(yè)界將繼續(xù)以...
RAID卡上內(nèi)置處理器,不需要服務(wù)器的CPU運(yùn)算。優(yōu)點(diǎn)是讀寫性能最快,不占用服務(wù)器資源,可用于任何操作系統(tǒng),也能在系統(tǒng)斷電后,通過備份電池模塊(BBU,...
記得在SSD沒有普及之前,想把當(dāng)年電腦中的大短板磁盤性能補(bǔ)上來,就只能靠Raid(磁盤陣列)了。相同容量和性能的機(jī)械硬盤疊加在一起雖然達(dá)不到讀寫翻倍的效...
RAID 0的組建其實(shí)比較簡單.不過對于普通用戶來說,在組建RAID 0之前。有不少東西還是必須得知道的,否則不能發(fā)揮出RAID0的性能
JMicron JMB36X RAID Controller立即下載
類別:Intel/英特爾主板驅(qū)動 2010-01-29 標(biāo)簽:RAIDCont
服務(wù)器到底應(yīng)該使用那些類型的RAID陣列立即下載
類別:通信網(wǎng)絡(luò) 2020-05-15 標(biāo)簽:RAIDSSDHDD
類別:射頻無線論文 2017-11-08 標(biāo)簽:虛擬化技術(shù)raid安防云存儲
類別:通信網(wǎng)絡(luò) 2008-11-11 標(biāo)簽:RAID磁盤陣列
SATA RAID控制器5.20A版驅(qū)動下載立即下載
類別:VIA/威盛主板驅(qū)動 2010-04-12 標(biāo)簽:SATARAID
隨著NVMe固態(tài)硬盤的普及,RAID0距離DIY發(fā)燒友漸行漸遠(yuǎn)。不過相信各位朋友手中還有大量SATA接口的硬盤仍在服役當(dāng)中,RAID1/5依然有不小的使...
服務(wù)器硬盤組成的RAID陣列IO讀寫性能低,不符合要求。
如何配置RAID磁盤陣列 注意:請預(yù)先備份您服務(wù)器上的數(shù)據(jù),配置磁盤陣列的過程將會刪除您的硬盤上的所有數(shù)據(jù)! 一、 為什么
選擇軟件窗口中的所有陣列成員磁盤,然后單擊所需的RAID類型來運(yùn)行恢復(fù)。就我而言,它是RAID5。您應(yīng)該選擇RAID類型。
2019-10-14 標(biāo)簽:RAID 7362 0
以往的大容量存儲,一個(gè)很大的問題就是噪音太大,嚴(yán)重影響工作時(shí)的心情。而ARC-8050T3-SAN卻沒有這個(gè)弊端,它采用了超靜音模式來改善工作環(huán)境,帶來...
磁盤陣列是由很多廉價(jià)的磁盤,組合成一個(gè)容量巨大的磁盤組,利用個(gè)別磁盤提供數(shù)據(jù)所產(chǎn)生加成效果提升整個(gè)磁盤系統(tǒng)效能。利用這項(xiàng)技術(shù),將數(shù)據(jù)切割成許多區(qū)段,分別...
美高森美擴(kuò)展存儲適配器解決方案 再度增強(qiáng)靜態(tài)數(shù)據(jù)安全性
Adaptec SmartRAID系列中的新型產(chǎn)品為企業(yè)存儲提供全新級別的解決方案集成和增強(qiáng)的靜態(tài)數(shù)據(jù)安全性。
群暉DSM 7.0正式發(fā)布:RAID性能提升70% 換硬盤無需停服
12月7日晚,群暉舉辦2021線上大會,帶來了全新升級的DSM 7.0,并優(yōu)化了數(shù)據(jù)管理解決方案。 為了減少權(quán)限申請流程,群暉推出二級權(quán)限,可以將部分權(quán)...
隨著互聯(lián)網(wǎng)的發(fā)展,數(shù)據(jù)安全已成為企業(yè)不可避免的一個(gè)問題,其中服務(wù)器的數(shù)據(jù)安全更為重要,而服務(wù)器的陣列選擇是保護(hù)數(shù)據(jù)的一個(gè)方法,那么該怎么去選擇呢?
編輯推薦廠商產(chǎn)品技術(shù)軟件/工具OS/語言教程專題
電機(jī)控制 | DSP | 氮化鎵 | 功率放大器 | ChatGPT | 自動駕駛 | TI | 瑞薩電子 |
BLDC | PLC | 碳化硅 | 二極管 | OpenAI | 元宇宙 | 安森美 | ADI |
無刷電機(jī) | FOC | IGBT | 逆變器 | 文心一言 | 5G | 英飛凌 | 羅姆 |
直流電機(jī) | PID | MOSFET | 傳感器 | 人工智能 | 物聯(lián)網(wǎng) | NXP | 賽靈思 |
步進(jìn)電機(jī) | SPWM | 充電樁 | IPM | 機(jī)器視覺 | 無人機(jī) | 三菱電機(jī) | ST |
伺服電機(jī) | SVPWM | 光伏發(fā)電 | UPS | AR | 智能電網(wǎng) | 國民技術(shù) | Microchip |
Arduino | BeagleBone | 樹莓派 | STM32 | MSP430 | EFM32 | ARM mbed | EDA |
示波器 | LPC | imx8 | PSoC | Altium Designer | Allegro | Mentor | Pads |
OrCAD | Cadence | AutoCAD | 華秋DFM | Keil | MATLAB | MPLAB | Quartus |
C++ | Java | Python | JavaScript | node.js | RISC-V | verilog | Tensorflow |
Android | iOS | linux | RTOS | FreeRTOS | LiteOS | RT-THread | uCOS |
DuerOS | Brillo | Windows11 | HarmonyOS |