幾種容災(zāi)數(shù)據(jù)復(fù)制技術(shù)的比較_第1頁(yè)
幾種容災(zāi)數(shù)據(jù)復(fù)制技術(shù)的比較_第2頁(yè)
幾種容災(zāi)數(shù)據(jù)復(fù)制技術(shù)的比較_第3頁(yè)
幾種容災(zāi)數(shù)據(jù)復(fù)制技術(shù)的比較_第4頁(yè)
幾種容災(zāi)數(shù)據(jù)復(fù)制技術(shù)的比較_第5頁(yè)
已閱讀5頁(yè),還剩18頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、、概述近幾年來,容災(zāi)已經(jīng)成為信息數(shù)據(jù)中心建設(shè)的熱門課題。很多容災(zāi)技術(shù)也快速發(fā)展起來,對(duì)用戶來說也有很廣闊的選擇余地。但由于容災(zāi)方案的技術(shù)復(fù)雜性和多樣性,一般用戶很難搞清其中的優(yōu)劣以確定如何選擇最適合自己狀況的容災(zāi)解決方案。本文我們就容災(zāi)建設(shè)中的備份及復(fù)制技術(shù)做一個(gè)初步探討,希望能對(duì)客戶的數(shù)據(jù)中心容災(zāi)建設(shè)提供一些參考。目前有很多種容災(zāi)技術(shù),分類也比較復(fù)雜。但總體上可以區(qū)分為離線式容災(zāi)(冷容災(zāi))和在線容災(zāi)(熱容災(zāi))兩種類型。二、離線式容災(zāi)所謂的離線式容災(zāi)主要依靠備份技術(shù)來實(shí)現(xiàn)。其重要步驟是將數(shù)據(jù)通過備份系統(tǒng)備份到磁帶上面,而后將磁帶運(yùn)送到異地保存管理。離線式容災(zāi)具有實(shí)時(shí)性低、可備份多個(gè)副本、備份范

2、圍廣、長(zhǎng)期保存、投資較少等特點(diǎn),由于是備份一般是壓縮后存放到磁帶的方式所以數(shù)據(jù)恢復(fù)較慢,而且備份窗口內(nèi)的數(shù)據(jù)都會(huì)丟失,因此一般用于數(shù)據(jù)恢復(fù)的 RTO(目標(biāo)恢復(fù)時(shí)間)和 RPO(目標(biāo)恢復(fù)點(diǎn))要求較低的容災(zāi)。也有很多客戶將離線式容災(zāi)和在線容災(zāi)結(jié)合起來增加系統(tǒng)容災(zāi)的完整性和安全性。目前主流的備份軟件主要有:lSymantecVeritasNetBackuplEMCLegatoNetWorkerlIBMTivoliStorageManagerlQuestBakBoneNetVault三、在線容災(zāi)在線容災(zāi)要求生產(chǎn)中心和災(zāi)備中心同時(shí)工作,生產(chǎn)中心和災(zāi)備中心之間有傳輸鏈路連接。數(shù)據(jù)自生產(chǎn)中心實(shí)時(shí)復(fù)制傳送到災(zāi)

3、備中心。在此基礎(chǔ)上,可以在應(yīng)用層進(jìn)行集群管理,當(dāng)生產(chǎn)中心遭受災(zāi)難出現(xiàn)故障時(shí)可由災(zāi)備中心接管并繼續(xù)提供服務(wù)。因此實(shí)現(xiàn)在線容災(zāi)的關(guān)鍵是數(shù)據(jù)的復(fù)制。和數(shù)據(jù)備份相比,數(shù)據(jù)復(fù)制技術(shù)具有實(shí)時(shí)性高、數(shù)據(jù)丟失少或零丟失、容災(zāi)恢復(fù)快、投資較高等特點(diǎn)。根據(jù)數(shù)據(jù)復(fù)制的層次,數(shù)據(jù)復(fù)制技術(shù)的實(shí)現(xiàn)可以分為三種:存儲(chǔ)系統(tǒng)層數(shù)據(jù)復(fù)制、操作系統(tǒng)數(shù)據(jù)復(fù)制和數(shù)據(jù)庫(kù)數(shù)據(jù)復(fù)制。1、存儲(chǔ)系統(tǒng)層數(shù)據(jù)復(fù)制現(xiàn)在的存儲(chǔ)設(shè)備經(jīng)過多年的發(fā)展已經(jīng)十分成熟。特別是中高端產(chǎn)品,一般都具有先進(jìn)的數(shù)據(jù)管理功能。遠(yuǎn)程數(shù)據(jù)復(fù)制功能幾乎是現(xiàn)有中高端產(chǎn)品的必備功能。要實(shí)現(xiàn)數(shù)據(jù)的復(fù)制需要在生產(chǎn)中心和災(zāi)備中心都部署 1 套這樣的存儲(chǔ)系統(tǒng),數(shù)據(jù)復(fù)制功能由存儲(chǔ)系統(tǒng)實(shí)現(xiàn)。如果

4、距離比較近(幾十公里之內(nèi))之間的鏈路可由兩中心的存儲(chǔ)交換機(jī)通過光纖直接連接,如果距離在 100 公里內(nèi)也可通過增加 DWDM 等設(shè)備直接進(jìn)行光纖連接,超過 100 公里的距離則可增加存儲(chǔ)路由器進(jìn)行協(xié)議轉(zhuǎn)換途徑 WAN 或 INTERNET 實(shí)現(xiàn)連接,因此從理論上可實(shí)現(xiàn)無限制連接。存儲(chǔ)系統(tǒng)層的數(shù)據(jù)復(fù)制技術(shù)對(duì)于主機(jī)的操作系統(tǒng)是完全透明的,是對(duì)于將來增加新的操作平臺(tái),可不用增加任何復(fù)制軟件的投資,即可完成實(shí)現(xiàn)復(fù)制。這樣管理比較簡(jiǎn)單,最大程度保護(hù)了用戶的投資,達(dá)到充分利用資源的目的。基于存儲(chǔ)的復(fù)制一般都是采 ATM 或光纖通道做為遠(yuǎn)端的鏈路連接,不僅可以做到異步復(fù)制,更可以做到同步復(fù)制,使兩端數(shù)據(jù)可做

5、到實(shí)時(shí)同步的目的,保證了數(shù)據(jù)的一致性。缺點(diǎn)是由于基于存儲(chǔ)是由存儲(chǔ)硬件廠商提供的,在兼容性方面有局限性。用戶要使用同一廠商的 devices,給用戶造成的選擇面太小,成本容易提高,并且對(duì)線路帶寬的要求通常也較高。對(duì)于預(yù)算充足,存儲(chǔ)環(huán)境不是很復(fù)雜的企業(yè)來說,選擇基于存儲(chǔ)的技術(shù)比較適合。存儲(chǔ)系統(tǒng)層的數(shù)據(jù)復(fù)制基于同構(gòu)的存儲(chǔ),各個(gè)存儲(chǔ)廠商都有自己的復(fù)制軟件,如舊 MPPRC、EMCSRDF、HPContinuesAccess、HDSTrueCopy 等,以下舉例說明存儲(chǔ)系統(tǒng)層的數(shù)據(jù)復(fù)制原理。遠(yuǎn)程鏡像(CA)介紹HPContinuousAccessXP 通過向遠(yuǎn)地鏡像復(fù)制數(shù)據(jù)來滿足系統(tǒng)的高可用性和災(zāi)難恢復(fù)

