1. 程式人生 > >21、【華為HCIE-Storage】--Smart dudepe & Compression

21、【華為HCIE-Storage】--Smart dudepe & Compression

HCIE storage hostman

------------------------------------重要說明------------------------------------

以下部分內容來網絡,部分自華為存儲官方教材

具體教材內容請移步華為存儲官網進行教材下載

網絡引用內容無法找到原創,如有侵權請通知

------------------------------------重要說明------------------------------------


① 定義

華為技術有限公司開發的SmartDedupe&SmartCompressoion特性又叫智能數據重刪壓縮特性。

SmartDedupe&SmartCompression特性包含重

復數據刪除和數據壓縮兩種特性

重復數據刪除特性( SmartDedupe)是一種數據縮減技術,通過刪除存儲系統中的冗余數據塊,減少數據占用的物理存儲容量,從而滿足日益增長的數據存儲需求。 OceanStor 5300 V3/5500 V3/5600 V3/5800 V3/6800 V3存儲系統支持的是在線重復數據刪除,即只對新寫入的數據進行重刪處理。

數據壓縮特性( SmartCompression)是指在不丟失信息的前提下,通過對數據進行重新組織,縮減數據量以減少存儲空間,提高存儲系統的傳輸、處理和存儲效率。 OceanStor 5300 V3/5500 V3/5600 V3/5800 V3/6800 V3存儲系統支持的是在線壓縮,即只對新寫入的數據進行壓縮處理。

OceanStor 5300 V3/5500 V3/5600 V3/5800 V3/6800 V3存儲系統中,只有thin LUN才支持SmartDedupe&SmartCompressoion特性,請確保SmartThin特性的License文件可用。

技術分享圖片

重復數據刪除和數據壓縮是存儲業界常用的數據縮減技術,旨在減少冗余數據占用的存儲空間,提高存儲系統的傳輸、處理和存儲效率。

技術分享圖片

ROW (Redirect On Write 重定向寫),每次寫入的數據都分配新的存儲空間來保存,不直接覆蓋之前寫入的數據, ROW LUN其實質是一個Thin LUN,只是在每次寫入數據時都按照ROW的形式實現。

重刪壓縮模塊位於文件系統模塊之下。重刪的數據塊大小和文件系統的數據塊大小保持一致( 4KB~64KB);壓縮時,會動態的根據數據塊大小選擇是否進行合並壓縮,以提高數據壓縮率。

② 相關概念

重刪數據塊大小:用於指定存儲系統進行重刪的粒度。重刪數據塊的大小與thinLUN的分配單元大小一致。根據業務需要,用戶可以在CLI( Command LineInterface)下運行create lun命令,通過grain_size參數為thin LUN設置不同的分配單元大小。

壓縮數據塊大小:用於指定存儲系統進行壓縮的粒度。存儲系統基於新寫入LUN的數據塊大小進行智能合並壓縮。

定長重刪:重刪過程中,存儲系統按照相同的重刪數據塊大小對寫入LUN的數據進行重刪。

哈希算法:校驗數據塊一致性的方法。通過該方法,可以計算出數據塊的指紋信息(指紋信息是一個固定長度的二進制數值,與人的指紋類似,可以看成是每個數據塊的唯一標識)。當多個數據塊的指紋信息一致時,存儲系統會認為這些數據塊是重復的。

逐字節比較策略:查找重復數據塊時,對哈希算法的補充校驗方法。當采用逐字節比較策略時,存儲系統除了要對比指紋,還需要逐字節比較數據塊中的數據。

l 業界重復數據刪除的類型

部署位置的不同,重復數據刪除可分為源端重復數據刪除和目標端重復數據刪除。源端重復數據刪除是先刪除重復數據,再將數據傳到備份設備。目標端重復數據刪除是先將數據傳到備份設備,存儲時再刪除重復數據。

檢查重復數據的算法不同,重復數據刪除可以分為對象/文件級和塊級的重復數據刪除。對象級的重復數據刪除保證文件不重復。塊級重復數據刪除則將文件分成數據塊進行比較。

切分數據塊方法的不同,又可分為定長塊和變長塊的重復數據刪除技術。變長塊的重復數據刪除,數據塊的長度是變動的。定長塊的重復數據刪除,數據塊的長度是固定的。

是否在線不同,可以分為在線重刪和後處理重刪。

③ 在線重刪流程

OceanStor 5300 V3/5500 V3/5600 V3/5800 V3/6800 V3存儲系統實現了在線重刪,僅對新寫入的數據進行重復數據刪除處理。對LUN開啟重復數據刪除功能後,存儲系統會將新寫入的數據塊與該LUN中原有的數據塊進行對比,如果識別出重復數據塊,存儲系統會刪除新寫入的數據塊,並將被刪除數據的存儲位置修改為存儲系統中原有數據塊的位置。

