打破備份的周期限制——連續資料保護技術CDP

傳統的備份作業都是藉由時間點來作為啟動複製或快照動作的機制,因此當使用者需要還原時,資料所能回復的狀態也會受到備份周期設定的限制,使用者只能還原到啟動備份作業的那幾個時間點。

而連續資料保護(Continuous Data Protection,CDP)技術則是以系統的I/O活動來作為啟動機制,透過持續的捕獲、追蹤系統I/O資料流狀態,CDP可以即時的複製每個I/O寫入動作,並記錄每個動作的時間,從而完整的保存了系統的存取變動歷程。因此使用者可將資料回復到指定的任一時間點狀態,從而完全取消了備份周期的限制。

藉由CDP可為重要資料的變化提供即時與連續的保護,IT管理人員完全不再需要考慮備份設定或排程的問題。當災難發生時,基於CDP的解決方案可迅速的將資料恢復到任何一個需要的還原點,提供用戶更高的靈活性。

CDP記錄資料的每一個「瞬間」

依照儲存網路工業協會(SNIA)的定義,所謂的連續資料保護是指「連續的捕捉和保存資料狀態的變化,並將變化後的資料獨立保存在原始資料之外,從而允許將資料回復到過去任意時間點的狀態」。

傳統的備份都是以預先設定時間點的方式來執行,也就是在某個特定的時間啟動備份作業,將資料寫入另外一個儲存介質。因此當原始資料損壞,需要透過備份資料來進行還原時,也就會受到當初設定的備份周期限制,使用者只能將資料回復到某個備份執行點的狀態,在兩次備份間的檔案將無法回復。另外使用者在備份作業啟動時還必須將系統停下來,否則就會面臨「開啟中檔案(Open File)」備份的問題。

CDP最大的特色就是在於「連續」,並不是依靠設定時間來啟動,資料的每一次變化都會被CDP系統持續不斷的記錄下來,根本不考慮這些變化發生在什麼時候。當資料發生任何變化時,CDP捕獲這個變化後就會直接複製,馬上創建一個備份,因此無「備份窗口」的問題。不像傳統的備份必須等到設定的時間點到達以後才會進行備份,也無須將系統停止來進行備份。CDP還會替其保存的每個資料變化加上時間索引,因此當資料出現遺失、損壞、或者中毒等安全問題時,就能藉由時間索引將資料恢復到問題發生時間點前一刻的完好狀態。

CDP技術的類型

CDP的基本原理是「寫入時複製並附加時間標記(copy on write + time stamp)」,從設計方法或處理資料的型態來看,可分為檔案型(file-based)、區塊型(block-based)與應用型(application-based)等3類。

檔案型CDP

系統或代理程式位於檔案系統之上,可以捕獲檔案系統的事件,如檔案的創建、修改或刪除等動作。運作方式和複製差不多,當系統偵測到檔案的異動後,就會把異動的檔案複製一份,加上時間索引後送到指定的儲存地點。

區塊型CDP

系統位於實體儲存裝置或邏輯磁碟區管理層之上,而位於檔案系統之下。當資料區塊被寫入主記憶體時,寫入的資料就被CDP系統捕獲,並複製一份副本存儲到獨立地點中。

應用型CDP

與特定的應用程式整合,作為該程式的內建功能,或是利用特殊的API,以在應用程式發生變化時,賦予其連續訪問應用程式內部狀態的許可權。CDP記錄資料的每一個「瞬間

依照儲存網路工業協會(SNIA)的定義,所謂的連續資料保護是指「連續的捕捉和保存資料狀態的變化,並將變化後的資料獨立保存在原始資料之外,從而允許將資料回復到過去任意時間點的狀態」。

簡單的講,CDP技術必須具備以下幾種特性:

(1)資料的變化受到連續的捕捉與追蹤。CDP要求的資料追蹤精細度是精細到系統的每個I/O存取動作,也就是說,CDP會監控系統的每個I/O動作,每個I/O動作都會受到捕捉與追蹤。

(2)所有資料的變化歷程都被保存在一個與主存儲地點不同的獨立地點中。要特別注意的是,CDP保存的系統資料變化是完整且連續的,不是只保存某個特定時間點下的狀態,而且保存了資料在過去時間內所有因I/O寫入動作所導致的資料變化,也就是說,CDP會記著資料的每個「瞬間」。

(3)資料的還原點或說目標恢復點(Recovery Point Objectives,RPO)是任意的。從前述可知,由於CDP保存有系統在過去時間內所有的資料變化,每個時間點都被捕獲下來,並且可以成為日後還原時的還原點。因此使用者相應的可將資料回復到過去任意一個存取點的狀態。

由於CDP必須即時的捕獲並複製資料,因此必然是一種以磁碟為基礎的產品,也只有磁碟的存取速度才能滿足CDP應用的需要。

CDP與傳統備份的差異