6、的需求。它通過同步模式,將數(shù)據(jù)從一臺(tái) XP 磁盤陣列上拷貝到遠(yuǎn)端的另一臺(tái) XP 磁盤陣列上,從而實(shí)現(xiàn)容災(zāi)解決方案。ContinuousAccessXPExtension 使 ContinuousAccessXP 能夠以高性能的異步或同步方式進(jìn)行遠(yuǎn)程 XP 磁盤陣列的拷貝。根據(jù)標(biāo)書中的要求,必須同時(shí)提供同步和異步的存儲(chǔ)復(fù)制方式,CA 完全滿足。CA 是基于磁盤陣列的容災(zāi)方式。 其中, CA 能夠?qū)崿F(xiàn)同步/異步、 同城集群/洲際集群, 以及 SolarisAIX、 Windows各種 OS 集群擴(kuò)展,還可以實(shí)現(xiàn)新 XP 到新 XP、老 XP 到新 XP 以及多中心容災(zāi)等功能,全面實(shí)現(xiàn)了可用性與可擴(kuò)

7、展性的結(jié)合。CA 同步加上 CA 異步,在本地和遠(yuǎn)程 XP 磁盤陣列之間實(shí)現(xiàn)高性能實(shí)時(shí)遠(yuǎn)程數(shù)據(jù)鏡像,以及快速切換及回切,使用戶能輕松管理,并實(shí)現(xiàn)高可用性。CA 同步方式的距離可以達(dá)到 100 公里,但是從性能的角度出發(fā),一般都控制在 50 公里內(nèi)??梢越ㄔO(shè)同城容災(zāi)集群,消除計(jì)劃宕機(jī)時(shí)間,降低非計(jì)劃的宕機(jī)時(shí)間;異步方式的距離可以達(dá)到數(shù)千公里,可以集成遠(yuǎn)程數(shù)據(jù)鏡像和異構(gòu)服務(wù)器的集群,增強(qiáng)總體方式的可用性,在同城災(zāi)難發(fā)生的時(shí)候,保證連續(xù)運(yùn)作。其中,洲際集群沒有距離的限制,對(duì)應(yīng)用和數(shù)據(jù)完全透明,可實(shí)現(xiàn)全球范圍的容災(zāi)方案。同時(shí),針對(duì)關(guān)鍵用戶的特殊需求,CA 可以實(shí)現(xiàn)多中心容災(zāi)解決方案,其中,同步容災(zāi)中心

8、的距離可以達(dá)到 50 公里,異步中心可以在全球的任何一個(gè)地方,至少有三個(gè)中心有鏡像的數(shù)據(jù),而且三個(gè)中心之間可以實(shí)現(xiàn)遠(yuǎn)程容災(zāi)。(1)CAXP 磁盤卷組CAXP 的磁盤卷組由不同的 XP 裝置內(nèi)或不同 CLUSTER 內(nèi)命名為 P-VOL 和 S-VOL 的 2個(gè)邏輯磁盤卷構(gòu)成。在具有 CAXP 磁盤卷組關(guān)系后:P-VOL 被稱為主磁盤卷。P-VOL 可被讀/寫。S-VOL(遠(yuǎn)程磁盤卷)被稱為副磁盤卷。在 XP 內(nèi)部的控制裝置的作用下,P-VOL 的內(nèi)容和服務(wù)器來的寫數(shù)據(jù)被拷貝到 S-VOL (可采用同步或異步兩種方式) CAXP 卷組建立后, S-VOL 為只讀磁盤卷。 在一個(gè) XP 里, 既可

9、有 P-VOL,也可有 S-VOL,這樣可以實(shí)現(xiàn)雙向數(shù)據(jù)境像。CAXP 的磁盤卷組,即 P-VOL 和 S-VOL 間,可以是相同的 RAID 類型,也可以是不同的 RAID 類型,具體的 RAID 級(jí)別配合表如下所示:ForP-VOLForS-VOLRAID1RAID1RAID5RAID5RAID1RAID5RAID5RAID1CAXP 的 RAID 級(jí)別MCU 和 RCUMCU(主磁盤控制器)和 RCU(遠(yuǎn)程磁盤控制器)分別和 P-VOL,S-VOL 相連,MCU 控制由服務(wù)器來的寫向 P-VOL的數(shù)據(jù)的寫操作,還控制 P-VOL 和 S-VOL 之間數(shù)據(jù)拷貝的操作,并且提供 CAXP 磁

10、盤卷組的狀態(tài)和構(gòu)成的管理。RCU 執(zhí)行由 MCU 發(fā)出的寫命令操作。寫操作的執(zhí)行方法和執(zhí)行服務(wù)器來的寫操作過程相同。除此之外,RCU 還具有管理一部分 CAXP 磁盤卷組的狀態(tài)和構(gòu)成信息的能力。對(duì)于任何一個(gè)磁盤卷組,都需要定義 MCU/RCU。一個(gè) XP 的磁盤控制裝置在控制 P-VOL時(shí),可作為 MCU 使用,當(dāng)控制 S-VOL 的時(shí)侯,可作為 RCU 使用。(3)CA 的同步和異步復(fù)制基于存儲(chǔ)的數(shù)據(jù)復(fù)制,主要有同步數(shù)據(jù)復(fù)制和異步數(shù)據(jù)復(fù)制兩種。同步數(shù)據(jù)復(fù)制,指通過將本地生產(chǎn)數(shù)據(jù)以完全同步的方式復(fù)制到異地,每一本地需等待遠(yuǎn)程復(fù)制的完成方予以釋放。IO 交易均同步復(fù)制方式的傳輸距離限制:FC 光

11、纖通道最大傳輸距離為 10KM;ESCON 通過中繼方式最大可傳輸 43KM;異步數(shù)據(jù)復(fù)制則是指將本地生產(chǎn)數(shù)據(jù)以后臺(tái)同步的方式復(fù)制到異地,每一本地常釋放,無需等待遠(yuǎn)程復(fù)制的完成。ttataActtataAcknCulecfgknCulecfgemeittemeitt異步方式的數(shù)據(jù)復(fù)制UtforksiaJionServerSynchronousReplieatianSynchronousReplieatianHIDataWaDataWaChtaChtaA&krKuuledgenheA&krKuuledgenhentnt同步方式的數(shù)據(jù)復(fù)制DWDM 方式最大傳輸距離為100KM。IO

12、 交易均正A A與ynchranousReplicationynchranousReplicationHIWorkrtalioWorkrtalio遠(yuǎn)程數(shù)據(jù)拷貝操作更新拷貝模式(FenceLevel)共有 3 種:Data、StatusNever。CAXP 卷組的狀態(tài)在變?yōu)椤癝uspend后,更新拷貝模式將會(huì)對(duì) P-VOL 的寫操作產(chǎn)生影響,在建立災(zāi)難備份系統(tǒng)方同步復(fù)制實(shí)時(shí)性強(qiáng),災(zāi)難發(fā)生時(shí)遠(yuǎn)端數(shù)據(jù)與本地?cái)?shù)據(jù)完全同步。但這種方式因?yàn)閿?shù)據(jù)在網(wǎng)絡(luò)中的傳輸延遲而影響主節(jié)點(diǎn)的應(yīng)用性能。異步復(fù)制則不然,但可能導(dǎo)致災(zāi)備點(diǎn)數(shù)據(jù)比主點(diǎn)數(shù)據(jù)有一定延遲,這些延遲的數(shù)據(jù)在災(zāi)難發(fā)生后將丟失。由此可見,同步方式和異步方式實(shí)