技術分享圖片

存儲系統利用哈希算法計算新寫入數據塊的指紋信息。數據塊的劃分粒度與thinLUN的分配單元大小一致,且每次重刪處理的數據塊大小保持一致,實現定長重刪。

通過指紋信息對比新寫入數據塊與原有數據塊是否重復。

– 是 => 存儲系統認為新寫入的數據塊與原有數據塊重復,刪除該數據塊,並將

該數據塊的存儲位置指向原有數據塊的存儲位置。

– 否 => 存儲系統認為新寫入的數據是一個新數據塊,將新數據塊寫入硬盤

例如, LUN中原有數據為A和B。應用服務器寫入數據塊C和數據塊D,數據塊C和數據塊D與原有數據的比較結果如表所示。采用不同的數據重刪策略時,數據重刪處理結果示意圖如圖所示。

技術分享圖片

技術分享圖片

④ 在線重刪原理-數據寫入

技術分享圖片

1、按照文件系統的寫入塊大小將待寫入的數據分割成多個長度相同的數據塊。

2、為每個待重刪的數據塊使用SHA1算法計算指紋。

3、將該指紋在系統指紋庫中進行查找比對,如果存在相同的指紋庫,則說明為重復塊,就不保存該數據;如果不存在相同的數據塊,則說明為唯一塊,需要保存該數據塊。

4、存在相同指紋之後,可以進一步比較數據是否相同,如果相同,則說明待重刪數據塊為重復塊;如果不相同,則說明該數據塊為唯一塊;對唯一塊需要申請存儲空間進行保存,在保存之前先對該數據塊執行壓縮操作。

重刪壓縮處理流程包括如下部分,數據分塊、指紋計算、指紋查找、數據壓縮/解壓縮、數據保存;其中,指紋計算、 數據壓縮/解壓縮比較消耗計算資源。為了減少重刪壓縮消耗的計算資源,將上述操作卸載到硬件加速卡上執行。

⑤ 數據壓縮原理-智能壓縮

在數據進行壓縮之前,將屬於同一壓縮對象(例如文件、LUN)的邏輯地址連續的多個數據塊合並到一起進行壓縮,以獲取更高的壓縮率。

技術分享圖片

技術分享圖片


兩種壓縮策略:Fast、Deep

a. Fast

Fast策略是系統默認使用的壓縮算法。該算法壓縮速度快,但與Deep策略相比壓縮後空間節省效率低一些。

b. Deep

Deep策略可以獲得空間節省效率的明顯提升,但壓縮和解壓需要花費更長的時間。

⑥ 重刪壓縮數據讀取流程

上層模塊將讀數據請求傳入重刪壓縮模塊,其中包含本次讀操作對應的地址及該地址對應的數據是否經過壓縮的標誌。

讀取該地址對應的數據。

如果該數據標記為經過壓縮,同時系統中存在重刪壓縮加速卡,則將該壓縮數據傳輸到該加速卡上進行解壓縮;如果加速卡不存在,則直接利用存儲系統自身的CPU進行解壓縮;將解壓縮之後的數據返回上層模塊。

如果該數據標記為未經過壓縮,則直接將該數據返回上層模塊。

⑦ 應用場景

a. 重復數據刪除應用場景

VDI( Virtual Desktop Infrastructure)應用是重復數據刪除常見的應用場景。在VDI應用中,用戶會在一臺存儲設備上創建多個虛擬鏡像,這些鏡像之間會存在大量的重復數據。當重復數據逐漸增多,存儲系統的空間將無法滿足業務運行的需求。通過使用重復數據刪除特性,將各個鏡像間重復的數據刪除,釋放存儲資源,用於存儲更多的業務數據。

b. 數據壓縮應用場景

數據壓縮處理會占用系統額外的CPU資源,存儲系統壓縮處理的數據量越大,開銷越大。

l 數據庫

數據庫是數據壓縮的最佳應用場景。數據庫中需要存儲的數據較多,許多用戶願意以存儲系統略微的業務性能影響換來65%以上的存儲空間節省。

l 文件服務

文件服務也是數據壓縮常見的應用場景。在繁忙狀態時間約占50%且數據集可壓縮率為50%的文件服務系統中,啟用數據壓縮後, IOPS( Input/Output Operations Per Second)有輕微下降。

l 工程數據、地震地質數據

工程數據、地震地質數據的特點與數據庫備份類似,這些數據的存儲格式相同,但數據間相似度較低,通過數據壓縮可以實現存儲空間節省。

⑧ SmartDedupe&SmartCompression 配置流程

技術分享圖片

技術分享圖片



21、【華為HCIE-Storage】--Smart dudepe & Compression