国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

利用GoldenGate實現(xiàn)災(zāi)備

2018-11-09 01:16
網(wǎng)絡(luò)安全和信息化 2018年2期
關(guān)鍵詞:事務(wù)雙向備份

GoldenGate工作原理

傳統(tǒng)的數(shù)據(jù)庫級數(shù)據(jù)備份在遇到災(zāi)難性恢復(fù)時,往往會造成數(shù)據(jù)的丟失。想要實現(xiàn)實時的數(shù)據(jù)備份需要花費較大的硬件成本。

GoldenGate數(shù)據(jù)復(fù)制,可以實現(xiàn)在不引進(jìn)其他多種類軟硬件產(chǎn)品的同時滿足數(shù)據(jù)的實時備份,確保數(shù)據(jù)中心的數(shù)據(jù)安全,從而降低運維的復(fù)雜度和資本的投入。

在主系統(tǒng)出現(xiàn)故障時,災(zāi)備系統(tǒng)可迅速恢復(fù)和切換,可以最大限度的降低數(shù)據(jù)的丟失。

GoldenGate采用的工作原理為數(shù)據(jù)復(fù)制。它分單向數(shù)據(jù)復(fù)制和雙項復(fù)制模式。

圖1 單項數(shù)據(jù)復(fù)制

圖2 雙項數(shù)據(jù)復(fù)制

單向數(shù)據(jù)復(fù)制:利用Capture進(jìn)程在源端讀取Log,確定需要進(jìn)行的操作(增、刪、改),并通過Capture隊列將相關(guān)操作指令傳送到目標(biāo)端。目標(biāo)端的Deliver進(jìn)程用于接受相關(guān)內(nèi)容,通過Replicate進(jìn)程創(chuàng)建同步所需的SQL語句,并在目標(biāo)端執(zhí)行,如圖1所示。

雙向數(shù)據(jù)復(fù)制:源端和目標(biāo)端為Capture進(jìn)程和Deliver進(jìn)程,兩端互為源/目的數(shù)據(jù)復(fù)制對象,如圖2所示。

在配置雙向數(shù)據(jù)復(fù)制時,需要通過命令行向兩邊的數(shù)據(jù)庫中加入跟蹤表。當(dāng)Capture進(jìn)程讀到一個交易中有針對跟蹤表的更新,Capture進(jìn)程就知道這個交易是由復(fù)制進(jìn)程產(chǎn)生的并且把這筆交易忽略掉。

如果沒有針對跟蹤表的更新,Capture進(jìn)程就知道這個交易是由應(yīng)用程序產(chǎn)生的并且把這筆交易讀取出來。

GoldenGate的優(yōu)點

GoldenGate四大優(yōu)點:

1.實時性:源數(shù)據(jù)端的新請求或事務(wù),目標(biāo)端會馬上捕獲并轉(zhuǎn)換,在極短的時間內(nèi)傳遞給目標(biāo)數(shù)據(jù)庫,完成數(shù)據(jù)的同步。

2.持續(xù)可用性:

GoldenGate的運行即使遇到計劃或非計劃的服務(wù)中斷,也不影響系統(tǒng)的可用性,在服務(wù)恢復(fù)正常時,數(shù)據(jù)同步會繼續(xù)進(jìn)行。

3.多元化:GoldenGate不僅支持Oracle數(shù)據(jù)庫,還支持目前的各類主流數(shù)據(jù)庫、主流平臺等,使平臺更加的靈活。

支持的操作系統(tǒng)包括Windows、Linux、Unix、AIX等。支持的Oracle、DB2、MS SQL Server、MySQL、Sybase、其他ODBC兼容數(shù)據(jù)庫等。

4.高性能,低影響:Gold

enGate能夠支持每秒數(shù)千的事務(wù)處理,同時對源系統(tǒng)和目標(biāo)系統(tǒng)的性能影響極小。

GoldenGate關(guān)鍵進(jìn)程介紹

Manager進(jìn) 程: 是GoldenGate的控制進(jìn)程,運行在源端和目標(biāo)端,用于啟動、監(jiān)控、重啟GoldenGate其他進(jìn)程,報告錯誤等。