13、際上是各有千秋,需要依據(jù)具體的應(yīng)用,在應(yīng)用性能和潛在的可能丟失數(shù)據(jù)量之間作一個(gè)取舍和均衡。(4)CAXP 卷組的更新拷貝模式在組建災(zāi)難備份系統(tǒng)時(shí),往往是假定正在使用的主中心的存儲(chǔ)數(shù)據(jù)受到毀壞。這時(shí)啟動(dòng)遠(yuǎn)程備份中心的備份存儲(chǔ)系統(tǒng),來接替主中心的工作或從備份存儲(chǔ)設(shè)備中把數(shù)據(jù)恢復(fù)到主中心端,在主中心重新啟動(dòng)應(yīng)用。不論使用哪種方法,遠(yuǎn)程備份中心的備份數(shù)據(jù)與主中心端數(shù)據(jù)的一致性將會(huì)決定災(zāi)難恢復(fù)的時(shí)間。在災(zāi)難發(fā)生后,為了盡可能減少花在數(shù)據(jù)一致性分析上的時(shí)間,以 XP1024 存儲(chǔ)為例,XP1024 提供用于災(zāi)難備份的 CAXP 磁盤卷組的拷貝模式的設(shè)定選擇來加快事后分析數(shù)據(jù)的一致性。theS-VOLtos

14、uspendedP-VOLwillbe:l 更新拷貝模式:Data在這個(gè)模式下,P-VOL 和 S-VOL 的一致性會(huì)完全被保證。當(dāng)兩個(gè)卷組之間不能保證同步時(shí),即當(dāng)卷組狀態(tài)變?yōu)?Suspend 時(shí),MCU 將會(huì)拒絕對(duì)服務(wù)器對(duì)P-VOL 的寫操作以保證兩個(gè)磁盤卷的一致性。這種模式在災(zāi)害發(fā)生時(shí)將會(huì)最大限度的減少數(shù)據(jù)一致性分析所花的時(shí)間。(注:初期拷貝完成之前,如果災(zāi)害發(fā)生,將導(dǎo)致 P-VOL 和S-VOL 的數(shù)據(jù)不一致,因此不能把 S-VOL 用于災(zāi)害恢復(fù))。在 Data 這種拷貝模式下,一旦 FC 線路或 S-VOL 出現(xiàn)故障,都將使 P-VOL 的寫操作停止,并向系統(tǒng)發(fā)出寫錯(cuò)誤信息中斷系統(tǒng)的應(yīng)

15、用。l 更新拷貝模式:Status當(dāng) MCU 檢測(cè)出 CAXP 卷組之間失去同步后,且無法將 S-VOL 的狀態(tài)改變?yōu)?Suspend時(shí),MCU 會(huì)拒絕服務(wù)器向 P-VOL 的寫操作,并對(duì)服務(wù)器發(fā)出寫錯(cuò)誤的信息。當(dāng) FC 鏈路失效時(shí)這種模式會(huì)起作用,如果客戶認(rèn)為 S-VOL 的偶爾失去同步是可容忍的,這種模式可被使用。當(dāng) S-VOL 由于某種原因失效時(shí),并且卷組狀態(tài)成功地變?yōu)?Suspend 時(shí), P-VOL 的讀寫操作可繼續(xù)進(jìn)行, 這時(shí) P-VOL 里更新過的磁道會(huì)被記錄下來, 當(dāng) S-VOL被恢復(fù)后,更新數(shù)據(jù)不會(huì)自動(dòng)的被拷貝到 S-VOL,而需要重新同步這個(gè)卷組,數(shù)據(jù)的更新拷貝才會(huì)被執(zhí)行。

16、l 更新拷貝模式:Never在 CAXP 卷組失去同步后,無論 S-VOL 的狀態(tài)能否被改為 Suspend,服務(wù)器對(duì) P-VOL的寫操作不會(huì)被中止。在這種模式下,只要 P-VOL 自己不出現(xiàn)故障,服務(wù)器傳來的寫操作就會(huì)被執(zhí)行。當(dāng) FCLink或 S-VOL 由于某種原因失效后,P-VOL的更新磁道將會(huì)被 MCU 記錄下來。故障排除后,用卷組激活命令可重新同步 P-VOL 和S-VOL,這時(shí),只拷貝 P-VOL 里的更新磁道。Data 及 Status 模式對(duì)保持?jǐn)?shù)據(jù)一致性非常有好處的,但在線路或遠(yuǎn)端 XP1024 故障時(shí)會(huì)對(duì)主服務(wù)器造成造成一定的影響,甚至導(dǎo)致應(yīng)用系統(tǒng)掛起。TypeofFai

17、lureS-VOLDataS-VOLStatusNeverTheupdatecopyoperationfailed,andtheMCUwasnotabletochangethestatusoftheS-VOLtosuspendedWriteI/OoperationstotheP-VOLwillbe:REJECTAcceptedAcceptedTheupdatecopyoperationfailed,andtheMCUwasnotabletochangethestatusofWriteI/OoperationstotheREJECTEREJECTEDAccepte案時(shí),應(yīng)預(yù)先考慮好 CAXP 卷

18、組的一致性要求,對(duì)應(yīng)的拷貝模式可由下表選出:d在這種拷貝模式下建立起來的 CAXP 鏡像卷組,即使在光纖或 S-VOL 故障引起 P-VOL 和 S-VOL 鏡象卷組失去同步后,只要 P-VOL 沒有遭到損壞,MCU 就不會(huì)據(jù)絕服務(wù)器對(duì) P-VOL 發(fā)出的寫操作。從服務(wù)器端來看,P-VOL 對(duì) S-VOL 鏡象卷的數(shù)據(jù)更新象在正常進(jìn)行,服務(wù)器的應(yīng)用也不會(huì)被中斷。當(dāng)出現(xiàn)光纖、DWDM、遠(yuǎn)地備份中心 XP1024 停電等故障時(shí),因?yàn)椴挥绊憫?yīng)用的運(yùn)行,所以沒有必要象“DATA 那樣強(qiáng)制中斷 CAXP 卷組的工作。同時(shí)必須在網(wǎng)管上采用必要手段,監(jiān)控 XP1024Pair 的狀態(tài)。一旦 Pair 狀態(tài)變

19、成非 duplex,必須盡快采取措施進(jìn)行修復(fù),否則一旦發(fā)生災(zāi)難,由于遠(yuǎn)地的 XP1024CA 拷貝與主 site 的數(shù)據(jù)不同步,災(zāi)難系統(tǒng)切換將會(huì)失敗,導(dǎo)致不必要的停機(jī)。虛擬存儲(chǔ)技術(shù)的介紹近年來,隨著存儲(chǔ)技術(shù)的不斷發(fā)展,在存儲(chǔ)系統(tǒng)層次數(shù)據(jù)復(fù)制技術(shù)上還出現(xiàn)基于網(wǎng)絡(luò)的存儲(chǔ)虛擬化設(shè)備來實(shí)現(xiàn),這種方式的特點(diǎn)是依靠外加的網(wǎng)絡(luò)層設(shè)備來實(shí)現(xiàn)兩個(gè)存儲(chǔ)設(shè)備之間的數(shù)據(jù)復(fù)制,數(shù)據(jù)復(fù)制過程不占用主機(jī)資源,兩個(gè)存儲(chǔ)之間的數(shù)據(jù)同步在網(wǎng)絡(luò)層完成。根據(jù)存儲(chǔ)虛擬化設(shè)備工作機(jī)制的不同,一般可分為帶內(nèi)(In-Band)和帶外(Out-of-Band)兩種。上圖所示為常見存儲(chǔ)虛擬化設(shè)備的系統(tǒng)結(jié)構(gòu)圖。存儲(chǔ)虛擬化設(shè)備通過交換機(jī)分別連接主機(jī)

