備份工作的核心是恢復
發布人:scutech 發布日期:2012-09-27 16:48:33 點擊數:4179
數據備份的根本目的,是重新利用,這也就是說,備份工作的核心是恢復,一個無法恢復的備份,對任何系統來說都是毫無意義的。在實際情況中,廠商或集成商更多的是向用戶吹噓,自己的產品在備份過程中如何的巧妙。然而,作為最終用戶,一定需要清醒的認識到,能夠安全、方便而又高效的恢復數據,才是備份系統的真正生命所在。也許很多人會以為,既然備份系統已經把需要的數據備份下來了,恢復應該不成什么問題。這就大錯而特錯了,事實上,無論是在金融電信行業的數據中心,還是在普通的桌面級系統中,備份數據無法恢復,從而導致數據丟失的例子實在太多了。就在日前,我國西北地區的一個省級電信運營商還糟此劫難,系統數據遺失殆盡,該運營商的聲譽和眾多用戶的利益都受到了重大損害。這次事故的主要責任者之一,就是一個全球知名的備份軟件廠商,因為其提供的備份產品沒能正常恢復系統數據。
眾所周知,建造大樓時一定會配備消防系統,但是,并非有了消防系統就能高枕無憂。人們經常獲悉,有的樓房突遭火災時,消防系統卻無故癱瘓了,或者消防栓里沒有水,或者消防通道被堵塞,以致火勢蔓延,造成巨大的生命財產損失。因此,并非所有的消防系統,在遭遇火災時都能起作用。一樣的道理,數據備份設施之于IT系統,就相當于消防系統之于樓房,它是保護IT系統的最后一道防線。即使配備了數據備份設施,并不表明在IT系統遇到問題時一定能將丟失的數據成功恢復。
為了進一步闡明恢復的重要性,讓我們再來對比一下備份和恢復操作的區別。
一.備份是計劃內的工作,而恢復則是計劃外的工作。
對于IT技術人員來說,備份是按照既定的備份策略,每隔一定時間,按部就班地操作即可。而恢復,則是只有當發生數據丟失時,或者要查找歷史數據時,才會進行的操作。通常情況下,實施恢復操作時,往往都是十萬火急,越快越好,同時還希望恢復后的數據可用。
由于備份對系統的影響比較大,所以備份的工作往往是在特定的時間內完成的,也即所謂的“備份窗口”,這時生產系統通常不工作。而恢復,因為是計劃外的工作,對生產系統肯定會產生影響。下面以電子郵件數據的備份和恢復為例,來說明恢復對系統的影響。
假定您對電子郵件系統的備份策略是每晚八點定時備份到磁帶,備份完成后磁帶里就會保存有昨天晚上八點之前收到的所有電子郵件。當然,收發電子郵件是一個連續的動作,晚上八點后,郵箱仍然在不停地收郵件。假設到了今天中午12點,您發現某一個重要的郵件不小心被刪掉了,如果這個郵件是昨天晚上八點前收到的,那么您還是有可能從磁帶里恢復該郵件。這時就要啟動恢復操作了。
如果備份軟件能夠實現郵件一級的恢復(恢復顆粒是單個郵件)的話,您只要能找到那封丟失的郵件,直接將它恢復到郵箱就可以了,恢復的過程對整個郵件系統沒有任何影響;但是,如果您的備份軟件只能做到郵箱級的恢復(恢復顆粒是一個郵箱),那么如果您想恢復該郵件的話,就不得不把整個郵箱恢復到昨晚八時的狀態,造成的后果就是昨天晚上八點到今天上午12點收進的郵件會全部被覆蓋。可見,如果從備份的角度來說,兩者沒什么區別;但是從恢復的角度來講,兩者差別很大。
二. 備份是大批量的數據移動過程,往往需要將所有數據或所有增量數據全部拷貝到備份設備,而恢復往往是少量的數據移動過程,只需將需要恢復的數據從備份設備拷貝回主服務器。
現在市場上流行的很多備份軟件,基本上都是在上世紀80年代設計的,那時的數據量相對較小(幾十兆到幾百兆)。當進行備份操作的時候,備份軟件會把所需要備份的數據文件打包成一個備份集(backup set),然后將它拷貝至備份設備中,并且針對該備份集形成相對應的索引,但一般不會對備份集里的內容建立詳細的索引。那么當需要恢復該備份集中的某一個文件時,備份軟件就必須從備份集中搜索到該文件,然后進行恢復。這在只有幾百兆數據量的IT環境下完全可行,然而來到我們目前所處的海量數據的時代,由于數據量已經高達幾十甚至幾百TB,如果繼續沿用這種方式,勢必產生許多問題:從浩如煙淼的備份數據里,找到并恢復您需要的那一個,難度無異于大海撈針!例如,有的用戶去電信公司要求查詢自己的歷史話單(如兩年前的某一個月的通話記錄),今天,很多電信公司無法滿足用戶的這一需求,因為很多情況下明知該歷史話單一定存在于原先的備份介質中,但由于數據量實在太大,幾乎沒有可操作性。這種情況下,備份雖然是成功的,但是恢復的成功率卻很低。
META Group在2004年4月的一份題為“Proactive Data Protection”的調查揭示了數據恢復的真相:
-
恢復作業的平均成功率只有70%左右;
-
主要的恢復需求是恢復單個文件或單個表空間,而不是整個卷;
-
而恢復單個文件至少要花1個小時, 有時甚至要接近1天。
所以,當考慮數據保護時,應著眼于“恢復”,需著重考慮以下幾點:
1.確保數據能夠恢復
2.恢復速度要盡量快
3.恢復操作對系統的影響要盡可能小
4.能夠恢復到用戶指定的時間點
5.恢復的數據是可以使用的
當然,恢復是在備份的基礎上進行的,如果備份失敗,恢復肯定不會成功。為了確保能達到恢復的目的,對備份操作有以下幾點基本要求:
1.提高備份成功率
備份過程中,當備份介質、備份設備和網絡出現問題時,備份作業就會中斷,要提高備份的成功率,備份系統就應具有容錯機制。如果是備份介質或備份設備出現問題,可以將備份自動切換到其他的備份介質、設備或路徑上,并能確保從中斷處繼續備份操作。另外,“備份的斷點續傳”也很重要,當網絡發生阻塞時,備份也會中斷;一旦網絡恢復正常,備份能從中斷處自動重啟并繼續進行。
2.精細的備份數據索引
當用戶希望恢復數據時,絕大多數情況下并不需要恢復整個系統,而只要恢復部分數據,甚至只是一個文件或郵件。索引做得足夠精細,有利于在恢復時能快速查找并定位所需要恢復的數據,實現小顆粒恢復,同時將對系統的影響降到最小,恢復速度大幅提高。
3.能產生多個數據副本
為了防止備份數據意外損壞,產生多個備份副本是必要的,也很有效。產生數據副本的方法有兩種:同步和異步。同步的方法是,在備份時,同時把備份數據寫入到兩個不同的介質中;異步的做法是,先把備份數據寫入一個介質,然后再利用空閑時段,將備份數據復制到其他介質上。當然也可以通過網絡將其復制到異地,達到數據容災的目的。
4.離場保護
如果數據備份是為了恢復而進行的,就應該考慮到萬一數據中心遭遇災難時,怎樣進行恢復。這時“離場保護”中保存的數據副本就會起到很大的作用。
5.操作界面應足夠簡單
用戶界面應該面向恢復,而非面向備份。在面向數據恢復的用戶界面,所有的備份數據是按照數據原先的結構來組織的,需要恢復哪個數據,很快就能找到,輕松點擊一下就能恢復該數據了。