Extract進(jìn)程:運行在源端,負(fù)責(zé)從源數(shù)據(jù)庫表或者日志中捕獲數(shù)據(jù)庫。所有提交的事務(wù)相關(guān)的日志會被以事務(wù)為單元順序記錄到Trail文件,Extract進(jìn)程也有其內(nèi)部的Checkpoint機制,周記性記錄讀寫位置。

Checkpoint機制是為了在Extract進(jìn)程崩潰后重新啟動Extract進(jìn)程后,GoldenGate可以恢復(fù)到之前Checkpoint狀態(tài),從而從這個點繼續(xù)運行。Extract是通過上面的Trail文件和Checkpoint來保證數(shù)據(jù)的完整性。

Pump進(jìn)程:Pump進(jìn)程運行在數(shù)據(jù)庫源端,主要是在將源端產(chǎn)生的本地Trail文件,然后把Trail以數(shù)據(jù)塊形式通過TCP/IP發(fā)送到目標(biāo)端。如果不使用Trail文件,Extract進(jìn)程會抽取完數(shù)據(jù)以后,直接投遞到目標(biāo)端,生成遠(yuǎn)程Trail文件。

Trail文件:Extract抽取完數(shù)據(jù)后會將對應(yīng)的事務(wù)信息轉(zhuǎn)化為GoldenGate專有格式文件Trail,Trail文件主要是為了防止單點故障,事務(wù)信息持久化,并且使用Checkpoint機制記錄其讀寫位置,如果故障發(fā)生,則數(shù)據(jù)可以根據(jù)Checkpoint記錄的位置來重傳。

Server collector進(jìn)程:Server collector 進(jìn) 程主要是把Extract或Pump進(jìn)程投遞過來的數(shù)據(jù)組裝成遠(yuǎn)程的Trail文件,Server collector不需要我們對其進(jìn)程任何配置。

Replicat進(jìn)程:Replicat進(jìn)程運行在目標(biāo)端,主要是通過讀取目標(biāo)端的Trail文件內(nèi)容然后將其解析為對應(yīng)的dml和ddl語句,最后應(yīng)用到目標(biāo)數(shù)據(jù)庫中。

Replicat進(jìn)程也有其內(nèi)部的Checkpoint機制,保證重啟后可以從上次記錄的位置開始恢復(fù)從而保證數(shù)據(jù)一致性和安全性。

GoldenGate應(yīng)用案例及場景

1.查詢業(yè)務(wù)分離:遇到大型數(shù)據(jù)庫應(yīng)用時,我們經(jīng)常遇到由于較大數(shù)據(jù)量的查詢業(yè)務(wù),導(dǎo)致資源消耗較多,應(yīng)用較慢。

利用GoldenGate單向復(fù)制技術(shù),我們可以建立一套完整的實時查詢系統(tǒng),實現(xiàn)查詢業(yè)務(wù)的分離,減少查詢對業(yè)務(wù)系統(tǒng)的影響。

2.容災(zāi)備份:GoldenGate的數(shù)據(jù)復(fù)制,實現(xiàn)了生產(chǎn)系統(tǒng)的業(yè)務(wù)操作實時傳遞到備份系統(tǒng)中,有了生產(chǎn)數(shù)據(jù)的實時復(fù)制,可以保證應(yīng)用系統(tǒng)7*24小時不間斷運行。

當(dāng)生產(chǎn)環(huán)境出現(xiàn)緊急事件或要進(jìn)行例行維護(hù)時,可將應(yīng)用切換到復(fù)制數(shù)據(jù)庫中。例行維護(hù)結(jié)束時,可將備份系統(tǒng)的數(shù)據(jù)復(fù)制回生產(chǎn)系統(tǒng)中,確保生產(chǎn)系統(tǒng)數(shù)據(jù)的完整性。

3.負(fù)載均衡:通過GoldenGate一對多的復(fù)制,可復(fù)制多個版本的數(shù)據(jù)源,可將不同的用戶分配到不同的數(shù)據(jù)源,從而實現(xiàn)數(shù)據(jù)庫的負(fù)載均衡。