20、端Fabric 和存儲(chǔ)端 Fabric,主要功能是管理對(duì)存儲(chǔ)設(shè)備上的邏輯卷,對(duì)已有邏輯卷進(jìn)行虛擬化或創(chuàng)建虛擬的條帶卷,消除存儲(chǔ)設(shè)備異構(gòu)對(duì)主機(jī)系統(tǒng)的影響,提高存儲(chǔ)設(shè)備的可用性和總體性能。另外一個(gè)功能就是卷復(fù)制和鏡像,通過存儲(chǔ)虛擬化設(shè)備實(shí)現(xiàn)兩個(gè)虛擬卷之間的數(shù)據(jù)安全保護(hù)。通過存儲(chǔ)虛擬化設(shè)備實(shí)現(xiàn)卷鏡像復(fù)制功能的優(yōu)勢(shì)在于操作由存儲(chǔ)虛擬化設(shè)備來完成、壓力集中的存儲(chǔ)虛擬化設(shè)備上,不需要主機(jī)參與,數(shù)據(jù)復(fù)制進(jìn)程安全穩(wěn)定。缺點(diǎn)是需要增加專用存儲(chǔ)虛擬化設(shè)備,帶外方式有的需要在主機(jī)端需要安裝存儲(chǔ)虛擬化設(shè)備的客戶端軟件,比如 UITSVM;有的需要依賴高端智能交換機(jī),比如 EMCVSM。目前使用這種技術(shù)的產(chǎn)品還不是很多

21、,成熟性還有待提高,具有這種功能的專用設(shè)備價(jià)格也相對(duì)較高,所以采用這種方案的用戶比較少。2、操作系統(tǒng)數(shù)據(jù)復(fù)制主要通過操作系統(tǒng)或者數(shù)據(jù)卷管理器來實(shí)現(xiàn)對(duì)數(shù)據(jù)的遠(yuǎn)程復(fù)制。這種復(fù)制技術(shù)要求本地系統(tǒng)和遠(yuǎn)端系統(tǒng)的主機(jī)是同構(gòu)的,其實(shí)現(xiàn)方式是基于主機(jī)的數(shù)據(jù)復(fù)制,容災(zāi)方式工作在主機(jī)的卷管理器這一層,通過磁盤卷的鏡像或復(fù)制,實(shí)現(xiàn)數(shù)據(jù)的容災(zāi)。這種方式也不需要在兩邊采用同樣的存儲(chǔ)設(shè)備,具有較大的靈活性,缺點(diǎn)是復(fù)制功能會(huì)多少占用一些主機(jī)的 CPU 資源,對(duì)主機(jī)的性能有一定的影響。目前基于原廠的邏輯卷管理軟件如舊 MAIXLVM、HP-UINXMirrorDisk、SunSolarisSVM等可以實(shí)現(xiàn)在本廠平臺(tái)上的邏輯卷

22、鏡像,專業(yè)的數(shù)據(jù)復(fù)制軟件提供了更大的靈活性,支持多個(gè)平臺(tái)的邏輯卷鏡像,其中代表性的軟件是 SymantecVERITASStorageFoundation 軟件。SymantecVERITASStorageFoundation 簡(jiǎn)介(1)Symantec 遠(yuǎn)程鏡像數(shù)據(jù)容災(zāi)原理Symantec 的 VERITASStorageFoundation 的鏡像技術(shù)構(gòu)建容災(zāi)系統(tǒng)是比較簡(jiǎn)單的,它只有一個(gè)條件,就是將生產(chǎn)中心和災(zāi)備中心之間的 SAN 存儲(chǔ)區(qū)域網(wǎng)絡(luò)通過光纖連接起來,建立城域 SAN 存儲(chǔ)網(wǎng)絡(luò)。 然后就可以通過 StorageFoundation 提供的非常成熟的跨陣列磁盤鏡像技術(shù)來實(shí)現(xiàn)同城容災(zāi)

23、了,容災(zāi)方案的結(jié)構(gòu)如下圖所示:從鏡像原理上講,在城域 SAN 存儲(chǔ)網(wǎng)絡(luò)上的兩套磁盤系統(tǒng)之間的鏡像,和在一個(gè)機(jī)房?jī)?nèi)的SAN 上的兩個(gè)磁盤系統(tǒng)之間的鏡像并沒有任何區(qū)別。利用裸光纖將生產(chǎn)中心和災(zāi)備中心的 SAN 網(wǎng)絡(luò)連接起來,構(gòu)成城域 SAN 網(wǎng)絡(luò)以后,利用VERITASStorageFoundation 的邏輯卷管理功能,就可以實(shí)現(xiàn)生產(chǎn)中心磁盤系統(tǒng)和災(zāi)備中心磁盤系統(tǒng)之間的鏡像了。如下圖所示:在邏輯卷鏡像過程中,利用 VERITASStorageFoundation,可以創(chuàng)建任意一個(gè)邏輯卷(Volume)供業(yè)務(wù)主機(jī)使用,實(shí)際上是由兩個(gè)完全對(duì)等的,容量相同的磁盤片構(gòu)成的,兩個(gè)磁盤片上的數(shù)據(jù)完全一樣,業(yè)

24、務(wù)主機(jī)對(duì)該 Volume 的任意修改,都將同時(shí)被寫到位于生產(chǎn)中心和災(zāi)備中心的兩個(gè)磁盤系統(tǒng)上。采用這種方式,生產(chǎn)中心的磁盤陣列與同城容災(zāi)中心的磁盤陣列對(duì)于兩地的主機(jī)而言是完全同等的。利用城域SAN 存儲(chǔ)網(wǎng)絡(luò)和 VERITASStorageFoundation 鏡像功能,可以實(shí)現(xiàn)數(shù)據(jù)系統(tǒng)的異地容災(zāi)。并且消除了復(fù)制技術(shù)(無論是同步還是異步)的切換的動(dòng)作,從而保證零停機(jī)時(shí)間,零數(shù)據(jù)損失的實(shí)現(xiàn)。(2)Symantec 遠(yuǎn)程鏡像數(shù)據(jù)容災(zāi)的技術(shù)特點(diǎn)l 零停機(jī)時(shí)間和零數(shù)據(jù)損失由于 StorageFoundation 采用的是跨異構(gòu)陣列的鏡像技術(shù),而鏡像技實(shí)現(xiàn)原理,就決定了在這種方式下,無論是哪一邊的磁盤陣列由

25、于物理故障停頓,都不會(huì)影響數(shù)據(jù)的可用性而造成數(shù)據(jù)的損失,這從根本上實(shí)現(xiàn)了在物理故障的情況下,數(shù)據(jù)的高度可用性。l 故障修復(fù)后的快速重新同步StorageFoundation 提供的鏡像技術(shù),是基于日志的鏡像技術(shù),無論由于主機(jī)發(fā)生故障,還是由于鏡像中的鏈路或是硬盤發(fā)生故障導(dǎo)致的鏡像被破壞的情況,都可以通過鏡像日至得以快速恢復(fù)。這使得鏡像恢復(fù)過程對(duì)系統(tǒng)的性能影響微乎其微。l 跨磁盤陣列快照,實(shí)現(xiàn)邏輯錯(cuò)誤快速恢復(fù)和容災(zāi)中心數(shù)據(jù)利用StorageFoundation 提供基于卷,以及文件系統(tǒng)的多種快照技術(shù),其邏輯輯快照可采用少量磁盤空間,快速,多次的對(duì)文件系統(tǒng),或者是卷作快照。因而,當(dāng)用戶出現(xiàn)數(shù)據(jù)的邏

