Oracle GoldenGate 19c/23ai Overview: Differences Between MA and Classic

26ai_en

Oracle GoldenGate is the de facto standard tool for real-time data integration between Oracle Databases. Its importance continues to grow as a cornerstone for cloud migration and data utilization platforms.

This article organizes the basic overview of Oracle GoldenGate (OGG), the often-confusing differences between “Classic” and “MA (Microservices Architecture),” and the mechanism of Integrated Capture. Furthermore, it explains the latest 23ai version and the outlook for the announced 26ai release.

Conclusion

If you are planning to implement or learn GoldenGate, here are the three critical points:

  1. Architecture is “MA” by Standard: For Oracle DB, OGG 23ai and later have deprecated the Classic Architecture, making Microservices Architecture (MA) the only choice.
  2. Configuration is “Integrated” by Default: “Integrated Capture/Replicat,” which utilizes the LogMiner server inside the DB, is recommended for its features and support.
  3. Future-Proof: 23ai supports the replication of AI vector data. 26ai has also been announced as the next LTS (Long Term Release), guaranteeing long-term usage.

1. What is Oracle GoldenGate? (Background and Basics)

Oracle GoldenGate (OGG) is software that replicates data in real-time between different databases.

Basic Mechanism

OGG reads the database REDO logs (transaction logs), extracts only the change deltas, and transfers them. This is called CDC (Change Data Capture).

  • Low Impact: Since it reads log files directly instead of issuing SQL queries to the Source DB, the load on the production environment is extremely low.
  • Heterogeneous Integration: It supports integration not only for Oracle to Oracle but also for diverse platforms such as PostgreSQL, MySQL, BigQuery, and Kafka.

2. Differences Between Three Key Terms (Classic / MA / Integrated)

The most confusing part of learning GoldenGate is mixing up “Architecture (Installation Type)” and “Process Mode (Internal Processing).” We will distinguish these clearly.

A. Architecture (Installation Type)

This refers to the structural difference of the software. While it was selectable up to 19c, the generational shift has been completed for Oracle DB.

FeatureClassic ArchitectureMicroservices Architecture (MA)
OverviewTraditional monolithic configuration.Modern configuration based on REST API.
ManagementCommand line (ggsci) is the main tool.Web UI, REST API, or adminclient.
ProcessManager process controls everything.Service Manager controls each service.
ProsMature technology with simple configuration.Easy monitoring and automation. Robust SSL configuration.
StatusEnded with 19c (for Oracle DB).Standard for 23ai and later. Recommended configuration.

B. Process Mode (Capture/Replicat Types)

This is the “operation mode” of how OGG processes interact with the Oracle Database.

1. Classic Capture

  • Mechanism: OGG directly accesses and reads REDO log files on the OS.
  • Status: Deprecated. It is rarely used today as it does not support Multitenant (CDB/PDB) environments or certain data types.

2. Integrated Capture

  • Mechanism: Acquires change data via the LogMiner server inside the DB.
  • Pros: Fully supports advanced Oracle features such as compressed tables, encryption, and PDML. High reliability in RAC configurations as log merging is handled by the DB.
  • Status: Current Standard. Basically, you should select this.

Summary: Which Combination Should You Use?

  • 19c Environment:Microservices Architecture” + “Integrated Capture” is recommended.
    • Note: Classic Architecture is acceptable if there are existing assets, but future migration is necessary.
  • 23ai Environment:Microservices Architecture” + “Integrated Capture” is the only choice.

3. Specific Use Cases

Here are four representative patterns showing why Oracle GoldenGate is chosen.

1. Zero Downtime Migration

This is the most common use case. It is used for migration from on-premises to cloud (OCI/AWS/Azure) or during hardware refreshes.

  • Method: Synchronize the old DB and new DB using OGG, and switch the application connection once synchronization catches up.
  • Effect: Even with data migration of several TBs to hundreds of TBs, service downtime is limited to only the “few minutes of switching time.”

2. Offloading Real-Time Analytics/Reference Load

To avoid load on the production mission-critical system (OLTP), data for analysis is transferred to a separate DB in real-time.

  • Method: Reflect only the update deltas of the production DB to the analysis DB (DWH or Data Lake) in seconds.
  • Effect: Eliminates “nightly CSV batch integration” and enables management to make decisions based on “current data.”

3. Heterogeneous System Integration & Event Sourcing

A case where changes in the Oracle Database trigger other systems.

  • Method: Send Oracle update data to Kafka or JMS, which is then received by microservices to start processing.
  • Effect: Connects legacy Oracle systems with modern app platforms without modifying the legacy system.

4. Active-Active Configuration (High Availability)

A configuration where writing (updating) is performed at both geographically separated data centers (e.g., Tokyo and Osaka).

  • Method: Configure Bidirectional replication.
  • Note: Designing for “Conflict” resolution when the same record is updated simultaneously is mandatory, making the difficulty level high.

4. Features by Version and Roadmap (19c / 23ai / 26ai)

Oracle GoldenGate 19c

The current mainstream and LTS (Long Term Support) release.

  • Running in production environments of many enterprises.
  • The last major version (for Oracle DB) where both Classic and MA are supported.

Oracle GoldenGate 23ai

The latest version released in 2024.

  • AI Support: Supports replication of Vector data types in Oracle Database 23ai. Optimized for data supply to RAG (Retrieval-Augmented Generation) platforms.
  • Classic Deprecated: Classic Architecture for Oracle Database is no longer provided.
  • Improved Usability: The Web UI (MA) has been refined, making pipeline creation intuitive.

Oracle GoldenGate 26ai (Preview/Future)

The next-generation version announced at events like Oracle CloudWorld.

  • Planned to be the next LTS (Long Term Support).
  • Expected to further strengthen the Data Mesh concept and enhance features to securely integrate distributed data assets in real-time.