4.異地備份和區(qū)域數(shù)據(jù)同步:GoldenGate通過LAN或WAN進(jìn)行實時復(fù)制,將生產(chǎn)數(shù)據(jù)庫中的數(shù)據(jù)拷貝到需要的地方,也可在遠(yuǎn)程數(shù)據(jù)庫間進(jìn)行復(fù)制。

使用中的注意事項

雙向復(fù)制中,最主要的問題是需要防止數(shù)據(jù)的循環(huán)應(yīng)用和防止數(shù)據(jù)發(fā)生沖突。

在GoldenGate中,需要從兩方面進(jìn)行預(yù)防循環(huán)應(yīng)用的問題:

(1)防止Extract進(jìn)程抓取Replicat進(jìn)程的SQL操作。

(2) 使 Extract進(jìn) 程識別本地Replicat執(zhí)行的DML事務(wù),并進(jìn)行忽略。Oracle 10G及以上的數(shù)據(jù)庫需要在Extract進(jìn)程加入 參 數(shù) :TRANLOGOPTIONS EXCLUDEUSER 進(jìn)行排除。

如果是Oracle 9i或之前的版本,需要配置tracetable。

對于數(shù)據(jù)沖突,由于是雙向復(fù)制,那么當(dāng)兩端都對同一數(shù)據(jù)進(jìn)行操作時,就會發(fā)生沖突。

比如,同時對某行數(shù)據(jù)進(jìn)行修改,修改的操作將會被覆蓋(視lag以及事務(wù)的先后);再比如兩端插入或刪除相同鍵值的數(shù)據(jù)。

對于這類數(shù)據(jù)沖突,最好是在業(yè)務(wù)應(yīng)用層解決。比如,可以劃分兩端數(shù)據(jù)庫應(yīng)用的業(yè)務(wù)范圍,一部分?jǐn)?shù)據(jù)只在一端修改維護(hù),另一端則修改維護(hù)其他數(shù)據(jù);在兩端定義不同的鍵值生成策略;關(guān)注同步表上的觸發(fā)器和on delete cascade約束。此外,也可以借助GoldenGate的映射和過濾功能,對于兩端同步的數(shù)據(jù)進(jìn)行區(qū)分。

總結(jié):利用GoldenGate的數(shù)據(jù)復(fù)制原理,我們可以建立靈活的應(yīng)用方案,如一對一復(fù)制、一對多復(fù)制、多對多復(fù)制、多對一復(fù)制、雙向復(fù)制等。各種類型的復(fù)制可以實現(xiàn)不同業(yè)務(wù)場景的需求,我們要理解并掌握GoldenGate的數(shù)據(jù)復(fù)制原理,幫助我們建立起系統(tǒng)災(zāi)備的解決方案。

猜你喜歡
事務(wù)雙向備份
雙向度的成長與自我實現(xiàn)
VSAT衛(wèi)星通信備份技術(shù)研究
降低寄遞成本需雙向發(fā)力
用“雙向?qū)m排除法”解四宮數(shù)獨
河湖事務(wù)
創(chuàng)建vSphere 備份任務(wù)
基于OCC-DA-MCP算法的Redis并發(fā)控制
舊瓶裝新酒天宮二號從備份變實驗室
一種軟開關(guān)的交錯并聯(lián)Buck/Boost雙向DC/DC變換器
基于優(yōu)先級的多版本兩階段鎖并發(fā)控制協(xié)議
南投县| 宣城市| 肥西县| 汶上县| 临邑县| 宝兴县| 阿尔山市| 萨嘎县| 闸北区| 金溪县| 子洲县| 乌恰县| 巩留县| 临西县| 藁城市| 石楼县| 保德县| 大连市| 长治县| 高雄县| 丁青县| 昌邑市| 拜泉县| 南平市| 桐城市| 炉霍县| 焦作市| 秦安县| 来安县| 阿拉善盟| 营山县| 陈巴尔虎旗| 临夏县| 赞皇县| 清镇市| 深州市| 丰镇市| 阿尔山市| 高平市| 彭水| 威信县|