Oracle golden gate程式說明

suifeng2316發表於2013-07-06

Oracle golden gate是通過解析源資料庫線上日誌或歸檔日誌獲得資料的增量變化,通過tcp/ip將變化投遞到目標端,最後應用到遠端資料庫,從而實現資料同步。ogg的原理確實比較好理解。

Ogg的幾個關鍵的程式:

Manager程式:

manager程式是golden gate的控制程式,執行在源端和目標端,用於啟動、監控、重啟golden gate其他程式,報告錯誤和事件、分配資料儲存空間、釋出閥值報告等。

Extract程式:extract程式執行在源端,負責從源資料庫表或者日誌中捕獲資料庫。所有提交的事務相關的日誌會被以事務為單元順序記錄到trail檔案,extract程式也有其內部的checkpoint機制,

週記性記錄讀寫位置,checkpoint機制是為了在extract程式崩潰後重新啟動extract程式後,goldengate可以恢復到之前checkpoint狀態,從而從這個點繼續執行,這個checkpoint機制跟oracle內部的checkpoint機制含義大體相同。extract正是通過上面的trail檔案和checkpoint來保證資料的完整性。

Pump程式:

pump程式執行在資料庫源端,主要是在將源端產生的本地trail檔案,然後把trail以資料塊形式通過tcp/ip傳送到目標端,o也推薦這種方式。如果不使用trail檔案,extract程式會抽取完資料以後,直接投遞到目標端,生成遠端trail檔案。

Trail檔案:

extract抽取完資料後會將對應的事務資訊轉化為goldengate專有格式檔案trailtrail檔案主要是為了防止單點故障,事務資訊持久化,並且使用checkpoint機制記錄其讀寫位置,如果故障發生,則資料可以根據checkpoint記錄的位置來重傳。

Server collector程式

server collector程式主要是把extractpump程式投遞過來的資料組裝成遠端的trail檔案,server collector不需要我們對其程式任何配置。

Replicat程式:

replicat程式執行在目標端,主要是通過讀取目標端的trail檔案內容然後將其解析為對應的dmlddl語句,最後應用到目標資料庫中。Replicat程式也有其內部的checkpoint機制,保證重啟後可以從上次記錄的位置開始恢復從而保證資料一致性和安全性。

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

相關文章