OGG工作原理及一些配置說明
GoldenGate的資料整合技術實施主要含三個主要程式:
1. 資料抽取程式
該程式一般部署在源系統資料庫所在的伺服器上,如果源系統有standby系統,有時也可以部署在standby系統上(當源系統不允許部署時),goldengate可以通過讀取分析資料庫的線上日誌或者歸檔日誌將變化資料取出,儲存到一個佇列檔案中,該檔案根據系統配置的不同,可以在源,也可以在目標,或者兩邊都有,一般建議在源上一個,目標上一個,具體原因以後我們再分析。goldengate當然也可以通過trigger的方式獲得變化資料,但如果通過trigger,就和其它工具沒啥分別了,我自己也可以通過trigger寫個程式抓變化資料,目前Goldengate支援通過日誌抓取變化資料的資料庫包括:
Oracle,DB2(包括開放系統和大機),sqlserver,Sybase,Ingres,當然Goldengate也提供了一套API對使用者開放,使用者可以自己負責抓取,然後通過Goldengate進行資料同步。
2. 傳輸程式
該程式一般在源資料庫所在的伺服器上,負責將源資料庫資料抽取程式分析出的變化資料從佇列檔案中取出,複製到遠端目標資料庫的佇列檔案,在傳輸的 過程中,該程式可以對資料進行壓縮,加密(視客戶的要求而定,畢竟壓縮,加密,再解開很浪費時間)。如果進行一對多的資料分發,傳輸程式可以配置多個,如下圖:3. 應用程式
也叫replicate程式,它部署在目標伺服器上,從目標伺服器的佇列檔案中讀取變化資料,然後寫入目標資料庫。
一般常用的程式組:
在源端:mgr程式,extract抽取程式,extract傳輸程式
在目標端:mgr程式,replicat程式
ggsci檢視各程式是否正常的命令
ggsci>status mgr
ggsci>status
*
ggsci>info
mgr
ggsci>info
all
edit params 配置檔案中的各項說明為:
Extract :指定extract的名字
SETENV():指定該extract啟動時oracle相關的環境變數.
Userid , password :連線到源資料庫的使用者
Report:指定每天在日誌中產生報告的時間
Reportrollover:指定每天彙報佇列檔案切換報告的時間
Gettruncates:告訴extract對truncate操作也要捕獲
Warnlongtrans:超過個小時的交易為長交易,要在goldengate日誌中進行記錄,檢查時間為指定的checkinterval。
Tranlogoptions:針對源資料庫的一些配置選項,如資料庫歸檔的位置等等,例如一些例子中的值是指當源和目標資料庫字符集不一致,而且傳輸包含clob欄位時,需要對clob中的字符集進行轉換。
Fetchoptions:指定當從源資料庫抓取資料時的一些選項,例如一些例子指不從undo tablespace取資料,而是從表裡直接抽取。
Exttrail:本地佇列檔案,extract將資料從資料庫日誌抓取後存放在該佇列檔案。(抽取程式寫這些檔案,傳輸程式讀取這些檔案)
Discardfile:指定丟棄資料的存放位置。
Dynamicresolution:指定當extract從日誌抓取變化資料時,根據當前的需要,動態解析表名,從而加快抓取程式的啟動速度。
Table .:指定要從源系統抓取那些表的資料,這裡schema不能用萬用字元,table_name可以用萬用字元。
Passthru:表示傳輸程式在傳輸的過程中只負責檔案傳輸,不進行任何轉化。
Rmthost: 目標端的機器IP地址或者主機名稱。
Mgrport:目標端goldengate 管理程式manager執行的埠號。
Rmttrail:當傳輸程式將佇列檔案傳輸的目標端後放置的目錄和佇列檔案。
已經實驗過EXTRACT抽取程式配置EXTTRAIL ./dirdat/tt,EXTRACT傳輸程式配置RMTTRAIL ./dirdat/cs,replicat程式沒有配置檔案資訊,實驗中發現會在源生成./dirdat/tt,目標生成./dirdat/cs,為什麼目標的replicat程式會預設去讀Opening ./dirdat/cs000000 (byte -1, current EOF 0).原因是不管配置檔案裡面怎麼寫的,還有一段
add exttrail ./dirdat/tt,extract chouqu, megabytes 5
add extract chuanshu,exttrailsource ./dirdat/tt
add rmttrail ./dirdat/cs,extract chuanshu,megabytes 5
add replicat fuzhi,exttrail ./dirdat/cs,checkpointtable ggs. ggschkpt
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/30126024/viewspace-2124157/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- adb 埠自定義及原理說明
- vue-cli@3.0 使用及配置說明Vue
- rust配置說明Rust
- CH9120網口配置協商及說明
- PHP CS Fixer 的使用及 PHP Storm 配置說明PHPORM
- 【Tomcat】Tomcat伺服器核心配置說明及標籤Tomcat伺服器
- 插曲:Kafka的生產者原理及重要引數說明Kafka
- elasticsearch.yml 配置說明Elasticsearch
- kettle MongoDB Output 配置說明MongoDB
- 雷池 docker env 配置說明Docker
- 負載均衡開啟Gzip配置及檢測方法說明負載
- CRC校驗原理簡介及C程式碼實現說明C程式
- QT - QOverload說明及示例QT
- Nginx的配置檔案說明Nginx
- ADS-B接入配置說明
- keycloak~token配置相關說明
- MobTech ShareSDK 後臺配置說明
- maven工作目錄、編譯後的目錄說明及mybatis-plus的xml檔案路徑配置Maven編譯MyBatisXML
- 04 . Filebeat簡介原理及配置檔案和一些案例
- 反射記憶體卡原理說明反射記憶體
- YUM工作原理及使用
- makefile中的一些引數說明
- Kibana安裝及使用說明
- JavaScript介紹及說明(01)JavaScript
- Mysql半同步複製模式說明及配置示例 - 運維小結MySql模式運維
- nginx 詳解 - 詳細配置說明Nginx
- VNC安裝配置詳細說明VNC
- Nginx的gzip配置引數說明Nginx
- nginx 詳解 – 詳細配置說明Nginx
- Revit Server的注意要配置說明Server
- 【NETWORK】Oracle RAC 心跳地址配置說明Oracle
- nginx日誌配置檔案說明Nginx
- 說一下泛型原理,並舉例說明泛型
- 說說Node.js中 流 的一些原理Node.js
- ppium簡介及工作原理
- Flowable - 6.6.0 更新說明 (主流工作流引擎)
- 不聊webpack配置,來說說它的原理Web
- php.ini 核心配置選項說明PHP
- spring5.x版本 java配置和annotation配置說明SpringJava