2021年災(zāi)備行業(yè)白皮書

<2021>正式發(fā)布,歷時十個月,由數(shù)十位一線技術(shù)工程師及行業(yè)權(quán)威專家共同策劃編寫完成,共計 7 個章節(jié) 12 萬余字。白皮書內(nèi)容由淺入深的介紹了災(zāi)備的技術(shù)原理,展示了當(dāng)前用于災(zāi)備、數(shù)據(jù)管理等場景下的最新技術(shù)、產(chǎn)品和解決方案,旨在為行業(yè)從業(yè)人員提供更系統(tǒng)、詳實的知識體系,帶來更多的場景化的思考和探索。
?
該白皮書旨在通過對備份、容災(zāi)、存儲、數(shù)據(jù)復(fù)制、數(shù)據(jù)管理、云災(zāi)備等系列內(nèi)容及行業(yè)解決方案,為行業(yè)人士在基礎(chǔ)知識學(xué)習(xí)、專業(yè)知識補(bǔ)充、技能理念提升等方面提供幫助,是廣大相關(guān)從業(yè)者看清災(zāi)備行業(yè)發(fā)展的窗戶(文末附下載)。
官網(wǎng)下載:
http://www.info2soft.com/whitepaper
今天主要分享下白皮書中的復(fù)制技術(shù);數(shù)據(jù)復(fù)制(Replication)是指通過網(wǎng)絡(luò)把數(shù)據(jù)實時或定時地從一個地方復(fù)制到另一個地方。數(shù)據(jù)復(fù)制技術(shù)根據(jù)計算機(jī)網(wǎng)絡(luò)體系構(gòu),按不同層次分為五種:
1、基于應(yīng)用和中間層的數(shù)據(jù)復(fù)制技
2、基于主機(jī)層的數(shù)據(jù)復(fù)制技術(shù)
3、基于數(shù)據(jù)庫的數(shù)據(jù)復(fù)制技術(shù)
4、基于存儲系統(tǒng)網(wǎng)關(guān)的數(shù)據(jù)復(fù)制技術(shù)
5、基于存儲介質(zhì)的數(shù)據(jù)復(fù)制技術(shù)

應(yīng)用層的數(shù)據(jù)復(fù)制通過應(yīng)用程序與主備中心的數(shù)據(jù)庫進(jìn)行同步或異步的寫操作,以保證主備中心數(shù)據(jù)的一致性,災(zāi)備中心可以和生產(chǎn)中心同時正常運(yùn)行,既能容災(zāi),還可實現(xiàn)部分功能分擔(dān),但是該技術(shù)的實現(xiàn)方式復(fù)雜,與應(yīng)用軟件業(yè)務(wù)邏輯直接關(guān)聯(lián),實現(xiàn)和維護(hù)難度較高,并且使用應(yīng)用層的數(shù)據(jù)復(fù)制會提高系統(tǒng)的風(fēng)險與數(shù)據(jù)丟失的風(fēng)險。
獨(dú)立于底層的操作系統(tǒng)、數(shù)據(jù)庫、存儲,應(yīng)用可以根據(jù)需求實現(xiàn)雙寫或多寫,從而實現(xiàn)主本和多個數(shù)據(jù)副本之間的數(shù)據(jù)復(fù)制功能。這種由應(yīng)用實現(xiàn)的技術(shù),可以在中間件或應(yīng)用平臺層進(jìn)行封裝和實現(xiàn),對上的應(yīng)用透明,也可以在應(yīng)用層實現(xiàn)。
其主要好處是可根據(jù)需求定制、可實現(xiàn)應(yīng)用和數(shù)據(jù)庫層的復(fù)制,自主可控;主要不足是目前市場上沒有成熟、適合傳統(tǒng)IT企業(yè)大規(guī)模推廣使用的中間件產(chǎn)。如果完全由應(yīng)用封裝平臺或者應(yīng)用來實現(xiàn),代碼的復(fù)雜程度提高,增加了應(yīng)用的維護(hù)成本。
基于主機(jī)的數(shù)據(jù)復(fù)制是通過磁盤卷的鏡像或復(fù)制進(jìn)行的,業(yè)務(wù)進(jìn)行在主機(jī)的卷管理器層,對硬件設(shè)備尤其是存儲設(shè)備的限制小,利用生產(chǎn)中心和備份中心的主機(jī)系統(tǒng)通過IP網(wǎng)絡(luò)建立數(shù)據(jù)傳輸通道,數(shù)據(jù)傳輸可靠,效率對較高;通過主機(jī)數(shù)據(jù)管理軟件實現(xiàn)數(shù)據(jù)的遠(yuǎn)程復(fù)制,當(dāng)主數(shù)據(jù)中心的數(shù)據(jù)遭到破壞時,可以隨時從備份中心恢復(fù)應(yīng)用或從備份中心恢復(fù)數(shù)據(jù)。
基于主機(jī)的數(shù)據(jù)復(fù)制不需要兩邊采用同樣的存儲設(shè)備,具有較大的靈活性,缺點是復(fù)制功能會占用一些主機(jī)的CPU資源,對軟件要求較高(很多軟件無法提供基于時間點的快照功能),對主機(jī)的性能有一定的影響。
為了避免上述復(fù)制問題,提高復(fù)制效率,英方經(jīng)過長期的技術(shù)研發(fā)創(chuàng)新,推出了基于操作系統(tǒng)內(nèi)存層的字節(jié)級增量異步復(fù)制技術(shù)。
英方軟件字節(jié)級數(shù)據(jù)捕獲與復(fù)制技術(shù)在實施過程中,首先會做初始化的數(shù)據(jù)鏡像,然后通過核心的復(fù)制引擎,開始旁路監(jiān)聽所有文件系統(tǒng)的寫操作,例如Rename、SetAttr等,都能準(zhǔn)確的捕獲,并通過數(shù)據(jù)序列化傳輸技術(shù)(Data-OrderTransfer,簡稱“DOT”)異步傳輸?shù)綖?zāi)備端,完成整個數(shù)據(jù)的捕獲和復(fù)制過程。