26、輯錯(cuò)誤時(shí),利用快照就可以迅速恢復(fù)文件系統(tǒng)或卷。這在數(shù)據(jù)保護(hù)的體系,大大的彌補(bǔ)了傳統(tǒng)備份恢復(fù)保護(hù)方式速度慢的缺陷,從而把數(shù)據(jù)損失量降到最低限度。同時(shí),數(shù)據(jù)快照還被廣泛的利用在容災(zāi)中心數(shù)據(jù)利用方面,比如可以通過快照實(shí)現(xiàn)數(shù)據(jù)備份、查詢、測(cè)試等。l 數(shù)據(jù)同步過程高度可控StorageFoundationRemoterMirror 提供完整的容災(zāi)命令集,在數(shù)據(jù)同步的過程中,可以隨時(shí)得知同步的進(jìn)度,并可隨時(shí)暫停、繼續(xù)數(shù)據(jù)同步。4、數(shù)據(jù)庫(kù)數(shù)據(jù)復(fù)制數(shù)據(jù)庫(kù)數(shù)據(jù)復(fù)制技術(shù)通常采用日志復(fù)制功能,依靠本地和遠(yuǎn)程主機(jī)間的日志歸檔與傳遞來實(shí)現(xiàn)兩端的數(shù)據(jù)一致。這種復(fù)制技術(shù)對(duì)系統(tǒng)的依賴性小,有很好的兼容性。缺點(diǎn)是本地復(fù)制軟件向

27、遠(yuǎn)端復(fù)制的是日志文件,這需要遠(yuǎn)端應(yīng)用程序重新執(zhí)行和應(yīng)用才能生產(chǎn)可用的備份數(shù)據(jù)。目前基于數(shù)據(jù)庫(kù)的復(fù)制技術(shù)主要有:OracleDataGuard、OracleGoldenGate、DSGRealSync、QuestSharePlex、IStreamDDS 等,以下舉例說明該復(fù)制技術(shù)的運(yùn)行原理。DataGuard 軟件介紹OracleDataGuard 是管理、監(jiān)控和自動(dòng)化軟件的基礎(chǔ)架構(gòu),它創(chuàng)建、維護(hù)和監(jiān)控一個(gè)或多個(gè)備用數(shù)據(jù)庫(kù),以保護(hù)企業(yè)數(shù)據(jù)結(jié)構(gòu)不受故障、災(zāi)難、錯(cuò)誤和崩潰的影響。DataGuard 使備用數(shù)據(jù)庫(kù)保持為與生產(chǎn)數(shù)據(jù)庫(kù)在事務(wù)上一致的副本。這些備用數(shù)據(jù)庫(kù)可能位于距生產(chǎn)數(shù)據(jù)中心數(shù)千英里的遠(yuǎn)程災(zāi)

28、難恢復(fù)站點(diǎn),或者可能位于同一城市、同一校園乃至同一建筑物內(nèi)。當(dāng)生產(chǎn)數(shù)據(jù)庫(kù)由于計(jì)劃中斷或意外中斷而變得不可用時(shí),DataGuard 可以將任意備用數(shù)據(jù)庫(kù)切換到生產(chǎn)角色,從而使與中斷相關(guān)的停機(jī)時(shí)間減到最少,并防止任何數(shù)據(jù)丟失。作為 Oracle 數(shù)據(jù)庫(kù)企業(yè)版的一個(gè)特性推出的 DataGuard 能夠與其他的 Oracle 高可用性(HA)解決方案(如真正應(yīng)用集群(RAC)和恢復(fù)管理器(RMAN)結(jié)合使用,以提供業(yè)內(nèi)前所未有的高水平數(shù)據(jù)保護(hù)和數(shù)據(jù)可用性。-(1)DataGuard 重做應(yīng)用和 SQL 應(yīng)用備用數(shù)據(jù)庫(kù)最初是從主數(shù)據(jù)庫(kù)的一個(gè)備份副本創(chuàng)建的。一旦創(chuàng)建了備用數(shù)據(jù)庫(kù),DataGuard自動(dòng)將主

29、數(shù)據(jù)庫(kù)重做數(shù)據(jù)傳輸給備用系統(tǒng),然后將重做數(shù)據(jù)應(yīng)用到備用數(shù)據(jù)庫(kù)中,從而使備用數(shù)據(jù)庫(kù)保持為與主數(shù)據(jù)庫(kù)在事務(wù)上一致的副本。DataGuard 提供了兩種方法將這些重做數(shù)據(jù)應(yīng)用到備用數(shù)據(jù)庫(kù)中,并使之與主數(shù)據(jù)庫(kù)在事務(wù)上保持一致。這些方法與 DataGuard 支持的兩種類型的備用數(shù)據(jù)庫(kù)對(duì)應(yīng):重做應(yīng)用,用于物理備用數(shù)據(jù)庫(kù) SQL 應(yīng)用,用于邏輯備用數(shù)據(jù)庫(kù)(2)物理備用數(shù)據(jù)庫(kù)一重做應(yīng)用通過使用 Oracle 介質(zhì)恢復(fù)應(yīng)用從主數(shù)據(jù)庫(kù)接收到的重做數(shù)據(jù),物理備用數(shù)據(jù)庫(kù)與主數(shù)據(jù)庫(kù)保持同步。它在物理上與主數(shù)據(jù)庫(kù)逐塊相同,因而數(shù)據(jù)庫(kù)模式(包括索引)是相同的。主數(shù)據(jù)庫(kù)上的一個(gè)日志切換將觸發(fā)備用數(shù)據(jù)庫(kù)上的一個(gè)日志切換,從而

30、使備用數(shù)據(jù)庫(kù)上的歸檔器進(jìn)程將當(dāng)前的備用重做日志文件歸檔到備用數(shù)據(jù)庫(kù)上的一個(gè)存檔日志中。隨后,DataGuard 重做應(yīng)用使用一個(gè)專用進(jìn)程(稱為管理的恢復(fù)進(jìn)程(MRP)讀取存檔日志,并將重做數(shù)據(jù)應(yīng)用到物理備用數(shù)據(jù)庫(kù)中。如果啟用了 OracleDatabase10g 中的 OracleDataGuard 的新功能一實(shí)時(shí)應(yīng)用,則 MRP 將在 RFS 進(jìn)程寫滿當(dāng)前的備用重做日志文件時(shí)直接從其中讀取重做數(shù)據(jù)。通過加載物理備用數(shù)據(jù)庫(kù)并使用以下命令,可以在該數(shù)據(jù)庫(kù)上啟動(dòng) MRP(從而應(yīng)用重做數(shù)據(jù)):ALTERDATABASERECOVERMANAGEDSTANDBYDATABASEDISCONNECTFR

31、OMSESSION;介質(zhì)恢復(fù)進(jìn)程可以并行運(yùn)行,以獲得 DataGuard 重做應(yīng)用的最佳性能。在 OracleDatabase10g 之前的版本中,這需要在上述 RECOVERMANAGEDSTANDBYDATABASE 命令中使用 PARALLEL 子句。在 OracleDatabase10g 中,MRP 可以在啟動(dòng)(無需 PARALLEL 子句)時(shí)自動(dòng)確定并行恢復(fù)進(jìn)程的最佳數(shù)量,這個(gè)數(shù)字視備用服務(wù)器上可用的 CPU 數(shù)量而定。物理備用數(shù)據(jù)庫(kù)可以以只讀方式打開,并且可以在其打開時(shí)對(duì)其運(yùn)行查詢,但無法在其以只讀方式打開的同時(shí)運(yùn)行恢復(fù)。在備用數(shù)據(jù)庫(kù)以只讀方式打開時(shí),傳送給它的重做數(shù)據(jù)將在備用站點(diǎn)

32、上累積而不應(yīng)用。不過,可以隨時(shí)在物理備用數(shù)據(jù)庫(kù)上恢復(fù)操作,并自動(dòng)應(yīng)用累積的重做數(shù)據(jù)。這允許物理備用數(shù)據(jù)庫(kù)以一個(gè)序列運(yùn)行,這個(gè)序列可能包括在恢復(fù)中運(yùn)行一段時(shí)間,然后以只讀方式打開來運(yùn)行報(bào)表,接著重新運(yùn)行恢復(fù)來應(yīng)用尚未應(yīng)用的重做數(shù)據(jù)。要以只讀方式打開物理備用數(shù)據(jù)庫(kù),則需使用以下命令在備用數(shù)據(jù)庫(kù)上取消恢復(fù):ALTERDATABASERECOVERMANAGEDSTANDBYDATABASECANCEL;然后可以只讀方式打開數(shù)據(jù)庫(kù):ALTERDATABASEOPEN。(3)邏輯備用數(shù)據(jù)庫(kù)-SQL 應(yīng)用盡管數(shù)據(jù)的物理組織和結(jié)構(gòu)可能不同,但邏輯備用數(shù)據(jù)庫(kù)包含與主數(shù)據(jù)庫(kù)相同的邏輯信息。SQL 應(yīng)用技術(shù)將從主

33、數(shù)據(jù)庫(kù)接收到的重做數(shù)據(jù)轉(zhuǎn)換成 SQL 語(yǔ)句,然后在備用數(shù)據(jù)庫(kù)上執(zhí)行 SQL 語(yǔ)句,以使邏輯備用數(shù)據(jù)庫(kù)與主數(shù)據(jù)庫(kù)保持同步。從而,在將 SQL 應(yīng)用到邏輯備用數(shù)據(jù)庫(kù)上的同時(shí),可以訪問邏輯備用數(shù)據(jù)庫(kù)來進(jìn)行查詢和報(bào)表操作。由于使用 SQL 語(yǔ)句更新邏輯備用數(shù)據(jù)庫(kù),因此它保持以讀寫模式打開,而從主數(shù)據(jù)庫(kù)中更新的表可以同時(shí)用于諸如報(bào)表、合計(jì)、查詢等其他任務(wù)如。.還可通過在維護(hù)的表上創(chuàng)建額外的索引和物化視圖來優(yōu)化這些任務(wù)。邏輯備用數(shù)據(jù)庫(kù)可以承載多個(gè)數(shù)據(jù)庫(kù)模式,用戶可以對(duì)這些模式中不從主數(shù)據(jù)庫(kù)進(jìn)行更新的表上執(zhí)行普通的數(shù)據(jù)處理操作。SQL 應(yīng)用使用許多并行的執(zhí)行服務(wù)器和后臺(tái)進(jìn)程,它們將來自主數(shù)據(jù)庫(kù)的更改應(yīng)用到邏

34、輯備用數(shù)據(jù)庫(kù)中。下圖顯示了信息流和每一個(gè)進(jìn)程所起的作用。這些不同的 SQL 應(yīng)用進(jìn)程可以通過在邏輯備用數(shù)據(jù)庫(kù)上輸入這條簡(jiǎn)單的命令來啟動(dòng):ALTERDATABASESTARTLOGICALSTANDBYAPPLY;出于每個(gè) SQL 應(yīng)用進(jìn)程的考慮, 讀取器進(jìn)程從存檔日志 (如果啟用了實(shí)時(shí)應(yīng)用,也可以是備用重做日志,)中讀取重做記錄。準(zhǔn)備器進(jìn)程將塊更改轉(zhuǎn)換成表更改或邏輯更改記錄(LCR)。在這里,LCR 并不代表任何特定的事務(wù)。構(gòu)造器進(jìn)程對(duì)來自各個(gè) LCR 的已完成事務(wù)進(jìn)行組合。分析器進(jìn)程檢查完成的事務(wù),辨明不同事務(wù)之間的相關(guān)性。協(xié)調(diào)器進(jìn)程(也稱為邏輯備用進(jìn)程,即 LSP)負(fù)責(zé)將事務(wù)分配給應(yīng)用進(jìn)程

35、、監(jiān)控事務(wù)之間的相關(guān)性以及批準(zhǔn)將更改提交給邏輯備用數(shù)據(jù)庫(kù)。應(yīng)用器進(jìn)程將已指定事務(wù)的 LCR 應(yīng)用到數(shù)據(jù)庫(kù)中,并在協(xié)調(diào)器指示提交事務(wù)時(shí)提交。DataGuard 提供視圖來幫助查看每個(gè)進(jìn)程的狀態(tài)。(4)DataGuard 數(shù)據(jù)保護(hù)模式l 最大保護(hù)模式最大保護(hù)模式為主數(shù)據(jù)庫(kù)提供了最高水平的數(shù)據(jù)保護(hù),從而確保了一個(gè)全面的零數(shù)據(jù)丟失災(zāi)難恢復(fù)解決方案。當(dāng)在最大保護(hù)模式下運(yùn)行時(shí),重做記錄由日志寫入器(LGWR)進(jìn)程從主數(shù)據(jù)庫(kù)同步地傳輸?shù)絺溆脭?shù)據(jù)庫(kù),并且直到確認(rèn)事務(wù)數(shù)據(jù)在至少一個(gè)備用服務(wù)器上的磁盤上可用時(shí),才在主數(shù)據(jù)庫(kù)上提交事務(wù)。強(qiáng)烈建議,這種模式應(yīng)至少配置兩個(gè)備用數(shù)據(jù)庫(kù)。當(dāng)最后參與的備用數(shù)據(jù)庫(kù)不可用時(shí),主數(shù)

