Data Domain的儲存容量最佳化技術(COS,Capacity Optimized Storage)透過壓縮的原理,藉由拆解與比對資料內容,可大幅縮減備份媒體所需的容量。

COS會將資料切割為Segment(資料區段),透過Data Domain專利的演算法分析各Segment資料的特徵值,並與已有資料的特徵值比對,只儲存新增或更動的資料,從而大幅降低資料對儲存空間的需求。

COS的原理
COS是一項針對硬碟的備份儲存解決方案,其關鍵在於Data Domain所謂的「整體壓縮(Global Compression)」技術。整體壓縮的原理與傳統的無失真資料壓縮技術相似,都是針對資料中的重複部分,透過特定的演算法去除資料中因重複而造成的冗餘,用較少的容量來表示與原始資訊等價的訊息內容。

一般的資料壓縮在消除冗餘重複資料的作用方面都是離散的,去除冗餘資料的效果只及於該次壓縮的資料。舉例來說,若對某硬碟中的資料每日均以壓縮方式進行備份,雖然每次壓縮都能去除資料中的冗餘部分,但考慮到一般環境下儲存系統的資料異動量並不大,所以兩次壓縮的資料內容之間仍會有許多重複之處。

而整體壓縮的特殊之處在於其壓縮效果可擴及「整體」,不像傳統壓縮技術只針對該次壓縮的資料進行演算。其運作步驟如下:

(1)分解資料,求出特徵值
先把資料分解成4~16kB大小的Segment,對每個Segment以特殊的演算法求出其特徵值。

(2)分析、比對資料特徵值
透過特徵值的比對即可判定哪些Segment的資料為重複,哪些沒有重複,重複的Segment將會被去除,剩餘Segment則成為基本元素。另外並生成一個索引以記載原先各Segment資料的組成結構。

(3)將資料分解成基本元素
去除重複的Segment,留下來的Segment即成儲存的基本元素。透過記錄資料結構的索引以及基本元素,系統即可將壓縮後的資料還原為原始資料。

前述步驟的原則與一般壓縮差不多,整體壓縮的關鍵之處是在於第2次以後的壓縮。第1次壓縮後的資料會以特定方式存放於硬碟上,當執行第2次以後的壓縮時,系統除了會比對後續壓縮所得出的特徵值外,還會與已儲存在硬碟中前幾次壓縮所得到的資料作特徵值比對,並只留下與已有資料不同的新資料。為提高壓縮效果,系統會在彈性調整Segment大小(平均8kB),以求得出最好的特徵值比對效果。

由於一般企業作業環境中的資料異動量不高,每次執行備份時其實都儲存了許多重複的資料。而整體壓縮只會儲存有變動的資料,若以未壓縮的原始資料量為基準,在以整體壓縮執行多次壓縮時,執行越多次後的壓縮率就會越高。

與其他節省容量技術比較
COS的最大特色就是在於節省儲存空間,廠商宣稱最高可達到20:1以上的壓縮率,目前雖然也有其他方式可以節省儲存容量,如一般的壓縮或增量備份等,但這些方式都沒辦法達到COS的壓縮效率。

>>COS vs.一般壓縮
COS使用的是整體壓縮,而一般壓縮則是屬於區域(local)壓縮技術。兩者間最大不同之處在於,整體壓縮在比對、判定冗餘資料時,會把過去所有以整體壓縮處理過的資料再提取出來與新增資料作比對,而一般壓縮則不處理過去的資料,只針對本次壓縮的資料進行壓縮運算,因此兩者間在壓縮率方面的差異很大。一般的不失真壓縮技術平均只能達到2:1的壓縮率,而整體壓縮則能達到7:1或更高的壓縮率。

>>COS vs. 增量備份
傳統上以第1次完全備份(Full Backup)+後續增量備份(incremental Backup)的方式,是最節省儲存空間的一種備份方式。在第1次的完全備份執行過後,後續的增量備份都只會備份異動或是新增的資料,理論上也能達到降低儲存容量的效果。

但上述的關鍵在於增量備份是一種以檔案(file)或區塊(block)為基礎的作業,其判定資料是否異動的基準是檔案屬性中的保存位元(Archive bit)值,或是區塊中特定位元值,備份的單位是檔案或是區塊。增量備份雖然只會備份異動部分的檔案或區塊,但從「低於」檔案或區塊的層級來檢視資料,可以發現在每次增量備份所備份的資料中,或是多次增量備份的資料之間,仍然存在有許多重複的位元,但增量備份只能以整個檔案或區塊為單位來運作,而不能去除這些重複的部分,無形間就耗損了不少儲存空間在這些可被視作冗餘的資料上。

COS就不會有這種問題,它會對備份資料進行低於區塊(sub-block level)層級的檢視,其整體壓縮演算法會以4~16kB為單位,動態的調整拆解資料進行分析的Segment大小,以得到最好的冗餘判定效果。因此不管是單次備份或多次備份間的冗餘資料,都能被COS所剔除,從而節省更多的空間。在一般的作業環境下,由於資料的異動量有限,多次備份間彼此重複的冗餘資料其實相當多,因此以整體壓縮作越多次備份後,得到的壓縮率就會越高。

