日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

Oracle GoldenGate复制过程

發(fā)布時(shí)間:2025/3/8 编程问答 18 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Oracle GoldenGate复制过程 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

這兩種Oracle GoldenGate體系結(jié)構(gòu)共有許多數(shù)據(jù)復(fù)制過(guò)程。

1、什么是Extract?

Extract是一個(gè)過(guò)程,該過(guò)程被配置為針對(duì)源數(shù)據(jù)庫(kù)運(yùn)行或被配置為在下游挖掘數(shù)據(jù)庫(kù)(僅Oracle)上運(yùn)行,以捕獲在其他位置的真實(shí)源數(shù)據(jù)庫(kù)中生成的數(shù)據(jù)。此過(guò)程是Oracle GoldenGate的提取或數(shù)據(jù)捕獲機(jī)制。

您可以為以下用例配置摘錄:

  • 初始負(fù)載:將Oracle GoldenGate設(shè)置為初始負(fù)載時(shí),提取過(guò)程直接從源對(duì)象捕獲當(dāng)前的靜態(tài)數(shù)據(jù)集。

  • 更改同步:設(shè)置Oracle GoldenGate時(shí)為了使源數(shù)據(jù)與另一組數(shù)據(jù)保持同步,提取過(guò)程將在初始同步發(fā)生后捕獲對(duì)已配置對(duì)象執(zhí)行的DML和DDL操作。提取可以與數(shù)據(jù)庫(kù)在同一臺(tái)服務(wù)器上本地運(yùn)行,也可以使用下游的集成提取在另一臺(tái)服務(wù)器上本地運(yùn)行,以減少開(kāi)銷。它存儲(chǔ)這些操作,直到收到包含它們的事務(wù)的提交記錄或回滾。如果收到回滾,它將丟棄該事務(wù)的操作。如果收到提交,它將把事務(wù)保留在磁盤中,稱為一系列的文件,該文件稱為跟蹤,在隊(duì)列中排隊(duì)等待傳播到目標(biāo)系統(tǒng)。每個(gè)事務(wù)中的所有操作均作為順序組織的事務(wù)單元寫入到跟蹤中,并按照它們被提交到數(shù)據(jù)庫(kù)的順序(提交序列順序)進(jìn)行。這種設(shè)計(jì)可確保速度和數(shù)據(jù)完整性。

    注意:

    即使事務(wù)可能還包括對(duì)在提取配置中的對(duì)象的操作,提取也會(huì)忽略對(duì)不在提取配置中的對(duì)象的操作。

提取過(guò)程可以配置為從三種類型的數(shù)據(jù)源中提取數(shù)據(jù):

  • 源表:此源類型用于初始加載。
  • 數(shù)據(jù)庫(kù)恢復(fù)日志或事務(wù)日志:從日志捕獲時(shí),實(shí)際方法取決于數(shù)據(jù)庫(kù)類型。Oracle數(shù)據(jù)庫(kù)重做日志就是這種源類型的一個(gè)示例。
  • 第三方捕獲模塊:此方法提供了一個(gè)通信層,該通信層將數(shù)據(jù)和元數(shù)據(jù)從外部API傳遞到Extract API。數(shù)據(jù)庫(kù)供應(yīng)商或第三方供應(yīng)商提供了提取數(shù)據(jù)操作并將其傳遞給Extract的組件。

2、什么是Trail?

Trail是磁盤上的一系列文件,Oracle GoldenGate在其中存儲(chǔ)捕獲的更改,以支持對(duì)數(shù)據(jù)庫(kù)更改的連續(xù)提取和復(fù)制。

跟蹤可以存在于源系統(tǒng),中間系統(tǒng),目標(biāo)系統(tǒng)或這些系統(tǒng)的任何組合上,具體取決于您如何配置Oracle GoldenGate。在本地系統(tǒng)上,它被稱為提取路徑(或本地路徑)。在遠(yuǎn)程系統(tǒng)上,它稱為遠(yuǎn)程路徑。通過(guò)使用存儲(chǔ)線索,Oracle GoldenGate支持?jǐn)?shù)據(jù)準(zhǔn)確性和容錯(cuò)能力。使用跟蹤還可以使提取和復(fù)制活動(dòng)彼此獨(dú)立發(fā)生。將這些過(guò)程分開(kāi),您可以在如何處理和傳遞數(shù)據(jù)方面有更多選擇。例如,您可以連續(xù)提取更改并將其存儲(chǔ)在跟蹤中,以供以后在目標(biāo)應(yīng)用程序需要時(shí)復(fù)制到目標(biāo)中,而不是連續(xù)提取和復(fù)制更改。

另外,跟蹤允許Oracle數(shù)據(jù)庫(kù)在異構(gòu)環(huán)境中運(yùn)行。數(shù)據(jù)以一致的格式存儲(chǔ)在跟蹤文件中,因此可以由“復(fù)制”過(guò)程讀取所有支持的數(shù)據(jù)庫(kù)。有關(guān)更多信息,請(qǐng)參見(jiàn)關(guān)于Oracle GoldenGate Trail。