字節(jié)級復(fù)制的核心引擎工作時,并沒有復(fù)雜的數(shù)學(xué)運(yùn)算,對生產(chǎn)機(jī)計算資源占用可以忽略,僅僅是旁路捕獲數(shù)據(jù)。其次,所有的數(shù)據(jù)都是從內(nèi)存中捕獲,并不涉及生產(chǎn)主機(jī)存儲的讀取操作,因此數(shù)據(jù)復(fù)制過程不占用主機(jī)的存儲IO資源?;谧止?jié)級的數(shù)據(jù)復(fù)制粒度最小到字節(jié),因此對于帶寬資源的要求極低,是適應(yīng)于異地遠(yuǎn)距離及向未來的混合IT環(huán)境和云化架構(gòu)的一種復(fù)制方式。
基于數(shù)據(jù)庫軟件的復(fù)制技術(shù)括物理復(fù)制和邏輯復(fù)制兩種方式。
邏輯復(fù)制是利用數(shù)據(jù)庫的重做日、歸檔日,將主本所在站點的日傳輸?shù)礁北舅谡军c,通過重做SQL的方式實現(xiàn)數(shù)據(jù)復(fù)制。邏輯復(fù)制只提供異步復(fù)制,主副本數(shù)據(jù)的最終一致性,無法保證實時一致性;物理復(fù)制不是基于SQLApply操作來完成復(fù)制,而是通過redolog日或歸檔日在副本站點的同步或異步持久化寫來實現(xiàn)復(fù)制功能,同時副本站點的數(shù)據(jù)可以提供只讀功能。
開放平臺數(shù)據(jù)庫復(fù)制技術(shù)則是一種基于數(shù)據(jù)庫log(日)的構(gòu)化數(shù)據(jù)復(fù)制技術(shù),它通過解析源數(shù)據(jù)庫在線log或歸檔log獲得數(shù)據(jù)的增、刪、改變化,再將這些變化應(yīng)用到目標(biāo)數(shù)據(jù)庫,使源數(shù)據(jù)庫與目標(biāo)數(shù)據(jù)庫同步,以達(dá)到多站點間數(shù)據(jù)庫可雙活甚至多活,實現(xiàn)業(yè)務(wù)連續(xù)可用和容災(zāi)的目的。

基于數(shù)據(jù)庫的數(shù)據(jù)復(fù)制是對數(shù)據(jù)庫記錄級別、表級別容災(zāi)高可用的基礎(chǔ)技術(shù),英方數(shù)據(jù)庫容災(zāi)技術(shù)合了主機(jī)復(fù)制和數(shù)據(jù)庫日分析的優(yōu)點,提高了系統(tǒng)應(yīng)用的靈活性,可實現(xiàn)數(shù)據(jù)庫應(yīng)用多活,同時也極大減少了數(shù)據(jù)庫應(yīng)用的增量數(shù)據(jù)傳輸。在細(xì)粒度數(shù)據(jù)容災(zāi)、廣域云化容災(zāi)領(lǐng)域仍然具有廣闊的應(yīng)用前景。
?
數(shù)據(jù)庫語言級的實時數(shù)據(jù)同步簡述,在數(shù)據(jù)庫正常使用時,自動完成源端到備端數(shù)據(jù)的初始化全量復(fù)制,并實時監(jiān)控及同步復(fù)制增量數(shù)據(jù),其正常流程的狀態(tài)轉(zhuǎn)換及條件如下:

