Oracle GoldenGate provides low-impact capture, routing, transformation, and delivery of database transactions across homogeneous and heterogeneous environments in real-time with no distance limitations.
We all know the architecture of Oracle GoldenGate which is pretty simple and easy to understand. It has components like,
1. Manager Process 2. Extract Process 3. DataPump Process 4. Server Collector Process 5. Replicat Process 6. Trail Files 7. Checkpoint Files
Each and every process has it’s own roles and responsibilities to play during the course of replication. The more details about this architecture is explained in the below link,
From OGG 12.3, a new kind of architecture has been introduced in Oracle GoldenGate known as “Microservices Architecture”. In this article, I will be explaining you the various components involved in it and their roles and responsibilities.
Oracle GoldenGate Microservices Architecture can be used to manager the data replication using an HTML interface. The replication processes works with the secure REST API interfaces.
In the Classic Architecture of OGG, we need separate tools to monitor the OGG instances. But Oracle GoldenGateMA provides all the tools you need to configure, monitor, and administer your deployments.
There are five major components introduced in Oracle GoldenGate MA. Each component has it’s own login console page. They are as below,
SERVICE MANAGER ADMINISTRATION SERVER DISTRIBUTION SERVER RECEIVER SERVER PERFORMANCE METRICS SERVER
One of the difference between the Classic Architecture and OGG MA is, in the Classic Architecture you have DataPump process and Server Collector process. But in OGG MA it has been replaced by Distribution Server and Receiver Server. The Extracts and Replicats does not have any change in it. It is the same as the Classic Architecture.
Let us see what are the roles and responsibilites of each component of OGG MA.
1. A Service Manager acts as a watchdog for other services available with Microservices Architecture and allows you to manage one or multiple Oracle GoldenGate deployments on a local host.
2. It runs as a service and maintains inventory and configuration information about the deployments. From the Service Manager console, you can start and stop instances, and query deployments and other services.
1. An Administration Server supervises, administers, manages, and monitors processes operating within an Oracle GoldenGate deployment for both active and inactive processes.
2. The Administration Server operates as the central control entity for managing the replication components in your Oracle GoldenGate deployments. In Classic Architecture, all these tasks will be taken care by the Manager process where as in OGG MA, the Administration Server will taking care of these tasks. As I mentioned earlier, the Service Manager is like a real manager in your premises 😛 is just a Watch Dog.
3. The key feature of the Administration Server is the REST API Service Interface that can be accessed from any HTTP or HTTPS client, such as the Microservices Architecture service interfaces or other clients like Perl and Python.
4. You really do not want to login to the OGG server where it is installed. From the Administration server, you can create and manager your local Extract and Replicat processes. Below are the tasks which are done using the Administration Server.
Extract and Replicat processes Add, alter, and delete Register and unregister Start and stop Review process information, statistics, reports, and status including LAG and checkpoints Retrieve the report and discard files
Configuration (parameter) files Checkpoint, trace, and heartbeat tables Supplemental logging for procedural replication, schema, and tables Tasks both custom and standard, such as auto-restart and purge trails Credential stores Encryption keys (MASTERKEY) Add users and assign their roles
1. Distribution Server replaces the classic multiple source-side data pumps with a single instance service. This server distributes one or more trails to one or more destinations and provides lightweight filtering only (no transformations).
2. Unlike Data Pump process, it is a high performance application that is able to handle multiple commands and data streams from multiple source trail files, concurrently.
1. A Receiver Server is a replacement of the multiple discrete target-side Collectors with a single instance service.
2. It is the central control service that handles all incoming trail files.
3. It coordinates with the Distribution Server and provides compatibility with the classic architecture pump for remote classic deployments.
PERFORMANCE METRICS SERVER
1. The Performance Metrics Server uses the metrics service to collect and store instance deployment performance results.
2. This metrics collection and repository is separate from the administration layer information collection.
3. All Oracle GoldenGate processes send metrics to the Performance Metrics Server. It can be used in both Microservices Architecture and Classic Architecture. Hence from OGG 12.3, you don’t have DATASTORE for monitoring purposes.
4. Use the Performance Metrics Server to:
Query for various metrics and receive responses in the services JSON format or the classic XML format Integrate third party metrics tools View error logs View active process status Monitor system resource utilization
1. There is one more component with this architecture. You might have noted in the Microservices Architecture diagram which is nothing but the ADMIN CLIENT.
2. The Admin Client is a command line utility (similar to the classic GGSCI utility). It uses the REST API published by the Microservices Architecture(MA) Servers to accomplish control and configuration tasks in an Oracle GoldenGate deployment.
3. The Admin Client can be used to create and manage processes instead of doing it graphically using OGG MA.
4. You can use the Admin Client to execute all the commands necessary to create a new Extract, create a custom Extract application using the REST API, or use the Administration Server available with MA to configure an Extract.
Installation and configuration of the OGG Microservices are explained in the below link,
Thanks for the support.