寫入跟蹤文件的進(jìn)程:

在Oracle GoldenGate Classic中,提取和數(shù)據(jù)泵過(guò)程將寫入跟蹤。只有一個(gè)提取過(guò)程可以寫入給定的本地路徑。盡管可以在不同路徑中使用相同的路徑名稱,但是所有本地路徑必須具有不同的全路徑名稱。

多個(gè)數(shù)據(jù)泵進(jìn)程可以各自寫入相同名稱的路徑,但是物理路徑本身必須駐留在不同的遠(yuǎn)程系統(tǒng)上,例如數(shù)據(jù)分布拓?fù)渲小@?#xff0c;名為Pumpm的數(shù)據(jù)泵和名為Pumpn的數(shù)據(jù)泵都可以駐留在sys01上并寫入名為的遠(yuǎn)程跟蹤aa。Pumpm可以寫入sys02上的aa尾跡,而Pumpn可以寫入sys03上的aa尾跡。

在Oracle GoldenGate MA中,分發(fā)服務(wù)器和分發(fā)路徑用于寫入遠(yuǎn)程跟蹤。

從跟蹤文件讀取的進(jìn)程:

數(shù)據(jù)泵和復(fù)制過(guò)程從跟蹤文件中讀取。數(shù)據(jù)泵從鏈接到Extract流程的本地跟蹤中提取DML和DDL操作,如果需要,執(zhí)行進(jìn)一步的處理,并將數(shù)據(jù)傳輸?shù)较掠蔚南乱粋€(gè)Oracle GoldenGate進(jìn)程讀取的跟蹤(通常是Replicat,但是可以如果需要,則使用另一個(gè)數(shù)據(jù)泵)。

復(fù)制過(guò)程將讀取跟蹤,并將復(fù)制的DML和DDL操作應(yīng)用于目標(biāo)數(shù)據(jù)庫(kù)。

跟蹤文件的創(chuàng)建和維護(hù):

在處理過(guò)程中會(huì)根據(jù)需要?jiǎng)?chuàng)建跟蹤文件。使用ADD RMTTRAIL或ADD EXTTRAIL命令將路徑添加到Oracle GoldenGate配置時(shí),可以為路徑指定一個(gè)兩個(gè)字符的名稱。默認(rèn)情況下,線索存儲(chǔ)在dirdatOracle GoldenGate目錄的子目錄中。您可以使用TRAIL_SEQLEN_9D | TRAIL_SEQLEN_6D GLOBALS參數(shù)指定六位或九位的序列號(hào);TRAIL_SEQLEN_9D默認(rèn)設(shè)置。

創(chuàng)建每個(gè)新文件時(shí),它會(huì)繼承兩個(gè)字符的跟蹤名稱,并在其后附加一個(gè)唯一的9位數(shù)字序列號(hào)(例如,從000000000到999999999 c:\ggs\dirdat\tr000000001)。當(dāng)序列號(hào)達(dá)到999999999時(shí),編號(hào)從000000000開(kāi)始,并且先前的跟蹤文件將被覆蓋。可以使用Manager參數(shù)定期清除跟蹤文件 PURGEOLDEXTRACTS。

您可以創(chuàng)建多個(gè)跟蹤,以將數(shù)據(jù)與不同的對(duì)象或應(yīng)用程序分開(kāi)。您將在TABLEor SEQUENCE參數(shù)中指定的對(duì)象鏈接到在Extract參數(shù)文件中使用EXTTRAILor RMTTRAIL參數(shù)指定的路徑。為了最大化吞吐量并最小化系統(tǒng)上的I / O負(fù)載,提取的數(shù)據(jù)以大塊的形式發(fā)送到路徑中和從路徑中發(fā)送出去。交易訂單被保留。

將現(xiàn)有路徑轉(zhuǎn)換為9位數(shù)字序列號(hào)

您可以將命名提取組的跟蹤文件從6位檢查點(diǎn)記錄轉(zhuǎn)換為9位檢查點(diǎn)記錄。使用 convchk 本地命令可正常停止您的提取,然后convchk 按如下所示進(jìn)行升級(jí),以將其轉(zhuǎn)換為9位數(shù)字的軌跡 :

convchk extract trail seqlen_9d

開(kāi)始提取

您可以使用以下convchk 命令通過(guò)相同的過(guò)程將9位數(shù)字降級(jí)為6位數(shù)字 :

convchk extract trail seqlen_6d

注意:Extract Files:您可以配置Oracle GoldenGate將提取的數(shù)據(jù)存儲(chǔ)在提取文件中而不是跟蹤中。提取文件可以是單個(gè)文件,也可以將其配置為在預(yù)期操作系統(tǒng)限制文件大小的情況下滾動(dòng)到多個(gè)文件中。除了不記錄檢查點(diǎn)外,它與跟蹤類似。一個(gè)或多個(gè)文件在運(yùn)行期間自動(dòng)創(chuàng)建。適用于跟蹤的相同版本控制功能也適用于提取文件。