傳統的備份都是以預先設定時間點的方式來執行,也就是在某個特定的時間啟動備份作業,將資料寫入另外一個儲存介質。因此當原始資料損壞,需要透過備份資料來進行還原時,也就會受到當初設定的備份周期限制,使用者只能將資料回復到某個備份執行點的狀態,在兩次備份間的檔案將無法回復。另外使用者在備份作業啟動時還必須將系統停下來,否則就會面臨「開啟中檔案(Open File)」備份的問題。

CDP最大的特色就是在於「連續」,並不是依靠設定時間來啟動,資料的每一次變化都會被CDP系統持續不斷的記錄下來,根本不考慮這些變化發生在什麼時候。當資料發生任何變化時,CDP捕獲這個變化後就會直接複製,馬上創建一個備份,因此無「備份窗口」的問題。不像傳統的備份必須等到設定的時間點到達以後才會進行備份,也無須將系統停止來進行備份。CDP還會替其保存的每個資料變化加上時間索引,因此當資料出現遺失、損壞、或者中毒等安全問題時,就能藉由時間索引將資料恢復到問題發生時間點前一刻的完好狀態。

CDP與遠端複製

講到CDP連續、即時的追蹤並記錄系統資料變化的特性,市場上已有的遠端複製(Replication)產品也能夠達到類似的功能,如Veritas Replication Exec、EMC MirrorView等複製軟體都可以透過同步或非同步的方式,連續不斷的將系統資料動態的複製到遠端獨立儲存裝置上。不過複製類的產品只是在遠端創建了一個與原系統一模一樣的副本而已,舊的資料狀態會被新的資料狀態所覆蓋,並沒有歷史記錄,因此不能提供多還原點選擇的功能,而只能提供一個與原始系統最新狀態完全相同的副本。也就是說,如果原始系統的資料發生錯誤或是中毒,複製軟體仍會把這些含有錯誤或是中毒的資料複製到遠端,因而遠端的副本也會含有與原始系統一樣的問題。

而CDP的不同則在於其記錄的每個資料變化都是獨立的,並含有時間索引,因此能夠提供多個連續的資料狀態點供使用者選擇。如果使用者的系統中毒,則使用者在判定中毒時間後,透過CDP產品即可像錄影帶倒帶一樣,將資料「倒回」中毒前一刻的狀態。由於CDP記錄的精細度極高,因此這個「倒回」動作甚至可精細到以秒計算,可將資料狀態還原到發生問題的前一「瞬間」。

CDP與快照

談到CDP多個還原版本選擇的特性,則現有的快照(Snapshot)技術也能提供相似的功能。透過快照技術,使用者可在極短的時間內替系統建立1個完整的備份,因此藉由多次的快照擷取,也可以達到提供使用者多個還原版本選擇的目的,增加復原時的彈性,萬一某個快照版本無法使用,使用者還有其他的快照版本可用。

目前快照軟體的擷取周期大約可以達到最高1小時1次的程度,若是以手動方式啟動,甚至可以1分鐘作1次快照,但這顯然和CDP的「連續」效果仍有非常大的差距。首先在快照啟動的那一瞬間,伺服器的檔案系統其實是被凍結的,不像CDP可以在完全不停止系統的情況下運作。因此就算快照的頻率再密集,甚至是1秒1次的快照,所保存的也只是多個磁碟靜止狀態副本,與CDP所達到的連續紀錄磁碟存取歷程相差甚遠。追根究底,快照仍是一種以時間點為啟動機制的備份技術,而CDP的啟動機制則是I/O動作,在存取非常頻繁的應用環境下,經常在1秒鐘內就會有幾千次的I/O存取動作,而CDP能捕獲每一次的I/O事件。因此就算是最密集的快照產品,所能達到的還原精細度也仍不能和CDP相比。

CDP的效益-極精細、無時間點限制的快速還原

CDP不只是一項單純的備份或是複製產品,而是一個整合了資料備份、複製與還原的綜合解決方案,透過CDP,我們可以得到以下效益:

「無備份窗口」的自動連續資料備份

用戶不需要停機進行備份作業,資料的備份在系統執行存取動作時就已自動的完成,因而消除了備份窗口。除了初始的安裝設定外,後續其餘的動作均可由CDP產品自動完成,也減輕了MIS人員的負擔。

極精細的還原選擇

用戶可將指定的資料,如單一檔案、檔案夾、邏輯磁碟區(Volumn)或應用程式(如郵件、日誌檔或資料庫)回復到過去任何一個時間點下的狀態。某些CDP產品除可讓使用者以時間點作為還原的參照基準外,也可以依照事先定義的特殊事件標記來作為還原基準。

快速的備份還原作業

由於CDP是一項以磁碟為基礎的技術,執行資料複製時是以變動的檔案或者是區塊(Block)來進行,因此只需很短的時間就能完成,而還原時也能透過高速的磁碟將資料回存到原系統中。

由於目前以磁碟為基礎的遠端複製軟體也能達到與CDP相似的即時複製與快速還原的效果,因此CDP的真正價值是在於精細、任意的還原點選擇方面,這是目前其他技術均辦不到的功能。CDP技術的類型

CDP的基本原理是「寫入時複製並附加時間標記(copy on write + time stamp)」,從設計方法或處理資料的型態來看,可分為檔案型(file-based)、區塊型(block-based)與應用型(application-based)等3類。