5. Comparison with Oracle Data Guard

What is the difference from the often-compared Oracle Data Guard? The biggest difference is “Logical Replication vs. Physical Replication.”

Comparison ItemOracle GoldenGate (OGG)Oracle Data Guard (DG)
Replication TypeLogical Replication(Data extraction/application at SQL level)Physical Replication(Complete synchronization at block level)
Main PurposeData migration, ETL, Active-Active, Heterogeneous DB integrationDisaster Recovery (DR), High Availability (HA)
Version/OSCan be different(e.g., Linux 19c → Windows 23ai)Must generally be identical(Strict constraints apply)
Data StructureTransformable (Column filtering, mapping)Identical (Exact same structure as Source)
Active-ActivePossible (Bidirectional synchronization)Impossible (Active Data Guard is read-only)
LicenseSeparate product license requiredIncluded in EE (Active DG is a separate Option)

Criteria for Selection:

  • Data Guard: When “Disaster Recovery (DR)” in an identical environment is the top priority.
  • GoldenGate: When the purpose is “Migration” across versions or “Utilization” sending only necessary data.

6. Installation Steps and Implementation Example (Common to 19c/23ai)

Building OGG is complex, but here we focus on the most important “Preparation of Source DB (Oracle).” OGG will not work without this.

Prerequisites

  • DB: Oracle Database 19c or 23ai (CDB configuration)
  • OS: Oracle Linux 7/8/9
  • User: c##ggadmin (Created as a Common User)

Procedure Overview

  1. Set DB parameters (Enable replication)
  2. Enable Force Logging
  3. Create GoldenGate admin user and grant privileges

Execution Example (SQL)

-- 1. Connect as SYS user
CONN sys/password@localhost:1521/orclcdb AS SYSDBA

-- 2. Enable GoldenGate replication (Often requires no restart, but depends on environment)
ALTER SYSTEM SET enable_goldengate_replication=true SCOPE=BOTH;

-- 3. Enable Force Logging at the database level
-- (Mandatory to record pre-update values in logs during UPDATEs)
ALTER DATABASE FORCE LOGGING;

-- 4. Add minimal supplemental logging
ALTER DATABASE ADD SUPPLEMENTAL LOG DATA;

-- 5. Create GoldenGate admin user (Add c## as it is a CDB environment)
CREATE USER c##ggadmin IDENTIFIED BY "StrongPassword_123" CONTAINER=ALL;

-- 6. Grant privileges (Use DBMS_GOLDENGATE_AUTH package as best practice)
-- This grants necessary system privileges collectively
BEGIN
  DBMS_GOLDENGATE_AUTH.GRANT_ADMIN_PRIVILEGE (
    grantee_fingerprint => 'c##ggadmin',
    privilege_type      => 'CAPTURE', -- For Source side
    grant_select_privileges => TRUE,
    do_grants           => TRUE
  );
END;
/

-- Verify
SELECT username, account_status FROM cdb_users WHERE username = 'C##GGADMIN';

7. Troubleshooting

Common errors and initial responses.

Representative Errors

Error CodeError ContentMain Cause and Solution
ORA-01403No data foundData inconsistency. UPDATE on Source but no row on Target.→ Temporarily bypass with HANDLECOLLISIONS parameter or redo initial load.
ORA-00001Unique constraint violatedUnique constraint violation. INSERT came but data already exists on Target.→ Review conflict detection settings for bidirectional sync, etc.
OGG-01296Error mapping…Column definition difference. Table definitions differ between Source and Target.→ Recreate definition file (defgen) or check ASSUMETARGETDEFS.

Verification Command (For MA)

In an MA environment, use adminclient.

# Check process status
adminclient> info all

# Check detailed report (Identify error cause)
adminclient> view report EXTRACT_NAME

8. Operational and Security Considerations

Merits and Pitfalls

  • Merit: Migration is possible with near-zero downtime.
  • Pitfall (Archivelog Depletion): If massive transactions occur while OGG is stopped, the archivelogs that OGG needs to read may be deleted. Be careful with RMAN deletion policy settings.

Security (Wallet)

In a production environment, writing DB passwords in plain text in parameter files is strictly prohibited. Use Oracle Wallet (Credential Store) to manage aliases.

# Alias creation example (MA environment)
adminclient> ADD CREDENTIALSTORE
adminclient> ALTER CREDENTIALSTORE ADD USER c##ggadmin ALIAS ggadmin_alias DOMAIN OracleGoldenGate

9. FAQ (Frequently Asked Questions)

Q1. Is migration from Classic to MA mandatory? A. It is mandatory if you are upgrading to Oracle Database 23ai or later. While Classic is supported between 19c versions, migration to MA is strongly recommended due to its rich operational management features.

Q2. Can I use it with Standard Edition (SE2)? A. Yes, you can. However, a GoldenGate license (CPU Core metric) is required separately from the Oracle Database license.

Q3. Where should OGG be installed? A. Basically, it is recommended to install it on a “OGG dedicated server (Hub configuration)” separate from the DB server. This separates resource load from the DB server and isolates the impact of OS upgrades.

10. Summary

The latest trends for Oracle GoldenGate are as follows:

  1. Classic Architecture is ending. Learn and implement Microservices Architecture (MA) moving forward.
  2. Use cases are expanding from “Migration” to “Real-time analytics” and “Hybrid integration.”
  3. Integration with AI/Vector search and Data Mesh will advance further in 23ai/26ai.

It is essential for future Oracle engineers to get used to operations via REST API and Web UI, not just legacy ggsci commands.

[reference]
Oracle GoldenGate 23ai – Get Started

Note: This article explains based on Oracle Database 19c/23ai (Screens and default values may differ in other versions).

コメント

Copied title and URL