About GoldenGate
Oracle Golden Gate is a log-based copy and backup software for structured data. It parses online logs of the source database or archive logs to obtain incremental data changes, apply these changes to the target database to synchronize the source database with the target database. Oracle Golden Gate can implement Sub-second-level real-time replication of large amounts of data between heterogeneous IT infrastructure (including almost all common operating system platforms and database platforms, it can be used in emergency systems, online reports, real-time data warehouse supply, Transaction Tracking, data synchronization, centralized/distribution, Disaster Tolerance, Database Upgrade and transplantation, dual-business centers, and other scenarios. application. At the same time, Oracle Golden Gate can implement one-to-one, broadcast (one-to-multiple), aggregation (Multiple-to-one), bidirectional, point-to-point, cascading, and other flexible topology structures.
GoldenGate Technical Architecture
Like traditional logical replication, Oracle GoldenGate extracts the redo log or archive log from the source end, then delivers the log to the target end through TCP/IP, and finally parses and restores the application to the target end, synchronize data from the same source on the target end. The technical architecture of OracleGoldenGate is as follows:
Manager Process
The Manager process is the control process of GoldenGate and runs on the source and target ends. It is mainly used in the following aspects: Start, monitor, restart other Goldengate processes, report errors and events, allocate data storage space, and release threshold reports. There is only one manager process on the target and source, and its running status is running and stopped. On windows, the manager process is started as a service, and on Linux/Unix systems, the manager process is a system process.
Extract Process
Extract runs on the database source and is responsible for capturing data from the source data table or log. The role of Extract can be divided by Table Time:
Initial loading phase: In the initial data loading phase, the Extract process extracts data directly from the source data table.
Synchronization change capture phase: after the initial data synchronization is complete, the Extract process is responsible for capturing source data changes (DML and DDL)
GoldenGate does not support ddl operations for all databases.
The Extract process captures changes to all configured objects to be synchronized, but only sends committed transactions to remote trail files for synchronization. When a transaction is committed, all transaction-related log records are recorded in the transaction order in the trail file. The Extract process uses its internal checkpoint mechanism to periodically record its Read and Write locations. This mechanism is used to ensure that the Extract process is terminated or the operating system is running and the Extract process is restarted, goldenGate can be restored to the previous state and continue to run from the previous breakpoint. The above two mechanisms can ensure data integrity.
Multiple Extract processes can simultaneously operate on different objects. For example, you can use the data extracted by another extract process to report data while extracting transaction data from the target end. Alternatively, two extract processes can use two trail files to extract and concurrently transmit them to two replicat processes to reduce data synchronization latency.
The Extract process has the following statuses: Stopped, Starting, Running, and Abended ).