36、據(jù)庫(kù)上的處理將停止。這就確保了當(dāng)主數(shù)據(jù)庫(kù)與其所有備用數(shù)據(jù)庫(kù)失去聯(lián)系時(shí),不會(huì)丟失事務(wù)。由于重做傳輸?shù)耐教匦?,這種最大保護(hù)模式可能潛在地影響主數(shù)據(jù)庫(kù)響應(yīng)時(shí)間。可以通過配置一個(gè)低延遲網(wǎng)絡(luò), 并為它分配足夠應(yīng)付高峰事務(wù)負(fù)載的帶寬來將這種影響減到最小。 需要這種最大保護(hù)模式的企業(yè)有股票交易所、貨幣交易所、金融機(jī)構(gòu)等。l 最高可用性模式最高可用性模式擁有僅次于最高水平的主數(shù)據(jù)庫(kù)數(shù)據(jù)可用性。如同最大保護(hù)模式一樣,重做數(shù)據(jù)由 LGWR 從主數(shù)據(jù)庫(kù)同步地傳輸?shù)絺溆脭?shù)據(jù)庫(kù),直到確認(rèn)事務(wù)數(shù)據(jù)在備用服務(wù)器的磁盤上可用時(shí),事務(wù)才在主數(shù)據(jù)庫(kù)上完成。不過,在這種模式下(與最大保護(hù)模式不同),如果最后參與的備用數(shù)據(jù)庫(kù)變?yōu)椴?/p>

37、可用一例如由于網(wǎng)絡(luò)連接問題,處理將在主數(shù)據(jù)庫(kù)上繼續(xù)進(jìn)行。備用數(shù)據(jù)庫(kù)與主數(shù)據(jù)庫(kù)相比,可能暫時(shí)落在后面,但當(dāng)它再次變?yōu)榭捎脮r(shí),備用數(shù)據(jù)庫(kù)將使用主數(shù)據(jù)庫(kù)上累積的歸檔日志自動(dòng)同步,而不會(huì)丟失數(shù)據(jù)。由于同步重做傳輸,這種保護(hù)模式可潛在地影響響應(yīng)時(shí)間和吞吐量??梢酝ㄟ^配置一個(gè)低延遲網(wǎng)絡(luò),并為它分配足夠應(yīng)付高峰事務(wù)負(fù)載的帶寬來將這種影響減到最小。最高可用性模式適用于想要確保獲得零數(shù)據(jù)丟失保護(hù),但不想讓生產(chǎn)數(shù)據(jù)庫(kù)受網(wǎng)絡(luò)/備用服務(wù)器故障影響的企業(yè)。如果又一個(gè)故障隨后影響了生產(chǎn)數(shù)據(jù)庫(kù),然后最初的網(wǎng)絡(luò)/備用服務(wù)器故障得到解決,那么這些企業(yè)將接受數(shù)據(jù)丟失的可能性。l 最高性能模式最高性能模式是默認(rèn)的保護(hù)模式。它與最高