COS的實際運作
COS技術是源自於普林斯頓大學電腦科學學院教授李凱(Kai Li)關於資料壓縮演算法的論文(李凱也是Data Domain的3位創辦人之一),目前商業化的COS產品均為軟、硬體合一的應用程式伺服器(Appliance),基本上就是一臺磁碟陣列控制器,內含8~16臺硬碟,由DD OS(Data Domain OS)負責資料I/O控制與整體壓縮處理。其安裝相當簡單,只要把這臺磁碟陣列控制器裝上機架,並以乙太網路接上備份伺服器,再於備份軟體中將Data Domain的COS機器設為備份儲存媒體即可。

運作時COS機器從備份伺服器接收備份軟體所傳過來的資料,經DD OS以整體壓縮處理後,再放到機器內含的硬碟。整體壓縮與原始資料的格式無關,備份伺服器端所看到的資料仍是原來的狀態,對備份軟體來說,Data Domain的COS機器只是1臺大容量的磁碟而已。需要還原資料時則由備份軟體發出指令,DD OS收到指令後會從硬碟中將指定的資料取出,組回原來的格式與結構,再送回備份伺服器,所有的壓縮與解壓縮作業都是由後端的DD OS負責,與前端的備份軟體無關。

COS的限制:效能與應用環境
COS雖有大幅縮減儲存空間的效果,但其整體壓縮的演算顯然也是要付出相當的代價,以致限制了COS的應用。主要的限制有2點:

>>效能限制—不支援即時讀寫環境
由於多了COS的整體壓縮演算必然會影響到系統的I/O效能,不過目前Data Domain的COS功能都是透過Appliance的方式來實現,對系統效能的影響較低,以目前實測中的表現來看,COS的壓縮演算在Gbps的網路環境下,雖還不至於成為系統效能上的瓶頸,但也因此而不適於即時環境的應用,也就是說不能把COS產品當作一般的磁碟或網路儲存裝置(NAS)來使用,這並不是COS產品的定位所在。

>>應用環境限制—僅支援備份軟體下的作業
除了壓縮演算會影響系統效能外,由於COS的整體壓縮需要比對已存放在硬碟中的舊壓縮資料,因此在DD OS所控制的磁碟空間中,壓縮資料都是以Data Domain鎖定義的特殊格式排列,以便DD OS進行特徵值比對。所以DD OS控制的磁碟空間是不對外開放的,不允許其他程式或檔案系統讀寫這塊磁碟空間,因此也不能支援一般檔案系統的資料即時讀寫。

為簡化問題,Data Domain將COS的應用範圍限制在備份的應用上,只能在備份軟體下作業,COS機器也只能做為備份軟體下的一個儲存媒體,而不能當作一般的磁碟陣列使用。備份軟體對COS機器的讀寫要求都是透過DD OS來進行,也就是說DD OS會把備份軟體隔絕在機器外,COS機器對備份軟體來說是個黑箱,備份軟體並不知道其送給COS機器的資料已經過壓縮處理。

不過Data Domain的產品能夠支援市場上絕大部分的備份軟體,可適應大部分用戶的儲存環境,一定程度減緩了這個問題。

COS的效益—大幅降低儲存空間的消耗
壓縮資料、減少儲存空間損耗是COS的最大賣點。由於目前SATA硬碟的售價不斷降低,就中小企業或個人端來說,對儲存空間需求較小,最多不過幾百GB到1~2TB而已,硬碟的購置費用還不會成為非常大的負擔,因此不能感受到COS所帶來的效益。

但對儲存容量需求達數十甚至上百TB以上的中大型企業來說情況就不同了,1套8TB的磁碟陣列售價就超過40萬元,20~30TB以上的機種售價更超過百萬元。若能透過COS以容量較小實體硬碟來滿足較高儲存容量的需求,無形間也就等同於節省了數十萬元的硬碟購置費用。

除了在備份軟體下當作一個儲存媒體使用外,COS產品也十分適合作為虛擬磁帶櫃(VTL)之類磁碟到磁碟再到磁帶(D2D2T)的應用環境。在D2D2T環境中,作為前端磁碟與後端磁帶緩衝的中介磁碟容量,決定了將資料從磁碟轉移到磁帶上的頻率。顯然的,緩衝的中介磁碟容量越小,用戶就必須更頻繁的執行媒體轉移的工作,由於磁帶是屬於離線作業的媒體,若用戶的資料量很大,將資料轉移到磁帶上所需的作業時間可能過長。因此較理想的做法是把D2T的轉移時間挪到周末來進行,但這也就表示:作為前端磁碟與後端磁帶設備中介緩衝的硬碟容量必須能滿足5日以上的需求,在資料量很大的情況下,用戶必須選用高容量的磁碟陣列才能應付,但高容量的磁碟陣列耗費龐大,因此若改用具備COS技術的裝置,顯然就能在不擴充實體硬碟的情況下,大幅提昇中介磁碟的儲存能力,節省耗費在擴充硬碟容量上的開銷。文⊙張明德

相關文章
COS實測

熱門新聞

Advertisement