Goldengate Replicate Mode介紹

studywell發表於2015-01-06
從Goldengate 12c版本開始,oracle引入了兩種新的replicat mode,分別叫做Integrated Replicat Mode和Coordinated Replicat Mode.
其中,與integrated Capture Mode類似,Integrated Replicat Mode是針對oracle平臺的,實際上就是將以前oracle stream中的功能整合進了新的Goldengate版本中.使用Intergrated Replicat Mode要求oracle資料庫版本最低為11.2.0.4.
Coordinated Replicat Mode特性適用於各個資料庫平臺,與Classic Replicat Mode中的單執行緒Replicat程式不同,該模式中透過將replicat程式建立為多執行緒來提高資料複製時的可擴充套件性.Oracle文件中沒有提到為了支援該特性,資料庫版本方面有什麼特殊需求,此外,該特性實際上是在作業系統程式層面所作的改進,所以該特性的使用應該是與資料庫版本無關的.

下面就針對Goldengate的三種Replicate Mode作一簡要介紹:

1.Classic Replicat Mode
Classic Replicat Mode也被稱為Nonintegrated Replicat Mode,該模式中,Replicat程式是單執行緒的. 其工作流程如下:
>. 讀取Goldengate Trail File;
>. 根據Replicat引數配置,執行資料過濾,對映和轉換操作;
>. 按資料變化在源資料庫端提交的順序構建SQL DML或DDL語句;
>. 透過本地資料庫連線,執行前面構建的SQL語句,從而將資料變化應用到目標資料庫裡.
在Classic Replicat Mode中,單執行緒的工作方式顯然無法滿足所有的負載需求.這時,我們通常使用並行複製的方式來應對這種挑戰. Classic Replicat Mode中主要透過以下兩種方式來實現並行複製:
>. 將需要複製的表作邏輯上的拆分,建立多個replicat程式,每個程式負責複製一部份表;
>. 當某個單一表上的負載較大需要作拆分時,oracle提供了@RANGE函式來幫助實現表內的拆分;
我在<>一文中有對以上拆分方式的更詳細描述.
嚴格來說,Classic Replicat Mode對並行的支援是不夠靈活的,對錶的拆分要注意邏輯上的關聯性,特別是那些存在外來鍵依賴性的資料.

2.Coordinated Replicat Mode
該模式中,Replicat程式是多執行緒的. 其工作流程如下:
>. 讀取Goldengate Trail File;
>. 根據Replicat引數配置,執行資料過濾,對映和轉換操作;
>. 按資料變化在源資料庫端提交的順序構建SQL DML或DDL語句;
>. 透過本地資料庫連線,執行前面構建的SQL語句,從而將資料變化應用到目標資料庫裡.
可以看到,其工作流程與Classic Replicat Mode是一致的.兩種模式的區別就在於其多執行緒工作機制上,每個執行緒可以獨立的讀取trail file進行分析,然後執行sql,也就是多個執行緒可以並行工作.
由於有多個執行緒並行工作,因而也就涉及到任務的劃分,協調等工作,所以有個單獨的coordinate執行緒會做這方面的工作,這應該也就是coordinated replicat命名的由來了. 
Coordinated Replicat Mode中也提供了由使用者來劃分工作負載的方法,具體實現方法參見官方文件.
從以上描述來看,Coordinated Replicat Mode是對Classic Replicat Mode中並行實現所提供的一種新的選擇.

3.Integrated Replicat Mode
該模式下,Goldengate利用了oracle stream採用的方式來apply資料變化,其工作流程如下:
>. 讀取Goldengate Trail File;
>. 根據Replicat引數配置,執行資料過濾,對映和轉換操作;
>. 根據源端資料變化構建LCR(logical change record);
>. Replicate程式透過與資料庫中的stream後臺程式互動,將前面生成的LCR交由stream程式來應用到資料庫中.
使用過oracle stream的使用者應該知道,stream中控制apply程式並行度是很靈活的,透過將replicat建立為Integrated Replicat Mode,stream的特性也可以在Goldengate中實現。
從integrated Capture Mode和Integrated Replicat Mode可以看到,oracle在收購了Goldengate後,已經將stream的很多功能整合進了Goldengate的新版本中。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29519108/viewspace-1392545/,如需轉載,請註明出處,否則將追究法律責任。

相關文章