38、可用性模式相比,提供了稍微少一些的主數(shù)據(jù)庫(kù)數(shù)據(jù)保護(hù),但提供了更高的性能。在這種模式下,當(dāng)主數(shù)據(jù)庫(kù)處理事務(wù)時(shí),重做數(shù)據(jù)由 LGWR 進(jìn)程異步傳輸?shù)絺溆脭?shù)據(jù)庫(kù)上。另外,也可以將主數(shù)據(jù)庫(kù)上的歸檔器進(jìn)程(ARCH)配置為在這種模式下傳輸重做數(shù)據(jù)。在任何情況下,均先完成主數(shù)據(jù)庫(kù)上的寫操作,主數(shù)據(jù)庫(kù)的提交操作不等待備用數(shù)據(jù)庫(kù)確認(rèn)接收。如果任意備用目標(biāo)數(shù)據(jù)庫(kù)變?yōu)椴豢捎茫瑒t處理將在主數(shù)據(jù)庫(kù)上繼續(xù)進(jìn)行,這對(duì)性能只有很小的影響或沒有影響。在主數(shù)據(jù)庫(kù)出現(xiàn)故障的情況下,尚未被發(fā)送到備用數(shù)據(jù)庫(kù)的重做數(shù)據(jù)會(huì)丟失。但是,如果網(wǎng)絡(luò)有足夠的吞吐量來跟上重做流量高峰,并且使用了 LGWR 進(jìn)程來將重做流量傳輸?shù)絺溆梅?wù)器,則丟失

39、的事務(wù)將非常少或者為零。當(dāng)主數(shù)據(jù)庫(kù)上的可用性和性能比丟失少量數(shù)據(jù)的風(fēng)險(xiǎn)更重要時(shí),應(yīng)該使用最高性能模式。這種模式還適合于 WAN 上的 DataGuard 部署,在 WAN 中,網(wǎng)絡(luò)的內(nèi)在延遲可能限制同步重做傳輸?shù)倪m用性?;跀?shù)據(jù)庫(kù)日志跟蹤分析的復(fù)制軟件介紹目前市場(chǎng)數(shù)據(jù)庫(kù)復(fù)制技術(shù)的工作原理大都與 Oraclelog 相關(guān),例如 DNTIDR 數(shù)據(jù)庫(kù)復(fù)制產(chǎn)品就是通過對(duì) OracleLog 日志進(jìn)行分析獲取跟蹤源系統(tǒng)的交易指令, 然后將交易指令傳到目標(biāo)端進(jìn)行重新執(zhí)行的方式來實(shí)現(xiàn)數(shù)據(jù)復(fù)制的。本文以 DNTIDR 軟件為例介紹基于數(shù)據(jù)庫(kù)日志跟蹤分析的復(fù)制原理。DNTIDR(以下簡(jiǎn)稱 IDR),是基于交易

40、的邏輯級(jí) Oracle 數(shù)據(jù)同步軟件,利用數(shù)據(jù)庫(kù)日志在線跟蹤、分析技術(shù),將生產(chǎn)數(shù)據(jù)庫(kù)的交易信息以事務(wù)為單位,通過異步的方式,實(shí)時(shí)的傳遞、裝載到目標(biāo)數(shù)據(jù)庫(kù)中,以達(dá)到源端、目標(biāo)端數(shù)據(jù)保持同步的目的。是一種準(zhǔn)實(shí)時(shí)同步軟件。該軟件具有以下特點(diǎn):lIDR 不依賴硬件的同步能力,支持多種系統(tǒng)平臺(tái),具有部署簡(jiǎn)單、同步速度快、交易延遲時(shí)間短的特點(diǎn)。lIDR 能夠支持不同 Oracle 版本之間的交易同步。lIDR 同步的目標(biāo)數(shù)據(jù)庫(kù)為在線打開狀態(tài),可以隨時(shí)復(fù)用。lIDR 適用于(異構(gòu))熱容災(zāi)、數(shù)據(jù)遷移、數(shù)據(jù)集中、數(shù)據(jù)分發(fā)、分擔(dān)業(yè)務(wù)等應(yīng)用領(lǐng)域。IDR 利用數(shù)據(jù)庫(kù)日志在線跟蹤、分析技術(shù),反向工程解析日志,將生產(chǎn)數(shù)據(jù)

41、庫(kù)的交易信息以事務(wù)為單位,通過異步的方式,實(shí)時(shí)的傳遞、裝載到目標(biāo)數(shù)據(jù)庫(kù)中,以達(dá)到源端、目標(biāo)端數(shù)據(jù)保持同步的目的。IDR 技術(shù)原理與架構(gòu)(1)IDR 的同步原理a、歷史數(shù)據(jù)同步使用快照方式:首次同步時(shí),對(duì)于同步 map 所涉及的每一個(gè)表的同步過程如下:l 鎖該表;l 記錄同步時(shí)刻的 scn;l 讀取該表數(shù)據(jù);l 在讀取該表數(shù)據(jù)時(shí)接著將該表解鎖,無需等待該表數(shù)據(jù)讀取完畢。在表做開始同步的時(shí)刻,鎖表是為了保證該表在日志中不會(huì)有交易發(fā)生,同時(shí)又因?yàn)橛涗浟藄cn,也不會(huì)有多余的交易被抓取、也不會(huì)漏掉相關(guān)交易。開始讀取數(shù)據(jù)時(shí),利用了 oracle 數(shù)據(jù)庫(kù)自身提供的多版本”特性,能夠保證讀取數(shù)據(jù)的一致性。同

42、時(shí)對(duì)該表進(jìn)行解鎖,又使該表被鎖的時(shí)間不會(huì)太長(zhǎng)從而嚴(yán)重影響正常交易。這種方式保證了源端在任何時(shí)刻下都可以進(jìn)行首次數(shù)據(jù)的批量同步而不會(huì)影響同步數(shù)據(jù)的準(zhǔn)確性。讀文件方式:首次同步時(shí),對(duì)于同步 map 所涉及的每一個(gè)表的同步過程如下:l 記錄同步時(shí)刻的 scn;l 讀取該表數(shù)據(jù);首次同步時(shí),直接從 oracle 數(shù)據(jù)文件中讀取該表數(shù)據(jù),同時(shí)記錄同步時(shí)刻的 scn,由于這種方式要求在同步過程中,沒有交易產(chǎn)生,因此會(huì)保證歷史數(shù)據(jù)抓取的準(zhǔn)確性。在同步完成后,將變化數(shù)據(jù)實(shí)時(shí)抓取。b、交易抓取IDR 通過事先創(chuàng)建的試圖來捕獲日志變化,由于每次捕獲的日志的物理位置都會(huì)記錄,因此可以得出日志變化量。后續(xù)的抓取日志、

43、分析交易、傳輸交易,完全由 IDR 獨(dú)自完成,不使用 oracle 數(shù)據(jù)庫(kù)任何資源。在每次抓取的日志量處理完成后,記錄在 IDR 的緩存目錄中,因此對(duì)于日常運(yùn)行過程中,IDR停止或其它原因需要讀取歸檔日志時(shí),根據(jù)記錄的日志物理位置來定位需要抓取的歸檔日志。IDR 抓取日志跟 oracle 數(shù)據(jù)庫(kù)是寫日志是并行操作而又互不影響。正常情況下,IDR 都是準(zhǔn)實(shí)時(shí)的抓取變化日志量。對(duì)于源端是 rac 環(huán)境來說:rac 環(huán)境中,在每一個(gè)實(shí)例所在的主機(jī)操作系統(tǒng)上可以讀取另外主機(jī)的在線日志(包括歸檔日志)。通過每一個(gè)實(shí)例的日志和 scn 來保證交易順序的準(zhǔn)確性。c、交易分析嚴(yán)格按照源端 Oracle 數(shù)據(jù)庫(kù)

