Professional Documents
Culture Documents
Synchronous
Asynchronous
Multi-Master Replication
MV Replication
Hybrid Replication
Capture Messages
Staging Messages
Consumption
Heterogeneous
Multiple Architectures
Multiple Use Cases
What is GoldenGate?
How does GoldenGate work?
How Oracle GoldenGate Works
Capture (extract): committed transactions are captured (and can be filtered) as they occur by reading the transaction logs. As of
V.11.2.1, GoldenGate offers two options for capture for Oracle; Classic & Integrated Capture
Trail: stages and queues data for routing.
Pump: distributes data for routing to target(s).
Route: data is compressed, encrypted for routing to target(s).
Trail Trail
Capture Pump
Files Files Delivery
MGR MGR
How Oracle GoldenGate Works
Capture (extract): committed transactions are captured (and can be filtered) as they occur by reading the transaction logs. As of
V.11.2.1, GoldenGate offers two options for capture for Oracle; Classic & Integrated Capture
Trail: stages and queues data for routing.
Pump: distributes data for routing to target(s).
Route: data is compressed, encrypted for routing to target(s).
Trail Trail
Capture Pump
Files Files Delivery
Trail Trail
Delivery Files Pump Files Capture
Integrated Extract
Introduced in GoldenGate 11.2.0.2
Integrated Extract for Oracle source databases only
Database release: 11.2.0.3 and later
Works with Logminer
Register Extract (capture) with database/logminer required
Example: GGSCI> register extract [ name ] database container [ (PDB) ]
Oracle Database
Trail
Capture
Files
Logmining Server
Oracle Database
Preparer
Preparer
1 Trail
Reader 2
Preparer Builder Capture Capture
Files
N
Trail Delivery
Files
Integrated Replicat
Oracle Database
Apply
Trail Lightweight Streaming 1Apply
Delivery Receiver Preparer Coordinator 2Apply
Files API N
Trail Trail
Capture Pump
Files Files Delivery
GoldenGate
GG tools: LAG, REPORTCOUNT GoldenGate
EXAMPLE:
LAGINFOSECONDS 1
LAGREPORTMINUTES 1
LAGCRITICALSECONDS 2
Summary
- Overview of environment
- Advice/Warnings of potential issues of configuration
Analysis
- Compare configurations
- Performance Recommendations
- Detail information for diagnostic purposes
Statistics
- Runtime information of Streams (GoldenGate) processing
Host Performance Tools
CPU Performance (mpstat/top)
Looking to see if there are any processes limited by CPU (top)
Looking to see what average cpu spike is (mpstat)
I/O Performance (iostat)
Gather for database disks and trail file locations
Critical before increasing parallelism
Memory Performance (vmstat)
Not needed for integrated processes
Needed if tuning classic or coordinated processes
Case Study
Server/Database Configs
Trail Trail
Capture Pump
Files Files Delivery
GoldenGate
GG tools: LAG, REPORTCOUNT GoldenGate
- Replicat (Target)
2015-02-11 15:24:14 WARNING OGG-00947 Oracle GoldenGate
Manager for Oracle, mgr.prm: Lag for REPLICAT REPI is 01:18:50
(checkpoint updated 00:00:00 ago).
Process Statistics
Monitor throughput for each process
- REPORTCOUNT EVERY [ SECOND | MINUTES | HOURS ], RATE
- Can impact throughput with aggressive monitoring
EXTI.rpt
1068208 records processed as of 2015-02-11 15:30:25 (rate 57,delta 299)
PMPI.rpt
545130 records processed as of 2015-02-11 15:35:28 (rate 109,delta 281)
REPI.rpt
108483 records processed as of 2015-02-11 15:28:05 (rate 116,delta 120)
SQL>
UPDATERECORDFORMAT
- Single Logical Change Record (LCR) with BEFORE and AFTER
images
- COMPACT
- reduces the amount of data sent with LCR
Integrated Extract Parameters
Continued
PARALLELISM
- Controls number of preparers for processing logs
- Increase parallelism if preparers are CPU bound
- EE allows parallelism of preparers (default = 2)
- SE does not allow parallelism of preparers (default = 1)
MAX_SGA_SIZE
- Controls amount of streams pool configured extract
- Min: 1024 (1G)/Max: 3584 (3.5G)
Integrated Replicat Parameters
COMMIT_SERIALIZATION
- Default = DEPENDENT_TRANSACTIONS
- Set to FULL, if apply in source commit order is required
EAGER_SIZE
- Threshold to begin apply of large transactions (default = 9500)
- Serializes apply processing
- Make sure streams_pool_size is configured correctly to avoid
Waiting for Memory issues
MAX_SGA_SIZE
- Controls memory resource for IR
- Default is INFINITE
Integrated Replicat Parameters
Continued
PARALLELISM
- Controls number of appliers (default = 4, actually 50)
- Setting to 1 disables parallism
MAX_PARALLELISM
- Controls maximum number of appliers
- Default is 50 in OGG 12.1.2.1 (30 in OGG 12.1.2.0)
Note: Auto Tuning (parallelism)
- Enabled by default
- Computed over range of 5 intervals (5 seconds)
- Unneeded processes marked INACTIVE, removed after 5 minutes
- MAX_PARALLISM=PARALLELISM, disables auto turning
Integrated Replicat Parameters
Continued
BATCHSQL
- Controls number of appliers (default = 4)
- Setting to 1 disables parallelism
- Use with caution
- Degradation can be seen in some cases.
Database Configurations
ENABLE_GOLDENGATE_REPLICATION
- New in DB 11.2.0.4/12.1.0.2
- Boolean value. Default to False, set to True to activate
STREAMS_POOL_SIZE
- Size appropriately for number of concurrent IE & IR processes
- Min. 1G per IE/IR then add 25%
- If using MAX_SGA_SIZE
- sum of (MAX_SGA_SIZE * IR) * 25%
Sizing Streams Pool
Since BDP result is less than 1MB, no need to set TCPBUFSIZE or TCPFLUSHBYTES
*Default is 1MB
Host
2143
2000
1500
120
0
EXTI
REPI
STOP
Call for papers open now @ http://gaoug.strikingly.com/
Further Reading
MOS Note: 1557031.1 patches for integrated capture and replicat
MOS Note: 1448324.1 OGG Integrated Healthcheck Script
MOS Note: 1485620.1 Best Practices for Downstream Capture
MOS Note: 1488668.1 GoldenGate Performance Data Gathering