檔案型CDP

系統或代理程式位於檔案系統之上,可以捕獲檔案系統的事件,如檔案的創建、修改或刪除等動作。運作方式和複製差不多,當系統偵測到檔案的異動後,就會把異動的檔案複製一份,加上時間索引後送到指定的儲存地點。

區塊型CDP

系統位於實體儲存裝置或邏輯磁碟區管理層之上,而位於檔案系統之下。當資料區塊被寫入主記憶體時,寫入的資料就被CDP系統捕獲,並複製一份副本存儲到獨立地點中。

應用型CDP

與特定的應用程式整合,作為該程式的內建功能,或是利用特殊的API,以在應用程式發生變化時,賦予其連續訪問應用程式內部狀態的許可權。

區塊或檔案型的CDP產品可透過共通的底層服務,來為不同的應用程式提供資料保護,而應用型的CDP產品則只能支援特定的應用程式。理論上區塊型的CDP設計,在系統穩定性與傳輸效能方面的表現會比檔案型的產品好些,首先是基於區塊的資料存取效能會比基於檔案的方式高。其次,由於目前應用環境中已有太多的程式常駐在檔案系統上監控資料的讀寫狀態(如防毒軟體等),因此檔案型的CDP產品必須考慮到與其他程式衝突的問題。不過區塊型的CDP產品由於是在資料的底層運作,因此不能直接將資料還原至原始檔案的狀態(牽涉到與上層檔案系統配合的問題),其還原多是針對整個邏輯磁碟區(Volumn),對檔案層級必須依靠附加的檔案作業程式支援,因此較適合用於資料庫的保護或是災難復原方面。

而就應用架構方面來看,現有的CDP產品可分為主機式(Host-Base)與網路式(Network-Base)兩類:

主機式的CDP架構類似現在備份軟體常用的主/從式架構,系統以一臺CDP備份主機作控制,並在需要CDP保護的伺服器上安裝代理程式(Agent)。代理程式會監控伺服器上的磁碟I/O動作,忽略讀出的資料而捕捉寫入的資料,在寫入資料實際寫入磁碟之前先複製一份、加上時間索引後放入緩衝區,再透過網路送到CDP主機上。因此CDP主機上會保存各伺服器的資料副本。目前的主機型CDP產品均為純軟體的解決方案(當然多數廠商都會搭上配合的儲存硬體一同出售),是當前最普遍的CDP技術類型。

網路式CDP技術目前只有極少數CDP產品使用,這類型CDP產品無須部署代理程式,而是透藉由受保護主機或網路中的資料傳輸協定(如NFS、CIFS、FC或iSCSI)來實現,如Revivio的CPS就是典型的產品。CPS是一種基於FC/IP網路,含有軟、硬體的解決方案,產品本身是1部CDP伺服器,透過邏輯單元數(LUN)以動態邏輯磁碟(Volume)的形式呈現給欲保護的主機。使用者必須以主機的邏輯磁碟區管理軟體(LVM)將CPS加入主機的一個鏡像動態邏輯磁碟中,這樣當主機將資料寫入原來的儲存裝置時,也會透過LUN同步複製一份到CPS上。CPS含有Revivio的即時作業系統,會自動替寫入的資料加上時間索引,並處理CPS內部資料的儲存管理。雖然這種網路式CDP產品無須部署代理程式,不過使用者必須考慮到主機原有的磁碟陣列與儲存環境是否與CDP伺服器作業系統相容的問題,另外也必須確定原有儲存裝置與CPS間的存取速度是否能同步,以免因儲存裝置的速度差異而發生延遲的情況。

CDP的限制——連續但非無限

雖然CDP能夠提供非常強大的資料還原功能,但為確保能持續的捕獲並紀錄系統的寫入動作,CDP對磁碟存取速度的要求相對較高。另外又由於CDP必須保存系統每一次的寫入狀態,對儲存空間的消耗也非常大,用戶必須在儲存軟、硬體方面都付出相當的代價,才能享受CDP的效益。然而無論如何,磁碟空間總是有限的,因此CDP提供的保護在時間上雖是連續,但遠非無限,只能對一定時間內的資料提供保護,在磁碟空間耗損完後還是必須清掉舊紀錄,用戶仍需制定相應的資訊生命週期政策,決定資料保留的週期。

從另一方面來說,由於CDP是一種基於磁碟的技術,對於於長期的資料保存,磁帶仍是不可或缺的儲存媒體,所以傳統的備份解決方案也仍有存在的必要。而CDP的最大限制是只能保護其他伺服器或電腦的資料,而不能保護CDP本身儲存的資料,因此CDP系統本身也還需要其他備份系統提供第2層的保護(一些CDP產品也提供將CDP本身資料複製到第2部CDP主機備份的功能)。所以CDP在企業儲存系統中主要是扮演輔助和補充的角色,用來強化企業營運的持續性與資料的可用性,而不會完全取代傳統的備份產品。文⊙張明德

熱門新聞

Advertisement