44、內(nèi)部 SCN 執(zhí)行順序以及已經(jīng)提交的交易來合成交易文件,該交易文件號(hào)是依次遞增并且是唯一的,從 0 開始,交易文件號(hào)的算法跟 oracle 的 scn 算法一樣,可以保證在 oracle 數(shù)據(jù)庫(kù)正常使用期間,保證。IDR 能夠正常使用。IDR 只處理已經(jīng)完成提交的交易,對(duì)于回滾操作,IDR 不處理該操作。d、交易傳輸IDR 只傳輸交易內(nèi)容,不傳輸交易內(nèi)容的數(shù)據(jù)結(jié)構(gòu),采用專有的合成交易文件格式,只有 IDR提供的工具才可以解析交易內(nèi)容,這樣即證了在網(wǎng)絡(luò)傳輸過程中數(shù)據(jù)的安全性又可以保證網(wǎng)絡(luò)傳輸過程中數(shù)據(jù)的準(zhǔn)確性。滿足下列三種情況,源端將刪除該交易文件:l 接受的交易文件號(hào)跟源端傳輸?shù)囊粯印 接受

45、的交易文件大小跟源端傳輸?shù)囊粯印 接受的交易文件校驗(yàn)碼跟源端傳輸?shù)囊粯?。e、交易裝載目標(biāo)端接受交易合成文件后,首先存放在緩存目錄中,然后嚴(yán)格按照從小到大順序進(jìn)行裝載,裝載的交易文件不能缺失。否則裝載的進(jìn)程將一直處于等待狀態(tài),因此無論目標(biāo)端是 rac 環(huán)境還是單機(jī)環(huán)境都可以保證裝載的準(zhǔn)確性。這樣就可以保證在目標(biāo)端裝載過程中,保證按照源端合成的交易文件順序來裝載。(2)IDR 支持的同步特性a、支持的同步對(duì)象IDR 支持兩種級(jí)別數(shù)據(jù)庫(kù)對(duì)象的同步:用戶級(jí)同步、表級(jí)同步。用戶級(jí)同步:源端數(shù)據(jù)庫(kù)指定用戶及其所包含的表、視圖、索引、過程、函數(shù)、包、序列等數(shù)據(jù)對(duì)象全部同步到目標(biāo)端數(shù)據(jù)庫(kù)指定的用戶下。IDR

46、 支持源端用戶名和目標(biāo)端用戶名不同的同步方式。表級(jí)同步:表級(jí)同步分為單表同步和多表同步。單表同步指定源端數(shù)據(jù)庫(kù)指定用戶下的單個(gè)表同步到目標(biāo)端數(shù)據(jù)庫(kù)指定用戶下的單個(gè)表。多表同步,即 group 方式,針對(duì)多個(gè)用戶,每個(gè)用戶只同步指定的部分表同步的情況。b、支持的同步模式同步模式主要指源端和目標(biāo)端的架構(gòu)模式,具體分為1:1 模式、1:n 模式、n:1 模式、1:1:1 模式四種。1 對(duì) 1 的同步模式:n 對(duì) 1 同步模式:工產(chǎn)數(shù)據(jù)庫(kù)1 對(duì) n 同步模式:目標(biāo)數(shù)即座3.級(jí)聯(lián)同步:可以根據(jù)具體情況選擇或組合以上同步模式到您所需要的應(yīng)用架構(gòu)中。c、數(shù)據(jù)同步方式IDR 支持歷史數(shù)據(jù)同步、只同步變化數(shù)據(jù)同

47、步兩種方式。這兩種方式和有效結(jié)合或單獨(dú)使用。歷史數(shù)據(jù)指同步時(shí)刻已經(jīng)存在的數(shù)據(jù),歷史數(shù)據(jù)同步方式分為兩種:l 快照方式快照方式利用 oracle 的 select 的多版本特性,將歷史數(shù)據(jù)抓取到目標(biāo)端,同時(shí)可選擇將變化數(shù)據(jù)實(shí)時(shí)同步,在歷史數(shù)據(jù)裝載完成后,再裝載變化數(shù)據(jù)。歷史數(shù)據(jù)的抓取與變化數(shù)據(jù)的抓取之間無縫結(jié)合,有業(yè)務(wù)運(yùn)行也不影響數(shù)據(jù)同步的準(zhǔn)確性。相對(duì)而言,快照方式同步數(shù)據(jù)時(shí)間長(zhǎng),對(duì)于系統(tǒng)資源占有大。l 讀文件方式讀文件方式指 IDR 直接讀取 oracle 數(shù)據(jù)文件中的表數(shù)據(jù),同時(shí)可選擇變化數(shù)據(jù)實(shí)時(shí)抓取。相對(duì)而言,快照方式同步數(shù)據(jù)時(shí)間端,對(duì)于系統(tǒng)資源占有小。但是這種方式抓取歷史數(shù)據(jù)時(shí),源端系統(tǒng)

48、不能有業(yè)務(wù),否則無法保證同步數(shù)據(jù)的準(zhǔn)確性。變化數(shù)據(jù)同步有兩種應(yīng)用方式:l 與歷史數(shù)據(jù)同步方式結(jié)合IDR 支持歷史數(shù)據(jù)與變化數(shù)據(jù)無縫結(jié)合的同步模式,這種方式無需停止業(yè)務(wù)。D)S目指數(shù)者打釗生產(chǎn)數(shù)擲陣l 單獨(dú)同步變化數(shù)據(jù)。這種方式是在兩邊數(shù)據(jù)已經(jīng)一致的情況下,將某一邊數(shù)據(jù)庫(kù)現(xiàn)產(chǎn)生的交易同步到另外一邊的數(shù)據(jù)庫(kù)中。d、數(shù)據(jù)定位方式目標(biāo)端裝載交易時(shí),對(duì)于目標(biāo)端對(duì)應(yīng)數(shù)據(jù)(表的記錄)的定位方式分為 rowid 和 where 兩種方式。rowid 方式:使用 rowid 同步方式,由于在目標(biāo)端裝載時(shí)直接根據(jù) rowid 方式定位表紀(jì)錄的物理位置,不會(huì)因?yàn)閿?shù)量量的差異而影響查找紀(jì)錄的速度。使用 rowid 方式時(shí),首先必須進(jìn)行全同步+增量同步結(jié)合的模式,后續(xù)的增量數(shù)據(jù)依賴全同步數(shù)據(jù)。即使源端某些表的紀(jì)錄完全相同,則也不會(huì)影響數(shù)據(jù)的準(zhǔn)確性。Where 方式:Where 方式在目標(biāo)端裝載數(shù)據(jù)時(shí),對(duì)于目標(biāo)端對(duì)應(yīng)的數(shù)據(jù)查找依賴對(duì)應(yīng)表的where 條件,對(duì)于對(duì)應(yīng)數(shù)據(jù)的查找速度完全依賴于數(shù)據(jù)庫(kù)本身的查找速度。主要滿足兩種應(yīng)用需要:一種跟 rowid 方式相同,差別在于表的數(shù)據(jù)不能出現(xiàn)重復(fù)紀(jì)錄。另外一種方式是只同步變化數(shù)據(jù)部分。只依賴源端和目標(biāo)端相關(guān)表的數(shù)據(jù)結(jié)構(gòu)。這種方式采用 IDR 的只進(jìn)行增量同步的方式進(jìn)行。(3)IDR 同步的性能a、讀取在線日志IDR 是直接通

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論