什么是Replicat?

Replicat是將數(shù)據(jù)傳遞到目標(biāo)數(shù)據(jù)庫(kù)的過(guò)程。它讀取目標(biāo)數(shù)據(jù)庫(kù)上的跟蹤文件,重構(gòu)DML或DDL操作,并將其應(yīng)用于目標(biāo)數(shù)據(jù)庫(kù)。

Replicat過(guò)程使用動(dòng)態(tài)SQL一次編譯一條SQL語(yǔ)句,然后使用不同的綁定變量多次執(zhí)行該語(yǔ)句。您可以配置復(fù)制過(guò)程,以便在將復(fù)制的操作應(yīng)用于目標(biāo)數(shù)據(jù)庫(kù)之前等待特定的時(shí)間。例如,可能需要延遲來(lái)防止錯(cuò)誤SQL的傳播,控制跨不同時(shí)區(qū)的數(shù)據(jù)到達(dá)或?yàn)槠渌?jì)劃中的事件發(fā)生留出時(shí)間。

對(duì)于Oracle GoldenGate的兩個(gè)常見(jiàn)用例,復(fù)制過(guò)程的功能如下:

  • 初始負(fù)載:當(dāng)您為初始負(fù)載設(shè)置Oracle GoldenGate時(shí),復(fù)制過(guò)程會(huì)將靜態(tài)數(shù)據(jù)副本應(yīng)用于目標(biāo)對(duì)象,或?qū)?shù)據(jù)路由到高速批量加載實(shí)用程序。
  • 更改同步:設(shè)置Oracle GoldenGate以使目標(biāo)數(shù)據(jù)庫(kù)與源數(shù)據(jù)庫(kù)保持同步時(shí),復(fù)制過(guò)程會(huì)使用本機(jī)數(shù)據(jù)庫(kù)接口或ODBC將源操作應(yīng)用于目標(biāo)對(duì)象,具體取決于數(shù)據(jù)庫(kù)類型。

您可以并行配置多個(gè)復(fù)制過(guò)程以及一個(gè)或多個(gè)提取過(guò)程和數(shù)據(jù)泵,以提高吞吐量。為了保持?jǐn)?shù)據(jù)完整性,每組進(jìn)程都處理不同的對(duì)象集。為了區(qū)分復(fù)制過(guò)程,請(qǐng)為每個(gè)過(guò)程分配一個(gè)組名

如果您不想使用多個(gè)復(fù)制過(guò)程,則可以并行,協(xié)調(diào),集成模式配置單個(gè)復(fù)制過(guò)程。

  • 并行模式并行復(fù)制使用非集成選項(xiàng)支持所有數(shù)據(jù)庫(kù)。并行復(fù)制僅支持從具有完整元數(shù)據(jù)的跟蹤復(fù)制數(shù)據(jù),這需要經(jīng)典的跟蹤格式。與集成復(fù)制類似,它考慮了事務(wù)之間的依賴性。依賴性計(jì)算,映射和應(yīng)用程序的并行性在數(shù)據(jù)庫(kù)外部執(zhí)行,因此可以卸載到另一臺(tái)服務(wù)器。在此過(guò)程中維護(hù)事務(wù)完整性。此外,并行復(fù)制通過(guò)將大型事務(wù)拆分為多個(gè)塊并并行應(yīng)用來(lái)支持大型事務(wù)的并行應(yīng)用。
  • Oracle GoldenGate支持的所有數(shù)據(jù)庫(kù)都支持協(xié)調(diào)模式。在協(xié)調(diào)模式下,復(fù)制過(guò)程是線程化的。一個(gè)協(xié)調(diào)器線程產(chǎn)生并協(xié)調(diào)一個(gè)或多個(gè)并行執(zhí)行復(fù)制的SQL操作的線程。協(xié)調(diào)的復(fù)制過(guò)程使用一個(gè)參數(shù)文件,并作為一個(gè)單元進(jìn)行監(jiān)視和管理。
  • Oracle Database 11.2.0.4或更高版本支持集成模式。在集成模式下,復(fù)制過(guò)程利用了Oracle數(shù)據(jù)庫(kù)中可用的應(yīng)用處理功能。在單個(gè)Replicat配置中,稱為應(yīng)用服務(wù)器的多個(gè)入站服務(wù)器子進(jìn)程將并行應(yīng)用事務(wù),同時(shí)保留原始事務(wù)的原子性。

你可以延遲復(fù)制,以便在將復(fù)制的操作應(yīng)用于目標(biāo)數(shù)據(jù)庫(kù)之前,它等待特定的時(shí)間。可能需要延遲,例如,以防止錯(cuò)誤的SQL傳播,控制跨不同時(shí)區(qū)的數(shù)據(jù)到達(dá)或?yàn)槠渌?jì)劃的事件發(fā)生留出時(shí)間。延遲的長(zhǎng)度由DEFERAPPLYINTERVAL參數(shù)控制。

總結(jié)

以上是生活随笔為你收集整理的Oracle GoldenGate复制过程的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。