英方軟件i2Active是基于redolog日分析技術(shù)的Oracle數(shù)據(jù)實時復(fù)制工具,具有簡單靈活、高性能、非侵入、低影響、低于秒級延遲,低成本的特點,部署和使用也非常簡便。能夠幫助用戶 在復(fù)雜的應(yīng)用環(huán)境下完成Oracle容災(zāi)備份、數(shù)據(jù)遷移、業(yè)務(wù)數(shù)據(jù)分發(fā)、構(gòu)建大型數(shù)據(jù)倉庫等技術(shù)數(shù)據(jù)整合等工作。

存儲網(wǎng)關(guān)位于服務(wù)器與存儲之間,是構(gòu)架在SAN網(wǎng)絡(luò)上的專用存儲服務(wù)技術(shù)。這項技術(shù)基于存儲虛擬化技術(shù)。
存儲虛擬化的直接定義:在存儲設(shè)備中形成的存儲資源透明抽象層,即存儲虛擬化是服務(wù)器與存儲間的一個抽象層,它是物理存儲的邏輯表示方法。其主要目的就是要把物理存儲介質(zhì)抽象為邏輯存儲空間,將分散繁雜的異構(gòu)存儲管理整合為統(tǒng)一簡單的集中存儲管理,將人們所對的眾多存儲問題,由繁化簡(其中括存儲的讀寫方式、連接方式、存儲的規(guī)格或構(gòu)等),由散化整(存儲管理)的過程就是存儲虛擬化。
?
存儲網(wǎng)關(guān)通過對于進(jìn)入的IO數(shù)據(jù)流提供各類數(shù)據(jù)存儲服務(wù),大幅提升了在服務(wù)器或存儲層可以提供遠(yuǎn)程數(shù)據(jù)復(fù)制、異構(gòu)化存儲融合、存儲設(shè)備高可用鏡像、快照服務(wù)、數(shù)據(jù)遷移服務(wù)甚至于 部分存儲網(wǎng)關(guān)可以提供精準(zhǔn)的持續(xù)數(shù)據(jù)保護(hù)連續(xù)數(shù)據(jù)恢復(fù)服務(wù)。
由于存儲網(wǎng)關(guān)卸載了服務(wù)器和陣列的復(fù)制工作負(fù)載,它可以跨越大量的服務(wù)器平臺和存儲陣列運(yùn)行,因而使它成為高度異構(gòu)的環(huán)境下的容災(zāi)技術(shù)的理想選擇。另外,由于針對帶寬優(yōu)化、數(shù)據(jù)恢復(fù)精細(xì)化等方獨(dú)有的優(yōu)勢,這項技術(shù)也成為比較主流的一種災(zāi)備技術(shù)。
?這項技術(shù)主要爭論點在于性能保障能力的發(fā)展程度。近年來,隨SAN應(yīng)用的不斷普及,SAN網(wǎng)絡(luò)中由異構(gòu)存儲設(shè)備和爆炸式增長的數(shù)據(jù)量所帶來的管理復(fù)雜性、資源利用率低、投資浪費(fèi)、 存儲設(shè)備自身數(shù)據(jù)服務(wù)能力較低等問題促進(jìn)了存儲網(wǎng)關(guān)的發(fā)展和應(yīng)用。
通過存儲系統(tǒng)內(nèi)建的固件或操作系統(tǒng)、IP網(wǎng)絡(luò)或光纖通道等傳輸介質(zhì)連接,將數(shù)據(jù)以同步或異步的方式復(fù)制到遠(yuǎn)端,從而實現(xiàn)生產(chǎn)數(shù)據(jù)的災(zāi)難保護(hù)。
采用基于存儲介質(zhì)的數(shù)據(jù)復(fù)制技術(shù)建設(shè)容災(zāi)方案的特點主要是對網(wǎng)絡(luò)連接及硬件的要求較高。
基于存儲的復(fù)制可以是“一對一”復(fù)制方式,也可以是“一對多”或“多對一”的復(fù)制方式,即一個存儲的數(shù)據(jù)復(fù)制到多個遠(yuǎn)程存儲或多個存儲的數(shù)據(jù)復(fù)制到同一遠(yuǎn)程存儲,而且復(fù)制可以是雙向的。
存儲復(fù)制技術(shù)使基于實現(xiàn)存儲磁盤陣列之間的直接鏡像,通過存儲系統(tǒng)內(nèi)建的固件或操作系統(tǒng),利用IP網(wǎng)絡(luò)或光纖通道等傳輸界連,將數(shù)據(jù)以同步或異步的方式復(fù)制到遠(yuǎn)端。當(dāng)然,一般情況下這種模式,必須同等存儲牌并且同等型號的存儲系統(tǒng)控制器之間才能實現(xiàn),配備低延遲大帶寬也是必要條件之一。
?
由于復(fù)制工作被交給存儲控制器來完成,在異步傳輸本地緩存較大的時候可以很好地避免服務(wù)器的性能開銷過大的問題,從而使基于存儲陣列的復(fù)制非常適合關(guān)鍵任務(wù)和高端交易應(yīng)用。這也是目前應(yīng)用最廣泛的容災(zāi)復(fù)制技術(shù)之一,但這種技術(shù)隨閃存存儲、開放式存儲、云存儲、向?qū)ο蟠鎯Φ鹊然旌洗鎯夹g(shù)的普及和迭代,越來越難以適應(yīng)新環(huán)境下的容災(zāi)復(fù)制需求。
英方變長塊復(fù)制技術(shù):通?;诖鎯橘|(zhì)的數(shù)據(jù)復(fù)制也稱為塊復(fù)制技術(shù),傳統(tǒng)的塊復(fù)制技術(shù)主要是基于定長塊復(fù)制原理進(jìn)行塊級別數(shù)據(jù)復(fù)制。英方軟件在合用戶新場景的需求下,基于變長塊復(fù)制原理,推出了變長塊復(fù)制技術(shù)——通過在卷管理層和磁盤驅(qū)動之間安“捕獲監(jiān)控管理”模塊, 精準(zhǔn)捕獲到發(fā)生數(shù)據(jù)變化的塊是哪一個或哪幾個,然后在位圖(Bitmap)上記錄下來,在觸發(fā)備份規(guī)則時,僅傳輸發(fā)生變化的子數(shù)據(jù)塊。
針對以上數(shù)據(jù)復(fù)制技術(shù)的功能比較,下表很好地歸納和總了各自的特點:

