這樣清新脫俗講解RAID技術(shù)的方式你見過咩?
最近發(fā)現(xiàn)某國外網(wǎng)友制作的一張
RAID講解圖
不得不佩服這位網(wǎng)友的奇思妙想
幾個飲水機(jī)和桶
就把復(fù)雜問題生動形象地化解了
▼▼▼
>>>>
1. Standalone:
第一張圖很好理解,我們?nèi)粘J褂玫腜C就采用這樣的數(shù)據(jù)讀取方式。數(shù)據(jù)存放在一塊硬盤里,且只有一塊硬盤,那么自然我們的數(shù)據(jù)只能從該硬盤中讀取。
>>>>
2. Hot swap:
第二張圖也不難理解,看地上那個水桶。所謂Hot swap概念上來說類似于熱備份。它的數(shù)據(jù)讀取方式類似于Standalone,唯一不同的是,有一塊備用的硬盤在時刻準(zhǔn)備著。一旦正在使用的硬盤出現(xiàn)了問題,那么備用硬盤就要及時更換上,以免造成損失。但這樣的方式也存在著一些弊端,比如硬盤更換需要時間,這對很多企業(yè)來說是致命的。
>>>>
3. Cluster:
第三個圖是什么意思呢?Cluster是集群的意思。你可以看作兩臺獨(dú)立的PC, 用戶可以到左邊的飲水機(jī)來取得數(shù)據(jù),也可以到右邊的飲水機(jī)來獲得數(shù)據(jù),但是這樣比較浪費(fèi)硬件資源,在企業(yè)級里不可能讓多臺服務(wù)器提供同樣數(shù)據(jù)和同樣服務(wù)的。
>>>>
4. RAID 0:
通常稱為帶區(qū),是利用帶區(qū)數(shù)據(jù)映射技巧的特定性能。它的優(yōu)勢就是數(shù)據(jù)的讀寫速度較快,但是沒有冗余功能,如果一個磁盤(物理)損壞,則所有的數(shù)據(jù)都無法使用。
>>>>
5. RAID 1:
是一種稱為“磁盤鏡像”的容錯配置。數(shù)據(jù)在被寫到其中一塊硬盤的同時,也被復(fù)制到另一塊硬盤中。這樣的方式可以防止硬盤損壞帶來的數(shù)據(jù)丟失,但是即使是2塊硬盤,其存儲的空間也相當(dāng)于只有一塊硬盤的大小。而且I/O傳輸速率卻無法得到改善,也就是飲水機(jī)的出水口并沒有變大或者變多。
>>>>
6. RAID 5:
分布式奇偶校驗(yàn)的獨(dú)立磁盤結(jié)構(gòu),常使用緩沖技術(shù)來降低性能的不對稱性。采取RAID 5的方式,I/O傳輸速率會得到大大的提高,而且一塊硬盤壞了也沒有關(guān)系,還有備用的其他硬盤。RAID 5的另一個好處是它允許“熱插拔”,這意味著如果陣列中的某磁盤出現(xiàn)故障,該磁盤可以與新磁盤交換而無需關(guān)閉服務(wù)器或NAS,也不必中斷正在訪問服務(wù)器或NAS的用戶。
>>>>
7. RAID 0+1:
這就是我們常說的RAID 10,也就是是RAID 1和0的組合。它結(jié)合了RAID 1的鏡像和RAID 0的帶區(qū)??商峁﹥?yōu)性能,但也很昂貴,需要兩倍于其他RAID級別的磁盤。
1
魚還是熊掌?
傳統(tǒng)用戶的容量與性能煩惱
看完上面的圖和講解,有關(guān)RAID的概念是不是就一目了然了?其實(shí)除了上面這些,RAID還有其他一些形態(tài),比如RAID 2、RAID 4、RAID 7等,不過經(jīng)過這么多年的發(fā)展,RAID的形態(tài)已經(jīng)基本固定了,主流的形式有這么幾種:RAID 10、RAID 5、RAID 6(與RAID 5類似)。
從性能的角度,由于寫懲罰的影響,RAID 10 的寫性能通常優(yōu)于RAID 5和RAID 6,因此對于性能關(guān)鍵型應(yīng)用,客戶希望底層采用RAID 10的方式。然而從磁盤利用率的維度,RAID 10的可用容量只有50%,卻也是不合算的(見下圖)。
因此面對這種魚和熊掌的難題,通常客戶會采用以下辦法:
➤ 假設(shè)客戶一共購買了11塊大小相同的硬盤(如600G 15K,標(biāo)稱隨機(jī) IOPS 180),為了獲得更好的寫入性能,取6塊硬盤構(gòu)建RAID10的組合,寫入IOPS 540,掛載給數(shù)據(jù)庫應(yīng)用,容量利用率50%,也就是1.8TB(此處忽略1024和1000的磁盤容量計(jì)數(shù)差別)。剩下的5塊硬盤構(gòu)建RAID5的組,以獲取更多的容量,寫入IOPS 225,容量2.4TB,掛載給備份應(yīng)用。
這種方式實(shí)現(xiàn)了性能與容量的平衡,但也有一些缺陷,由于切分了很多磁盤組,磁盤組之間的IO資源是無法共享的。因此作為應(yīng)對方案出現(xiàn)了資源池化的技術(shù)。
池化RAID的優(yōu)點(diǎn)顯而易見?;氐角懊娴睦?,數(shù)據(jù)庫可能在白天比較忙,備份通常在晚上工作,兩者有一個時間差,但任何一個應(yīng)用都可以使用11塊硬盤的IOPS。即使采用空間利用率高的RAID5,也有495的隨機(jī)IOPS,基本保證數(shù)據(jù)庫應(yīng)用。也有些用戶希望追求極限IOPS,因?yàn)檫@個時候的延遲會較小,他們就采用RAID 10的策略,隨機(jī)IOPS可以達(dá)到990,數(shù)據(jù)庫應(yīng)用跑的很爽,晚上跑備份也很快,只是容量會犧牲一些。
現(xiàn)在大家可以看到,磁盤塊級虛擬化解決了數(shù)據(jù)孤島的問題,均衡了所有的前端IO到磁盤。是不是看起來很完美?其實(shí)這種方式依然不能在性能和容量之間求得一個很好的平衡(無論RAID 5還是RAID 10還是會犧牲一些容量或性能)。
//
而這個問題最終被戴爾易安信SC系列獨(dú)創(chuàng)的RAID分層技術(shù)給有效解決了,魚和熊掌可以得兼!
//
2
RAID分層
讓性能與容量齊飛
簡而言之,RAID分層技術(shù)就是把來自主機(jī)的數(shù)據(jù)以RAID 10的方式寫入磁盤,然后利用內(nèi)部機(jī)制,在線完成數(shù)據(jù)到RAID 5的轉(zhuǎn)換,實(shí)現(xiàn)實(shí)際占用空間的節(jié)約。
要知道,RAID 10和RAID 5在隨機(jī)寫方面性能差異明顯,但讀性能是基本相當(dāng)?shù)?,采用這種技術(shù),讀寫性能都能達(dá)到較優(yōu)狀態(tài)。另一方面,由于把磁盤空間從RAID 10轉(zhuǎn)換為RAID 5,整體空間利用率有所提升,真正實(shí)現(xiàn)了容量和性能的平衡。
此時聰明的讀者立馬想到了一個問題,這樣做好是好,但畢竟需要一個數(shù)據(jù)遷移的過程,會不會影響前端應(yīng)用的性能呢?
答案是不會的,因?yàn)橄到y(tǒng)通常在比較空閑的時候去做這件事情,例如晚上。就算系統(tǒng)24小時都繁忙,這個任務(wù)的優(yōu)先級也是比較低的,以不影響前端主機(jī)IO為前提,并且在極端情況下,客戶還可以選擇不采用這種策略,例如將某些卷設(shè)成讀寫均為RAID 10,并非都是強(qiáng)制的。
而且在RAID 10轉(zhuǎn)化為RAID 5的過程中,系統(tǒng)還把另外兩個重要功能實(shí)現(xiàn)了,數(shù)據(jù)保護(hù)與數(shù)據(jù)縮減。這是SC系列真正巧妙的地方,所謂一箭三雕。
3
一箭三雕
遷移的過程就把大事小事都辦了
數(shù)據(jù)是企業(yè)重要的核心資產(chǎn),卻總是面臨各種各樣的風(fēng)險,例如某些心態(tài)不好的員工惡意刪除關(guān)鍵數(shù)據(jù)庫資料,或者無意間在一個錯誤的路徑下輸入了一條rm -rf,都會對數(shù)據(jù)產(chǎn)生破壞,進(jìn)而影響系統(tǒng)的正常運(yùn)行,我們會在新聞里面看到類似的事件,還有類似勒索病毒讓你的文件無法打開。
通常這個時候,我們都迫切希望有一個時光隧道,能夠快速回到故障前的狀態(tài),重新找回原來的一切。SC存儲天生就具有這種功能,稱之為數(shù)據(jù)回放,默認(rèn)的情況下至少保留7天,一旦發(fā)生故障,穿越到最近的時間點(diǎn),就能找回你的數(shù)據(jù)。如果你的數(shù)據(jù)非常重要,還可以把回放的間隔設(shè)置的很短,并且結(jié)合指針調(diào)整的技術(shù),做到細(xì)微的性能影響。
在進(jìn)行數(shù)據(jù)分層,保存回放的同時,如果客戶需要,SC存儲還能做一件事情,數(shù)據(jù)去重與壓縮。壓縮和去重的好處大家都明白,但性能的疑慮又產(chǎn)生了,畢竟需要切片,計(jì)算特征值,比對等等一系列的事情。這點(diǎn)SC存儲比較務(wù)實(shí),去重壓縮的目的是為了縮減空間,找一個空閑的時間慢慢做。數(shù)據(jù)先寫入RAID 10,然后在轉(zhuǎn)換成RAID 5的時候把這個事情一起做了。
講到這里大家都明白了,數(shù)據(jù)遷移是有開銷,但如果在遷移的時候把數(shù)據(jù)保護(hù),數(shù)據(jù)縮減這些功能一起實(shí)現(xiàn)了,那這點(diǎn)開銷就會顯得非常有價值。而且從SC存儲十多年的客戶沉淀看,并沒有因此而導(dǎo)致任何的副作用。
回到剛開始我們的討論,由于采用了獨(dú)特的RAID技術(shù),SC系列的旗艦產(chǎn)品SC9000能夠在延遲小于1ms的情況下實(shí)現(xiàn)200萬的IOPS;而且采用了RAID分層,壓縮去重等數(shù)據(jù)縮減技術(shù),又大大了節(jié)約了磁盤空間,降低了總體擁有成本。數(shù)據(jù)回放(快照)在性能影響小的情況下保留了用戶的多個數(shù)據(jù)副本,保護(hù)了用戶數(shù)據(jù)的邏輯故障。而且為了提升可用性,SC系列能夠?qū)崿F(xiàn)原生的存儲雙活,用存儲節(jié)點(diǎn)冗余的方式避免了設(shè)備的單點(diǎn)故障。
此外,傳統(tǒng)存儲的擴(kuò)容和升級換代也是一個讓用戶頭疼的問題,很多情況下用戶需要申請停機(jī)窗口,把老存儲的數(shù)據(jù)遷移到新的存儲上,再重新啟動業(yè)務(wù)。而SC系列擁有的在線遷移的功能,能夠在新老存儲節(jié)點(diǎn)間在線遷移數(shù)據(jù),而不影響前端的業(yè)務(wù)運(yùn)行。在可管理性方面,SC系列存儲有基于HTML5的Web管理方式,DSM軟件專有管理方式,CloudIQ云管理方式,除了日常的維護(hù)之外,還能夠提供咨詢建議,實(shí)現(xiàn)人工智能的運(yùn)維。
SC存儲助您數(shù)據(jù)安全無憂
在我走訪的SC客戶時,經(jīng)常會聽到客戶有這樣的感慨:原來還有這樣的功能啊,早知道上一次我們就不需要從備份里面恢復(fù)數(shù)據(jù)了。
是的,作為一款軟件定義的存儲產(chǎn)品,SC系列的功能是非常多的,并且依然在不斷豐富中,滿足您各種工作負(fù)載的需求,助您安全無憂的管理核心數(shù)據(jù)!
▲點(diǎn)戴爾易安信SC系列
相關(guān)閱讀推薦:三年多啦,那么多IT人還沒有搞定這個問題