提到冗余保護,最容易想到的就是RAID(Redundant Arrays of Independent Disks)。它是一種把多塊獨立的物理硬盤按不同方式組合形成一個硬盤組,以此提供比單個硬盤更高的存儲性能和數據冗余的技術。該技術在服務器和存儲陣列產品中廣泛應用。
近年來,隨著固態硬盤的使用率上升,提升固態硬盤的性能和可靠性(包括壽命)一直是行業攻關的重點。RAID技術在固態硬盤內已經得到了廣泛應用。關鍵數據多副本,可以看作是RAID1保護,用戶數據更常見的則是使用性價比較高的RAID5。具體使用什么RAID級別,一般是根據實際情況進行選擇。DapuStor的HaiShen系列產品就使用RAID5技術為用戶數據提供冗余保護,提升可靠性。這里,我們就將盤內RAID5技術做一個簡單介紹。
RAID5原理
數據按條帶分布在不同位置,比如圖中A1~Ap是一個條帶,B1~Bp是另一個條帶,每個條帶中的一份數據(比如A1)叫做條帶單元。每個條帶有一份校驗數據(比如Ap),所以我們一般也稱它為N+1的RAID組。RAID5校驗計算通常采用異或(XOR)算法。現在很多主控也提供RAID5計算的硬件加速功能。
盤內RAID5條帶布局
為了保證任意時候,一個Block或者DIE損壞,不會導致數據丟失。一個RAID5條帶中的每個條帶單元最好是來自不同的Block和不同的DIE。這種我們一般稱為DIE級別的RAID冗余。跟上圖對應,比如A1數據在DIE 1的某個Block,A2數據在DIE2的某個Block。最直觀的組條帶方式就是每個DIE各選一個Block,然后每個Block的相同Page組成一個條帶。各個Block的Page組成RAID5條帶有下面幾種常見布局:
1)固定DIE的布局
在組成一個RAID組的Block中,使用一個固定DIE的Block存儲校驗(類似傳統的RAID3),但是組成不同RAID組的Block可以不同。
2)旋轉布局
組成一個RAID組的Block中,校驗不固定在某個Block上,而是有規律的旋轉變化(RAID5的旋轉布局有多種方式,此處只列舉了一種)。
不同的數據布局,會產生不同的盤內數據布局。最直觀的,順序寫后,順序讀,各個DIE或者Block上的壓力模型,在前面提到兩種布局下是不同的。
RAID5數據恢復
如果Host 讀某個Nand Page發生UNC(UNCorrectable)錯誤,這時RAID5恢復的原理是讀這個條帶內其他數據和校驗數據,進行計算,得到期望的數據。
盤內RAID的異常處理
RAID5的數據恢復依賴分條的完整性,因為故障可能發生在任何階段,所以數據恢復前必須判斷出校驗的有效性,避免恢復出錯誤數據。
典型場景1:某個Nand Block故障時,這個Block已經在一個寫完成的條帶上,此時RAID其實處于降級狀態,較優的想法是把相關條帶的數據重新放到一個健康的條帶或者重建出故障Block的數據來替換它。
典型場景2:某個Nand Block 故障時,此時還沒有數據寫入,盡量把它從RAID組的Block中剔除,選一個健康的Block替換或者讓當前RAID組從N+1保護轉換成(N-1)+1。
典型場景3:一個條帶單元的數據寫入Nand 過程中發生了Program fail,同時另一個位置的讀又遇到UNC,這些場景在DapuStor的HaiShen系列產品中都有專門處理,保障可以恢復出正確數據。
因為錯誤可能發生在任何時刻,所以其他場景這里就不一一列舉。
RAID帶來的影響
1.OP(Over Provisioning)空間降低
引入RAID后,有的Nand空間用于存儲校驗數據,間接導致用戶數據的可用OP空間降低,
因為每個條帶額外寫入了一份校驗數據,所以整個生命周期的WA會增大。
3.性能影響
前面兩點提到的OP變小,寫放大變大,其實最終也都會表現成對性能的影響。另外,一個直觀感受是順序寫和讀的過程,因為每個條帶都有一個DIE沒有提供給Host IO服務,所以性能也必定會有影響。
盤內冗余技術發展
RAID5為用戶數據提供了N+1級別的冗余保護。隨著盤內功能增強,業務對盤內可靠性要求的提高,不同成本和可靠性定位的用戶可能會需要不同冗余保護的級別。技術上還有一些更高級別的冗余保護:
1.RAID6
相比RAID5的N+1,它提供了N+2的保護。對應在SSD產品中,它當然也會帶來更大的OP損耗。
2.EC(Erasure Coding)
現在分布式存儲時代,多備份和EC相比傳統RAID是更廣泛的應用。EC算法提供了N+M的保護級別,可以有更廣闊的選擇空間。
原文標題:盤內數據冗余保護
文章出處:【微信公眾號:大普微】歡迎添加關注!文章轉載請注明出處。
責任編輯:haq
-
固態硬盤
+關注
關注
12文章
1459瀏覽量
57336
原文標題:盤內數據冗余保護
文章出處:【微信號:dputech,微信公眾號:DapuStor】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論