Oracle Goldengate topology
The Oracle GoldenGate topology is a representation of the databases in a GoldenGate environment, the GoldenGate components configured on each server, and the flow of data between these components.
The flow of data in separate trails is read, written, validated and check-pointed at each stage. GoldenGate is written in C and because it is native to the operating system, can run extremely fast. The sending, receiving, and validation have very little impact on the overall machine performance. Should performance become an issue due to the sheer volumes of data being replicated, you may consider configuring parallel Extract and/or Replicat processes.
Process topology
The following sections describe the process topology. Firstly discussing the rules that you must adhere to when implementing GoldenGate, followed by the order in which the processes must execute for end to end data replication.
The rules
When using parallel Extract and/or Replicat processes, ensure you keep related DDL and DML together in the same process group to ensure data integrity. The topology rules for configuring the processes are as follows:
All objects that are relational to an object are processed by the same group as the parent object
All DDL and DML for any given database object are processed by the same Extract group and by the same Replicat group
Should a referential constraint exist between tables, the child table with the foreign key must be included in the same Extract and Replicat group as the parent table having the primary key.
If an Extract group writes to multiple trails that are read by different Replicat groups, the Extract process sends all of the DDL to all of the trails. It is therefore necessary to configure each Replicat group to filter the DDL accordingly.
Position
The following tables show the position of each link in the process topology for the two fundamental configuration types:
Change Data Capture and Delivery using a Data Pump | ||
---|---|---|
Start Component |
End Component |
Position |
Extract Process |
Local Trail File |
1 |
Local Trail File |
Data Pump |
2 |
Data Pump |
Server Collector |
3 |
Server Collector |
Remote Trail File |
4 |
Remote Trail File |
Replicat Process |
5 |
Change Data Capture and Delivery without using a Data Pump | ||
---|---|---|
Start Component |
End Component |
Position |
Extract Process |
Server Collector |
1 |
Server Collector |
Remote Trail File |
2 |
Remote Trail File |
Replicat Process |
3 |
Statistics
In terms of performance monitoring, the GGSCI tool provides real-time statistics as well as comprehensive reports for each process configured in the GoldenGate topology. In addition to reporting on demand, it is also possible to schedule reports to be run. This can be particularly useful when performance tuning a process for a given load and period.
The INFO ALL command provides a comprehensive overview of process status and lag, whereas the STATS option gives more detail on the number of operations. Both commands offer real-time reporting. This is demonstrated in the following screen shots:
From the screenshot you can see that the STATS command provides daily and hourly cumulative statistics for a given process, including the overall total and the latest real-time figures.