VSS (Volume Shadow copy Service, 卷映射拷貝服務),最初是在Windows Server 2003 SP1中引入的存儲技術(shù)。它通過在卷管理模塊上加入快照功能,在此基礎上就可以創(chuàng)建基于時間點(Point-In-Time)的映像(Image),從而實現(xiàn)數(shù)據(jù)的快速備份和恢復,用戶也無需害怕因無意刪除數(shù)據(jù)而造成的困擾,這就是VSS的關(guān)鍵所在。由于VSS所表現(xiàn)的優(yōu)良特性,因此在Microsfot最新的Vista操作系統(tǒng)中,也加入了該功能。
一、 VSS概述
VSS能夠讓存儲基礎設備(比如磁盤、陣列)創(chuàng)建高保真的時間點映像,就是映射拷貝(Shadow Copy)。它可以在多卷、或者單個卷上創(chuàng)建映射拷貝,同時不會影響到系統(tǒng)性能。VSS通過協(xié)調(diào)業(yè)務應用軟件、備份程序,以及存儲硬件,從而達到創(chuàng)建高保真映射拷貝的能力。它可以應用到以下領(lǐng)域:
A、 快速數(shù)據(jù)備份和恢復;
B、 針對制定文件的恢復;
C、 磁帶備份、測試,以及數(shù)據(jù)挖掘方面;
由于Microsoft在OS中集成了VSS技術(shù),它將各個處理功能模塊化,并針對存儲軟硬件廠商提供相應的開發(fā)接口;開發(fā)商只需要關(guān)注自己的模塊,根據(jù)需求設計相關(guān)的應用,從而減少了整體設計的難度。就筆者了解,不少軟硬件存儲公司就采用VSS技術(shù)來設計NAS,并以此為基礎構(gòu)建數(shù)據(jù)保護服務器。
二、 VSS技術(shù)原理
VSS整體框架包含了VSS核心模塊、請求者(Requestor)、寫入者(Writer),以及提供者(Provider)。各個模塊之間的關(guān)系如下圖所示:
圖-1 VSS原理圖
其中,各個模塊的具體功能如下:
A) 請求者(Requestor),其主要任務是初始化映射拷貝的創(chuàng)建;由于需要不一樣,解決的問題各不相同不同,因此可能設計不同請求者應用。例如,備份應用處理VSS的備份功能,管理應用處理映射拷貝的創(chuàng)建及使用(像WS2003和Vista本身提供的VSS管理軟件就是此類),同時可以設計其他功能應用,來處理專門的業(yè)務。對于請求者的應用,包括Windows NT備份模塊、備份軟件提供商設計的備份應用,以及存儲軟硬件提供商設計的管理應用。
B) 寫入者(Writer),其主要任務是保證數(shù)據(jù)的一致性;因為,如果在創(chuàng)建映射拷貝的過程中,應用軟件繼續(xù)往磁盤寫入數(shù)據(jù),那么將會出現(xiàn)數(shù)據(jù)非一致性問題,從而影響該時間點映像的完整性。通過在應用寫入者模塊進行控制處理,來保證數(shù)據(jù)的一致性,同時也可以達到創(chuàng)建映射拷貝的高效性。通常,寫入者可能是Windows OS里面的各種服務模塊,像COM+、DHCP服務、Active Directory服務等,除此之外,數(shù)據(jù)庫也是常見的寫入者應用。
C) 提供者(Provider),其主要任務是創(chuàng)建映射拷貝;提供者是創(chuàng)建時間點影響的接口,它可以是基于存儲陣列(硬件模式),或者操作系統(tǒng)(軟件模式)。VSS有不同的提供者,其層次關(guān)系為:最底層是硬件提供者,中間是軟件提供者,最上面是系統(tǒng)軟件提供者。其中前面兩個提供者,是為第三方硬件或者軟件廠商提供的。
D) 卷映射拷貝服務(VSS)核心模塊,其主要任務是協(xié)調(diào)各個模塊的協(xié)作運行,并提供創(chuàng)建卷映射拷貝的方法;VSS提供了兩種創(chuàng)建映射拷貝的方法:一種是完全拷貝(Clone/Full Copy/Split Mirror),它會創(chuàng)建當前原始數(shù)據(jù)(Original Data)的全部拷貝;而另外一種就是寫時才拷貝(Copy on Write/Differential Copy),它只創(chuàng)建將要被更新的原始數(shù)據(jù)的拷貝。因此寫拷貝創(chuàng)建映射拷貝速度快,但是恢復數(shù)據(jù)時需要使用原始數(shù)據(jù)。
評論