2017-04-16 19 views
0

需要了解有關Oracle GoldenGate CSN的更多詳細信息。存在多個副本時Oracle GoldenGate CSN的行爲?

以下是系統架構配置。

源數據庫 - 甲骨文
目標數據庫 - 甲骨文

有關烴源數據庫中的每個表中,2個表(BASE表和DELETE表)的目標數據庫上定義。 配置2個副本以將數據從源傳輸到目標數據庫。 一個副本將INSERT/UPDATES移動到目標數據庫,其他副本將DELETE記錄移動到目標。

以下是GG定義的視圖,它給出了GoldenGate元數據信息。

GoldenGate metadata info

行與服務器名稱與 'CRN01A' 表示GG複製品BASE表結束。 服務器名以'CRN01D'結尾的行代表DELETE表的GG副本。

APPLIED_LOW_POSITION給出'所有提交位置小於此值的消息已被應用'。

我們的問題是如果這兩個副本將有自己的孤立的CSN或在提取方面同步。

實施例:

  1. APPLIED_LOW_POSITION初始值 - 100兩者BASE表副本和DELETE表複製品。
  2. 100插入/更新發生在源數據庫上。 BASE表副本APPLIED_LOW_POSITION值更改爲200.
  3. 在步驟2之後,3個DELETE發生在源系統上。我們的問題是在這個時候,DELETE副本的APPLIED_LOW_POSITION值是什麼? 它會是103或203

您能否提供您的想法?

回答

0

CSN計數器與源數據庫上的CSN號碼相連。它一直在增長。

如果CSN等於100,則發生一些事務(INSERT)。它增長到了200.

然後再做3個DELETE操作。從200開始,它將增長到203.

這3個DELETE操作可能不會被複制到INSERT/UPDATE目標,因此APPLIED_LOW_POSITION可能不會在此目標上更改並保持在200級別。

但是在DELETE目標上,APPLIED_LOW_POSITION會上升到203.