但是關(guān)于數(shù)據(jù)復(fù)制量的對比,它們之間還是有很大的差距,下圖以一個300M的文件修改了512字節(jié)的場景為例,說明當(dāng)前主流復(fù)制技術(shù)所復(fù)制的數(shù)據(jù)量的比例—復(fù)制傳輸?shù)臄?shù)據(jù)量之比為300MB:64KB:512B(4800:128:1)。

此外,如果數(shù)據(jù)復(fù)制技術(shù)按模式,又可以分為連續(xù)復(fù)制和定時拷貝:
連續(xù)復(fù)制:連續(xù)復(fù)制是對業(yè)務(wù)狀態(tài)數(shù)據(jù)進(jìn)行持續(xù)不斷的復(fù)制,針對業(yè)務(wù)系統(tǒng)遭遇故障如突然的宕機(jī)、存儲故障等物理錯誤時恢復(fù)應(yīng)用進(jìn)程。當(dāng)災(zāi)難發(fā)生時,連續(xù)復(fù)制過程也終止;在進(jìn)行業(yè)務(wù)恢復(fù)時利用備份數(shù)據(jù)可以恢復(fù)停機(jī)現(xiàn)場的生產(chǎn)數(shù)據(jù),從而恢復(fù)業(yè)務(wù)。連續(xù)復(fù)制技術(shù)分為:

同步復(fù)制:要求每一個寫入操作在執(zhí)行下一個操作處理之前,在源端和目標(biāo)端都能完成。數(shù)據(jù)丟失少,會影響生產(chǎn)系統(tǒng)性能,除非目標(biāo)系統(tǒng)物理上離生產(chǎn)系統(tǒng)比較近。
異步復(fù)制:在處理下一個寫入操作前,不等待數(shù)據(jù)復(fù)制到目標(biāo)系統(tǒng)中。復(fù)制的數(shù)據(jù)與源數(shù)據(jù)有時間差,但這種復(fù)制對生產(chǎn)系統(tǒng)性能影響較小。

定點拷貝:在業(yè)務(wù)運(yùn)行過程中某一時刻的生產(chǎn)數(shù)據(jù)的保護(hù),主要預(yù)防業(yè)務(wù)因生產(chǎn)數(shù)據(jù)的邏輯故障而造成的停頓;當(dāng)生產(chǎn)數(shù)據(jù)因人為誤操作或病毒破壞而損壞時,可以利用該定點拷貝將業(yè)務(wù)狀態(tài)恢復(fù)到損壞發(fā)生時刻的業(yè)務(wù)正常狀態(tài)。
