DoSTOR專家觀點 資料歸檔中的縮減技術及其應用

2021-08-23 13:53:39 字數 2892 閱讀 3210

dostor專家觀點:隨著資訊化技術的發展和深入,企業對資料的依賴不斷增強。與此同時,急速增長的資料量也給管理和使用都帶來了全新的挑戰。idc最新報告顯示,2023年新增資料量(281 exabyte)已經超過所有可用儲存介質總容量(264 exabyte)約6%,並預計2023年資料總量將達到2023年的10倍。面對資料的**性增長,僅僅提高系統運算能力和增加儲存介質容量已經不能滿足高速發展的各種資料應用,對高效資料縮減技術的需求已經逐步顯現出來,並且越來越迫切。

目前能夠實現資料縮減的技術主要有兩種:資料壓縮(data compression)和重複資料刪除(data de-duplication)。簡單來說,資料壓縮技術通過對資料重新編碼來降低其冗餘度(redundancy);而重複資料刪除技術則著眼於刪除重複出現的資料塊。

資料壓縮

資料壓縮的起源可以追溯到資訊理論之父夏農(shannon)在2023年提出的夏農編碼。2023年霍夫曼(huffman)提出了第一種實用性的編碼演算法實現了資料壓縮,該演算法至今仍在廣泛使用。2023年以色列數學家jacob ziv 和abraham lempel提出了一種全新的資料壓縮編碼方式,lempel-ziv系列演算法(lz77和lz78,以及若干變種)憑藉其簡單高效等優越特性,最終成為目前主要資料壓縮演算法的基礎。

lempel-ziv系列演算法的基本思路是用位置資訊替代原始資料從而實現壓縮,解壓縮時則根據位置資訊實現資料的還原,因此又被稱作"字典式"編碼。目前儲存應用中壓縮演算法的工業標準(ansi、qic、ietf、frf、tia/eia)是lzs(lempel-ziv-stac),由stac公司提出並獲得專利,當前該專利權的所有者是hifn, inc.

lzs演算法基於lz77(如圖一)實現,主要由兩部分構成,滑窗(sliding window)和自適應編碼(adaptive coding)。壓縮處理時,在滑窗中查詢與待處理資料相同的塊,並用該塊在滑窗中的偏移值及塊長度替代待處理資料,從而實現壓縮編碼。如果滑窗中沒有與待處理資料塊相同的字段,或偏移值及長度資料超過被替代資料塊的長度,則不進行替代處理。lzs演算法的實現非常簡潔,處理比較簡單,能夠適應各種高速應用。

圖一  lz77演算法示意圖

資料壓縮的應用可以顯著降低待處理和儲存的資料量,一般情況下可實現2:1 ~ 3:1的壓縮比。

重複資料刪除

在備份、歸檔等實際的儲存實踐中,人們發現有大量的重複資料塊存在,既占用了傳輸頻寬又消耗了相當多的儲存資源:有些新檔案只是在原有檔案上作了部分改動,還有某些檔案存在著多份拷貝,如果對所有相同的資料塊都只保留乙份例項,實際儲存的資料量將大大減少--這就是重複資料刪除技術的基礎。

這一做法最早由普林斯頓大學李凱教授(datadomain的三位創始人之一)提出,稱之為全域性壓縮(global compression),並作為容量優化儲存(

capacity optimized storage, cos)推廣到商業應用。目前,除了datadomain等專門廠商外,各主要儲存廠商如emc、ibm、symantec、falconstor等等也都通過收購或研發等途徑擁有了各自的重複資料刪除技術,有的還並冠以別名,如單示例儲存(single instance repository,sir)等。

重複資料刪除的實現由三個基本操作組成,如圖二。首先,待處理資料(檔案)被分割成固定或可變大小的資料塊,同時生成一張"結構圖"顯示這些資料塊怎樣組成完整的原資料(檔案);然後計算各資料塊的"指紋"(標識),並根據"指紋"確認該資料塊是否與其它資料塊相同;最後,丟棄重複出現的資料塊,並將"結構圖"作為原始資料(檔案)儲存。

圖二  重複資料刪除原理

