(一) 什么是數(shù)據(jù)快照
SNIA(存儲網(wǎng)絡(luò)行業(yè)協(xié)會)對快照(Snapshot)的定義是:關(guān)于指定數(shù)據(jù)集合的一個完全可用拷貝,該拷貝包括相應(yīng)數(shù)據(jù)在某個時間點(拷貝開始的時間點)的映像??煺湛梢允瞧渌硎镜臄?shù)據(jù)的一個副本,也可以是數(shù)據(jù)的一個復(fù)制品。
AS1000G2光纖磁盤存儲系統(tǒng)中Snapshot的具體實現(xiàn)是:采用即寫即拷貝(copy-on-write)設(shè)計,創(chuàng)建一個卷基于時間點的邏輯映像,創(chuàng)建過程幾乎瞬間完成。
AS1000G2光纖存儲系統(tǒng)快照有如下特點:
1) 基于時間點的卷映像,采用即寫即拷貝的方式,集成在存儲管理軟件GUI管理界面中,操作非常直觀簡便;
2) 每個卷支持4個Snapshot,每個系統(tǒng)支持1024個Snapshot;
3) Snapshot卷可讀可寫可復(fù)制也可以做為備份源;
4) 對Snapshot卷進行寫操作時,數(shù)據(jù)被寫在倉儲卷,可以提前設(shè)置倉儲卷寫滿之后的處理方式,有兩種選擇,一是對源卷的寫操作失敗,二是Snapshot作廢
5) 系統(tǒng)默認(rèn)設(shè)置倉儲卷容量為源卷容量的20%,也可以在創(chuàng)建倉儲卷時手動設(shè)置其大小,不得少于源卷容量的20%,可以大于源卷容量;若在使用過程中,發(fā)現(xiàn)倉儲卷容量仍不夠用,可以利用AS1000G2的動態(tài)卷擴展功能對倉儲卷進行擴容。
6) Snapshot功能是AS1000G2存儲系統(tǒng)管理軟件的一個高級功能,使用前需要License激活。
(二) AS1000G2數(shù)據(jù)快照的實現(xiàn)原理
AS1000G2光纖磁盤存儲系統(tǒng)利用“copy-on-write ”(即寫即拷貝)設(shè)計來實現(xiàn)Snapshot,如果源卷沒有數(shù)據(jù)變化,Snapshot卷僅作為指針表,所有對源卷的讀操作還是直接從源卷上讀取,若源卷有數(shù)據(jù)變化,則將變化的數(shù)據(jù)有序的寫入倉儲卷,并修改Snapshot卷的指針。下面以圖解的方式簡單介紹Snapshot的過程。
圖(一)給出了在執(zhí)行Snapshot之前源卷和倉儲卷的狀態(tài)。需要指出的是,在創(chuàng)建某卷的Snapshot時,需要同時創(chuàng)建一個倉儲卷,倉儲卷容量至少為源卷容量的20%。
圖(一)
圖(二)表示執(zhí)行對源卷的Snapshot,Snapshot卷實際僅僅占用了很少空間,它是一個指針表,而不是真正的數(shù)據(jù)卷。
圖(二)
圖(三)表示快照卷建立了與源卷對應(yīng)的指針,已經(jīng)完成了對源卷的快照。值得一提的是,快照雖然是瞬間完成,但是Snapshot卷是不斷變化的,一旦源卷有新的數(shù)據(jù)寫入,Snapshot卷(指針表)將被更新,改為指向原始數(shù)據(jù)的位置。
圖(三)
圖(四)示出了快照卷更新,重新定位到新的原始數(shù)據(jù)位置。源卷中被覆蓋的原始數(shù)據(jù)被存放到了倉儲卷,所以Snapshot卷中的指針也重新定位為到了倉儲卷,形象的體現(xiàn)了即寫即拷貝(Copy-On-Write)的工作過程。
圖(四)
(三)AS1000G2的數(shù)據(jù)快照可以實現(xiàn)哪些應(yīng)用
在AS1000G2光纖磁盤存儲系統(tǒng)中Snapshot的典型應(yīng)用有以下兩種
1) 備份應(yīng)用
AS1000G2存儲系統(tǒng)支持不中止數(shù)據(jù)訪問的情況下進行離線備份。例如現(xiàn)在要對一個正在應(yīng)用的數(shù)據(jù)卷進行備份,但要求備份過程中該數(shù)據(jù)卷仍然在線并允許用戶進行讀寫操作,這時就可以利用AS1000G2存儲系統(tǒng)的Snapshot功能,先創(chuàng)建該數(shù)據(jù)卷的Snapshot,因為Snapshot的創(chuàng)建過程幾乎瞬間完成,然后把Snapshot卷作為備份源,執(zhí)行備份操作,備份完成之后,就可以刪除Snapshot卷,在整個備份過程中,應(yīng)用數(shù)據(jù)卷的讀寫幾乎不受任何影響。
2) 應(yīng)用測試
應(yīng)用Snapshot可以快速創(chuàng)建測試環(huán)境,利用Snapshot可寫的能力可提供快速的應(yīng)用測試環(huán)境。例如生產(chǎn)系統(tǒng)需要安裝新的應(yīng)用軟件、更新版本等,需要測試穩(wěn)定后才能投入正式運行,這些測試往往是基于生產(chǎn)系統(tǒng)數(shù)據(jù)卷的復(fù)制卷進行的,創(chuàng)建Snapshot卷所用的時間比創(chuàng)建數(shù)據(jù)卷的完全物理復(fù)制花費的時間要少很多,而Snapshot卷同樣可以被分配給測試卷進行操作。
(三)在AS1000G2中如何使用數(shù)據(jù)快照功能
AS1000G2光纖磁盤存儲系統(tǒng)的Snapshot功能使用非常直觀簡便,只需在GUI界面(如右圖所示)中執(zhí)行以下幾個步驟:
1. 激活Snapshot功能;
2. 創(chuàng)建倉儲卷以及Snapshot卷;
3. 把Snapshot卷映射給主機用作備份源或者應(yīng)用測試等
一旦激活Snapshot功能,存儲陣列的性能會受到即寫即拷貝到倉儲卷活動的影響, 因此當(dāng)不需要snapshot卷時, 可以選擇禁用(disable), 重新使用(reuse), 或者刪除(delete)snapshot卷。禁用(Disable)就是中止即寫即拷貝的活動,保留Snapshot卷和倉儲卷原封不動;重新使用(Reuse)是創(chuàng)建源卷的基于重新使用時間點的映像,這比重新創(chuàng)建花費的時間短;刪除(Delete)指的是完全刪除snapshot卷以及相關(guān)的倉儲卷,這時如果需要重新激活源卷的倉儲卷,則必須重新創(chuàng)建。可以根據(jù)不同的需要來選擇處理方式。
另外,在AS1000G2光纖存儲系統(tǒng)中,也可以選擇采用編寫腳本的方式來執(zhí)行Snapshot功能。
(四)總結(jié)
AS1000G2光纖磁盤存儲系統(tǒng)提供了直觀易用的Snapshot功能,可以幫助用戶實現(xiàn)在不中止應(yīng)用數(shù)據(jù)的情況下進行應(yīng)用數(shù)據(jù)的離線備份,可以實現(xiàn)數(shù)據(jù)的快速恢復(fù)功能,也可以利用其Snapshot卷可寫的功能,快速建立與生產(chǎn)環(huán)境相同的測試環(huán)境,為應(yīng)用測試以及培訓(xùn)等提供便利。Snapshot功能搭配數(shù)據(jù)卷復(fù)制功能使用,可以提供更為廣泛的數(shù)據(jù)應(yīng)用,比如更深層次的應(yīng)用測試以及數(shù)據(jù)挖掘等。
附:本文涉及到的名詞:
快照卷(Snapshot Volume):一個基于時間點的邏輯映像,在邏輯上等同于一個完整物理拷貝,是一個指針表,并非實際的數(shù)據(jù)卷,占用空間極少。
源卷(Base Volume):創(chuàng)建snapshot 的源卷。
倉儲卷(Repository Volume):源卷上的數(shù)據(jù)變化時,把要被覆蓋的數(shù)據(jù)塊寫到倉儲卷中。