重複資料刪除技術的關鍵在於資料塊"指紋"的生成和鑑別。資料塊"指紋"是鑑別資料塊是否重複的依據,如果不同資料塊的"指紋"相同,就會造成內容丟失,產生不可恢復的嚴重後果。在目前的實際應用中,一般都選擇md5或sha-1等標準雜湊(hash)演算法生成的資料塊的摘要(digest)作為"指紋",以區分不同資料塊間存在的差異,從而保證不同資料塊之間不會發生衝突。但是,md5,sha-1等演算法的計算過程非常複雜,純軟體計算很難滿足儲存應用的效能需求,"指紋"的計算往往成為重複資料刪除應用的效能瓶頸。

目前,各廠商對各自重複資料刪除技術的效用都有不同描述,一般都聲稱能將資料量減少到原資料的3% ~ 5%,即具有20:1 ~ 30:1的壓縮比。

資料壓縮和重複資料刪除技術都著眼於減少資料量,其差別在於資料壓縮技術的前提是資訊的資料表達存在冗餘,以資訊理論研究作為基礎;而重複資料刪除的實現依賴資料塊的重複出現,是一種實踐性技術。這兩種技術具有不同層面的針對性,並能夠結合起來使用,從而實現更高的資料縮減比例(40:1 ~ 90:1)。需要注意的是,如果同時應用資料壓縮和重複資料刪除技術,為了降低對系統的處理需求,通常需要先應用資料刪除技術,然後再使用資料壓縮技術進一步降低"結構圖"和基本資料塊的體積。

在歸檔應用中,儲存的資料主要是檔案在不同時間的各個歷史版本,版本間的差異通常並不是很大,檔案中往往有相當一部分內容並未發生改變,重複資料刪除技術因而具有較大的應用空間和效能;同時,作為有特定意義的檔案內容,使用資料壓縮技術通常也可以獲得2:1以上的壓縮比。因此,針對歸檔應用,整合重複資料刪除和資料壓縮技術將可帶來顯著且可以預期的好處,實現90%以上的整體資料量縮減。

需要注意的是,由於資料壓縮和重複資料刪除技術都系統處理能力有較高要求,為了保證整體效能,在預算允許的範圍內,應該注意選擇具有相關硬體加速的方案。目前,市場上能夠同時具有壓縮和雜湊演算法的解決方案並不多,主要由lzs演算法的專利擁有者hifn, inc提供。除了常見的標準加密和摘要演算法,hifn的安全處理器和相應加速卡基本都整合有壓縮處理能力,提供20mb/s ~ 250mb/s的處理能力。最近還專門推出了dr 250/255資料縮減加速卡,通過pci-x和pci-express介面為儲存系統提供250mb/s的資料壓縮和摘要計算加速,並能夠同時進行加密或解密處理,使系統能夠在實現資料縮減的同時,提高對資料的保護級別。據稱,hifn下一代資料縮減產品處理能力將達到1.6gb/s,並支援ieee p1619/1619.1標準的磁碟/磁帶加密,計畫將於今年下半年正式推向市場。

施耐德電氣觀點 資料中心鋰電池時代的到來

中國北京,2016年6月20日 在過去的幾年中,鋰電池技術和結構構造具有很大的進化與演變,其效能 安全性和成本都得到了顯著改善。電動汽車市場以及其他市場需求推動了鋰電池技術的重大演變,而三相ups電源也將使用鋰電池。另一方面,很多的ups供電系統仍在使用傳統的鉛酸蓄電池,其效能幾十年來幾乎沒有什麼大...

HDFS中資料節點資料塊儲存示例

資料塊在資料節點上是按照如下方式儲存的。首先是乙個儲存的根目錄 hadoop data dfs dn,如下圖所示 接著進入current目錄,如下圖所示 再進入後續的bp 433072574 192.168.1.224 1440568979639下current目錄,如下圖所示 在它下面,有乙個版本...

iOS 中資料的高效解檔和歸檔

在ios中資料的儲存,無論是儲存資料庫 sqlite 支援的資料型別有五種null,整形 int 浮點型 real 文字字串 text 二進位制資料 blob 還是存放在keychain 或者是本地 plist 的檔案 資料都以nsdata 二進位制資料 進行儲存比較好,這樣就牽扯到我們每定義乙個新...