Oracle GoldenGate Frequently Asked Questions

Get answers to the most commonly asked questions regarding Oracle GoldenGate AI implementation.

Why does Oracle GoldenGate matter for enterprise AI?

Oracle GoldenGate matters for enterprise AI because AI depends on current, trusted business data. Models, RAG systems, and AI agents cannot reliably reason or act when working from stale batch snapshots or incomplete copies of operational data. GoldenGate streams business events as they happen, giving AI systems access to fresh operational reality while preserving governance, consistency, and auditability.

How does Oracle GoldenGate support RAG and AI agents?

Oracle GoldenGate supports RAG and AI agents by continuously delivering operational data into vector databases, RAG pipelines, AI knowledge bases, lakehouses, and event-driven systems. Using GoldenGate AI capabilities, changed records can be enriched, embedded, summarized, classified, or routed as part of the pipeline, so AI systems operate on current business context rather than stale snapshots.

How does GoldenGate support vector data?

It can replicate existing vectors, move vectors into Oracle AI Database, stream vector changes, and generate embeddings during replication.

When should I use @AISERVICE?

Use @AISERVICE when embedding or enrichment should run in an external AI service, such as a managed or GPU-backed endpoint. See External AI Embedding with @AISERVICE

When should I use @DBFUNCTION?

Use @DBFUNCTION when embedding logic should execute in the target database as part of apply processing. See Native Database Embedding with @DBFUNCTION

How should historical vector loads be handled?

Use bulk instantiation or database-native loading for historical data, then let GoldenGate process incremental changes.

What are the main use cases for Oracle GoldenGate?

Oracle GoldenGate is used for mission-critical high availability and disaster recovery, zero-downtime migrations, real-time analytics, lakehouse ingestion, event-driven architectures, AI and RAG pipelines, data fabric architectures, and governed data synchronization across hybrid and multicloud environments.

Does Oracle GoldenGate support Oracle E-Business Suite (EBS) database migration, and is the Oracle certification information for EBS still valid?

Oracle EBS does not certify any logical replication product for migrations, instead focusing on traditional database methods (import/export, Oracle data pump).

While GoldenGate can be used to replace some of the work done by these traditional database methods to reduce the overall downtime associated with a migration it should not be used on all objects.

bjects that are not supported by GoldenGate or are related to temporary work should be migrated using traditional methods during a downtime window.

Does the AWS reference architecture for GoldenGate with EFS support cross-region DR scenarios?

Check the AWS blog High Availability for Oracle GoldenGate Microservices Architecture in AWS, which describes an in-region high availability design.

In that context:

For cross-region DR scenarios, behavior differs significantly:

Because of these factors, the in-region design patterns outlined in the AWS blog do not directly extend to cross-region DR without additional considerations.

Recommendation:

For cross-region architectures, use active data movement (e.g., GoldenGate Distribution Path) rather than relying on asynchronously replicated shared storage for trail files.

What are the Oracle Database versions GoldenGate supports?

For more information, see https://www.oracle.com/integration/goldengate/certifications/.

What are the different types of GoldenGate configurations and use cases?

What are the key components of GoldenGate?

What is Oracle GoldenGate and what are its primary use cases?

Oracle GoldenGate is a data integration and replication solution that captures, transforms, and delivers transactional changes across multiple heterogeneous systems in real time.

The primary use cases for Oracle GoldenGate are as follows:

Which databases and platforms does Oracle GoldenGate support?

Oracle GoldenGate supports a wide range of databases and targets, including:

Oracle GoldenGate can capture from Oracle Fusion SaaS and OTM SaaS applications running in OCI.

Oracle GoldenGate cannot capture from Salesforce.com/SFDC.

Oracle GoldenGate can replicate changes into Teradata and TimesTen, but cannot capture from either.

It is recommended to review GoldenGate Certification Metrics for specific database and target support. For more information, see https://www.oracle.com/integration/goldengate/certifications/.

What are the differences between Oracle GoldenGate Classic Architecture and Microservices Architecture?

For more information on MA, see Oracle GoldenGate Microservices Architecture.

How does Oracle GoldenGate compare with other replication tools?

Oracle GoldenGate is ideal for data integration, database replication, data movement, database migrations, real time data ingestion due to the following reasons:

What are the prerequisites for installing Oracle GoldenGate on database XYZ?

Platform & Compatibility

Deployment Model

Database Configuration

Infrastructure & System Resources

Storage

Network & Ports

OS & User Setup

Database Connectivity

Microservices-Specific Requirements

Security

High Availability (Optional)

Operational Readiness

For more information on preparing databases for Oracle GoldenGate, see Prepare Databases.

What are the differences between secure and non-secure deployments?

How do I configure Oracle GoldenGate Microservices using OGGCA?

For more information, see Add a Deployment and Add a Deployment in Silent Mode using OGGCA.

What are the best practices for optimizing Oracle GoldenGate performance?

For modern Oracle GoldenGate deployments, the recommended approach is to use Integrated Extract together with Parallel Replicat, as Parallel Replicat is now the strategic and preferred replication method for high-performance target apply operations.

Integrated Replicat is being phased out in favor of Parallel Replicat because Parallel Replicat provides better scalability, improved transaction apply performance, and more efficient parallel processing for high-volume enterprise workloads.

A well-optimized GoldenGate architecture should separate capture, transport, and apply stages by using local and remote trail files, which improves resiliency and isolates replication from network interruptions. Performance also depends heavily on the underlying infrastructure, including fast storage, properly sized database memory, efficient redo log configuration, and stable network connectivity.

Continuous monitoring of Extract lag, Replicat lag, throughput, and checkpoint activity is essential to proactively identify bottlenecks before they impact replication latency.

In general, the best GoldenGate performance is achieved through a combination of scalable architecture design, proper workload distribution, database tuning, and carefully managed parallelism, allowing organizations to maintain low latency and reliable replication even under large transactional workloads.

How do I monitor lag and troubleshoot performance issues?

What tools or commands can I use to monitor Oracle GoldenGate processes?

In Oracle GoldenGate Microservices Architecture, monitoring is primarily performed through the web-based Administration Service, REST APIs, and the Performance Metrics Service rather than traditional classic architecture tools like GGSCI. The Administration Service provides centralized dashboards that allow administrators to monitor the health and status of Extract, Distribution, Receiver, and Parallel Replicat processes in real time. Through the web interface, users can track replication lag, checkpoint progress, throughput rates, path status, and process performance across the entire deployment. REST APIs also provide programmatic access to monitoring data, enabling integration with automation frameworks and enterprise observability platforms.

A key monitoring component in Microservices Architecture is the Performance Metrics Service (PMSRVR), which collects and exposes operational metrics for replication processes and distribution paths. These metrics can be integrated with monitoring solutions such as Oracle Enterprise Manager, OCI Monitoring, Prometheus, and Grafana to provide centralized dashboards, alerting, and long-term performance analysis. Administrators also rely on deployment logs, report files, and diagnostic information available through the Service Manager and Administration Service interfaces to troubleshoot errors, monitor process behavior, and investigate latency issues.

For OCI GoldenGate deployments, additional monitoring capabilities are available through the OCI Console, OCI Logging, OCI Monitoring, and OCI Alarms, providing cloud-native visibility into deployment health, scaling behavior, replication lag, and operational events. Overall, monitoring in GoldenGate Microservices Architecture focuses on centralized observability, API-driven management, and integration with enterprise monitoring platforms to provide real-time insight into replication performance and system health.

Users can create their own dashboards and monitoring application by accessing StatsD exports and API calls.

What are trail files, and how does Oracle GoldenGate use them in replication?

Trail files store data changes captured by the Extract process in a platform-agnostic format.

Start with Parallel Replicat: For most use cases, especially those involving high-volume transactional workloads, Parallel Non-Integrated Replicat offers the best performance and flexibility.

GoldenGate Distributed Applications and Analytics support Classic and Coordinated Replicat.

For GoldenGate for Distributed Applications and Analytics, depending on the target, Coordinated Replicat will provide better performance.

How do I set up TLS/SSL for secure data replication?

What are the options for encrypting trail files?

For more information on securing data, see Secure Data at Rest in the Oracle GoldenGate Microservices Documentation.

How can I integrate Oracle GoldenGate with external identity providers (for example, IAM, OAM) for GoldenGate’s own authentication?

How do I migrate databases with zero downtime using Oracle GoldenGate?

Oracle GoldenGate enables near zero-downtime database migrations by continuously replicating transactional changes from the source database to the target database while both systems remain online. Instead of requiring a long outage window for export, import, and cutover activities, GoldenGate allows organizations to synchronize data in real time so the final migration cutover can be completed with minimal application interruption.

In a typical zero-downtime migration architecture, GoldenGate captures changes from the source database using Integrated Extract and writes them into trail files. The changes are then transmitted through Distribution Services and applied to the target database using Parallel Replicat. While the initial data load is being migrated through backup/restore, Data Pump, RMAN duplication, or other bulk load methods, GoldenGate continuously replicates ongoing transactions so the target remains synchronized with the source throughout the migration process.

The migration workflow usually follows several phases:

During the initial load phase, a full copy of the database is transferred to the target environment. Once the baseline data is loaded, GoldenGate applies all ongoing transactional changes captured from the source database. This continuous replication significantly reduces the outage window because the target database is already nearly synchronized before cutover begins.

Data validation is a critical part of zero-downtime migrations. Oracle GoldenGate Veridata is commonly used to compare source and target databases during replication to ensure data consistency before production switchover. Continuous validation helps identify discrepancies early and reduces migration risk.

At cutover time, application activity is briefly paused, remaining transactions are allowed to replicate, and administrators verify that replication lag reaches zero. Once synchronization is confirmed, applications are redirected to the target database, and the target environment becomes the new production system. Because most data movement occurred while systems were online, the actual outage window is typically reduced to only the final synchronization and application redirection process.

GoldenGate supports zero-downtime migrations across:

In modern GoldenGate Microservices Architecture and OCI GoldenGate deployments, migration management is further simplified through centralized web interfaces, REST APIs, automated deployment services, and integrated monitoring capabilities. Parallel Replicat, integrated capture, and scalable distribution services help handle large transactional workloads efficiently during migration activities.

Overall, Oracle GoldenGate enables zero-downtime migrations by combining continuous real-time replication, scalable parallel processing, continuous validation, and controlled cutover procedures, allowing organizations to migrate critical databases with minimal business disruption and reduced operational risk.

What are the best practices for configuring bidirectional replication?

Best practices for configuring bidirectional replication with Oracle GoldenGate include:

Bidirectional replication environments require careful planning because they are more complex than unidirectional replication and can introduce challenges such as:

What does it mean when Replicat shows “stuck” transactions, and how can I fix it?

When Replicat shows “stuck” transactions, it usually means the Replicat process is unable to apply one or more transactions on the target database and replication progress stops or becomes delayed.

Common causes include:

Typical troubleshooting steps include:

In some cases, administrators may need to:

depending on the case, severity and business requirements.

How do I manage disk space and purge old trail filesin Microservices?

In Oracle GoldenGate Microservices Architecture, disk space management and trail file purging are important to prevent storage exhaustion and maintain healthy replication environments.

Trail files are typically managed using automated purge policies that remove old trail files after they are no longer needed by downstream processes.

Common practices include:

Trail files can usually be purged when:

In Microservices, trail management is commonly handled through:

Additional recommendations include:

Proper trail management helps avoid:

How do I configure auto start and restart in Microservices?

In Oracle GoldenGate Microservices Architecture, auto start and auto restart can be configured to automatically start and recover deployment services and replication processes after failures or server restarts.

This is typically configured by:

Auto restart settings help ensure high availability by automatically restarting failed processes without manual intervention.

Common configuration options include:

These settings can usually be managed through:

Auto start and restart are commonly used in:

What are the troubleshooting steps for replication lag?

Common troubleshooting steps for Oracle GoldenGate replication lag include:

Replication lag analysis usually focuses on identifying whether the bottleneck is caused by:

How can I use GoldenGate for distributed data streams and JSON relational duality?

What are the advanced options for data transformation in GoldenGate?

Can GoldenGate run on z/OS to capture changes from or deliver changes to Db2 for zOS?

If you only run Replicat against the Db2 z/OS, then this package is not needed.

Does GoldenGate for Db2 for i and Db2 LUW have Microservices Architecture?

Does GoldenGate provide any ODBC Drivers in Db2 for i/Db2 for LUW/Db2 z/OS build installation?

No, the end user will have to install the appropriate ODBC drivers using their own license agreement with IBM for those ODBC drivers if they are not already installed on the server where GoldenGate is being installed. Please refer to IBM’s ODBC driver user guide on how to download appropriate ODBC driver(s).

How can I run GoldenGate in Docker Container?

Oracle GoldenGate can be run in Docker containers by deploying the GoldenGate software as a containerized service. Oracle provides GoldenGate container images through Oracle Container Registry (OCR), allowing users to pull and deploy prebuilt images for faster setup and standardized environments.

Running GoldenGate in containers provides benefits such as:

GoldenGate Microservices Architecture is typically preferred for container deployments because it is designed for modern distributed environments and works well with Docker and Kubernetes orchestration platforms.

Containerized GoldenGate deployments are commonly used in:

Persistent storage is usually configured externally to retain trails, checkpoints, and configuration data outside the container lifecycle.

What is the OCI GoldenGate?

Oracle Cloud Infrastructure (OCI) GoldenGate is a fully managed, cloud-native Data Fabric platform that enables real-time data movement, integration, and streaming across heterogeneous environments at enterprise scale. It captures and delivers transactional data changes with low latency between databases, data warehouses, analytics platforms, messaging systems, and cloud services.

As a core component of a modern Data Fabric strategy, OCI GoldenGate helps organizations connect, synchronize, and operationalize distributed data across on-premises, hybrid, and multicloud environments. It supports a wide range of use cases including real-time data replication, zero-downtime migrations, operational reporting, event-driven architectures, streaming analytics, AI/ML data pipelines, and data synchronization.

OCI GoldenGate also provides integrated capabilities to design, orchestrate, monitor, transform, validate, and compare data pipelines through a unified and intuitive user experience.

In which regions is OCI GoldenGate available?

Check here for the current regions OCI GoldenGate is deployed on - https://www.oracle.com/cloud/data-regions/

Where can I find the OCI GoldenGate documentation?

The OCI GoldenGate documentation is available at: https://docs.oracle.com/en/cloud/paas/goldengate-service/index.html

What are the key use cases for OCI GoldenGate?

Key use cases for OCI GoldenGate include:

What are the differences between OCI GoldenGate and GoldenGate on OCI Marketplace?

Here are a couple of differences between the two offerings:

Where can I find the Service Level Objectives (SLOs) and Service Level Agreements (SLAs)?

Use the current Oracle PaaS and IaaS public cloud service pillar document and the current Oracle Cloud SLA page:

https://www.oracle.com/cloud/sla/.

What does OCI GoldenGate cost?

OCI GoldenGate is priced by the OCPU’s consumed by the OCI GoldenGate host. The OCPU per hour metric follows the standard definition:

You can also refer to the Cloud Estimator which includes OCI GoldenGate in the Data Integration category: https://www.oracle.com/cloud/costestimator.html

How is BYOL licensed?

Conversion Ratios:

Any of the following supported program licenses may be aggregated to meet the conversion ratio above:

Can I migrate my GoldenGate Marketplace to OCI GoldenGate?

How do I appropriately size OCI GoldenGate?

OCI GoldenGate uses a hub architecture.

Note:

What sources and targets are supported in OCI GoldenGate?

For information on supported source and target systems, see Explore Connections.

Can OCI GoldenGate connect to private IPs or On-Prem Oracle systems?

Yes. For more information on connectivity, see OCI GoldenGate connectivity.

OCI GoldenGate connectivity to source and target is enabled with remote capture and remote delivery.

How do I set up a distribution path between OCI GoldenGate and GoldenGate running on OCI Marketplace or on-premises?

The following LiveLabs describe how to create distributions paths between OCI-GG and a GG microservices installation:

Does OCI GoldenGate support single instance Oracle databases?

Yes, both pluggable (multi-tenant) and single instances are supported.

Are dedicated Autonomous Databases supported?

Yes, Autonomous AI Database on Dedicated Infrastructure environments are fully supported.

Check current Autonomous AI Database and OCI GoldenGate documentation for the exact prerequisites: Oracle Autonomous AI Database

Can I access and monitor OCI GoldenGate using Oracle Management Cloud and Oracle Enterprise Manager (OEM)?

The Management Pack for GoldenGate now supports OCI GoldenGate.

What is Oracle GoldenGate Foundation Suite?

Oracle GoldenGate Foundation Suite is a bundle of three products. It includes:

What is Oracle GoldenGate Veridata?

Oracle GoldenGate Veridata is a high-speed, data-comparison and repair solution that identifies, reports on, and fixes data discrepancies between heterogeneous databases without interrupting ongoing business processes automatically. It provides an easy-to-use yet powerful solution for identifying out-of-sync data before it negatively impacts the business.

What are the various components of Oracle GoldenGate Veridata?

The various components of Oracle GoldenGate Veridata are:

How is real-time data comparison done with Oracle GoldenGate Veridata?

Oracle GoldenGate Veridata performs real-time data comparison by comparing source and target databases while Oracle GoldenGate replication is running.

Here’s the general process:

  1. GoldenGate replicates transactional changes from the source database to the target database in near real time.

  2. Veridata connects independently to both the source and target databases.

  3. It compares data in configurable chunks or row ranges using:

    • primary keys
    • hashes/checksums
    • row-by-row validation when mismatches are detected
  4. Veridata identifies:

    • missing rows
    • extra rows
    • changed column values
    • out-of-sync transactions
  5. Comparison jobs can run repeatedly or continuously while replication remains active, allowing ongoing validation with minimal impact on production systems.

To avoid locking tables or interrupting replication, Veridata uses optimized comparison techniques such as:

This enables organizations to validate that replicated data stays synchronized during:

Veridata itself does not replicate data,it validates the accuracy of GoldenGate replication in near real time.

For information on real-time data comparison using Oracle GoldenGate Veridata, see Oracle GoldenGate Veridata 26c: How does it work?

How do I size Oracle GoldenGate Veridata?

For information on sizing Oracle GoldenGate Veridata, see How to size Oracle GoldenGate Veridata?.

What is Veridata Repository Database used for?

All the metadata information (that is, all the configurations of Veridata) will be stored in the Veridata Repository Database.

Veridata 26c comes with a built-in MySQL database as repository.

However, the customer has the option to use this built-in MySQL or their own MySQL database for the repository.

What would be the size of the Veridata Repository Database?

All the metadata information of Veridata will be stored in this repository database.

So, it would not be of a big size. A maximum of 5 GB would be the size of the repository.

Can Oracle GoldenGate Veridata be used to compare data between heterogeneous databases?

Yes, Oracle GoldenGate Veridata is a heterogeneous data comparison and repair solution.

Please check the following certification matrix linked:

https://www.oracle.com/in/a/ocom/docs/ogg-veridata-23c-cert-matrix.xlsx

Can we compare DDLs of the table using Oracle GoldenGate Veridata?

No, Oracle GoldenGate Veridata is a data comparison tool and it can only compare data between tables. However, we have this in our roadmap.

Can Oracle GoldenGate Veridata monitor the data replication between sources and targets in real time?

Yes, Oracle GoldenGate Veridata can monitor and validate data replication between source and target databases in near real time. It continuously compares data while GoldenGate replication is running and identifies discrepancies such as missing rows, extra rows, or data mismatches.

This ensures that replicated databases remain synchronized during migrations, upgrades, and ongoing replication operations, with minimal impact on production systems.

Do we need to install Veridata Server for each Source and Target database?

No, one installation of Veridata is enough to compare data between multiple sources and targets.

You don’t need to install Veridata Servers dedicated to each source and target database.

What is Veridata Agent? How does it need to be configured?

Veridata Agent is a light-weight Java program which is responsible for fetching data from source and target database tables.

You need to configure one dedicated Agent for each database.

For example, if you have 5 sources and targets, then you need to configure 5 Veridata Agents for 5 sources and 5 Veridata Agents for 5 targets.

Where do we need to install and deploy the Veridata Agents?

Veridata Agents can be deployed either native or remote to the Database Servers. When you configure Veridata Agents remotely, then you need to make sure to have a good network between the Veridata Agents and the source/target databases.

Where is the Veridata Agent Properties file located?

This can be found in < AGENT_HOME > path with the name "agent.properties".

Where is the Veridata server config file present?

The Veridata server config file is present in the following path:

/config/veridata/veridata.cfg

Where is the oggvdt_cainput.properties file present?

The oggvdt_cainput.properties file is present in the following path:

/config/oggvdt_cainput.properties

Where can I find the Veridata Reports?

Oracle GoldenGate Veridata reports are typically generated and stored on the Veridata Server host under the Veridata installation directory.

The default locations are usually:

You can also access reports from the Veridata Web UI:

  1. Log in to the Veridata console.
  2. Open the comparison job.
  3. Go to Reports or Job DetailsReports.
  4. Download HTML, XML, or PDF outputs, depending on the configuration.

Common report types include:

If you are using Veridata with OGG Microservices or OCI deployments, the reports may instead be written to:

You can verify the exact report path in:

<VERIDATA_HOME>/cfg/veridata.cfg

or the server startup/configuration properties.

Can we have multiple Veridata Agents for a database?

Yes, but we recommend 1 agent for 1 database.

How many Compare pairs can I create in a group?

There is no restriction on the number of Compare pairs that can be created. Any number is fine.

How many Compare pairs can I run in parallel in Veridata?

The maximum default value is 100.

But it can be updated from the veridata.cfg file by changing the value of maxconcurrentjobs.

Can only incremental or changed data be compared on daily basis in Veridata?

Yes, Veridata has a feature called Delta Comparison.

Once you enable this feature, only the changed data will be compared.

What is Delta Comparison in Veridata?

Compare pairs can be configured to use delta processing, a performance feature that compares only the data blocks that have changed since the last run, instead of scanning the entire table.

This prevents comparing all the historical data again and again and compares only the changed data.

How do I enable Delta Comparison in Veridata?

In Oracle GoldenGate Veridata 26c, Delta Comparison is more aligned with the modern “continuous data validation” model rather than the older classic-style delta processing explanations from legacy documentation. The feature is designed to reduce comparison overhead by focusing only on changed data between comparison cycles, which is especially important for continuous validation in active-active, hybrid cloud, and large-scale replication environments.

In Veridata 26c, Delta Comparison is enabled through the modernized Veridata Web UI when configuring Compare Pairs and Jobs. Instead of relying heavily on legacy command-line workflows, administrators configure comparison behavior directly in the UI or through REST APIs. The process typically involves enabling delta-based validation within the Compare Pair configuration so Veridata tracks changes between executions and limits future comparisons to modified data sets. This reduces database impact and improves comparison performance for continuous validation use cases.

The 26c architecture also emphasizes:

rather than older standalone comparison execution models.

Additionally, Veridata 26c introduces native scheduling and enhanced automation capabilities directly in the UI and APIs, making Delta Comparison more operationally integrated into ongoing replication health validation rather than being treated as a manual optimization feature.

What Oracle Enterprise Manager plugin version is certified for monitoring Oracle GoldenGate 26ai Microservices deployments?

Oracle GoldenGate 26ai Microservices monitoring and discovery in Enterprise Manager 24ai is certified with Oracle GoldenGate EM Plugin version 13.5.2.0.6.

Oracle strongly recommends running Oracle GoldenGate with currently recommended Oracle Database Release Updates (RUs) and GoldenGate bundle patches.

Older database patch levels may expose customers to:

Recommended practice:

Follow the latest:

Validate fixes before assuming product defects on older patch levels.

Primary Note for Oracle GoldenGate Core Product Patch Sets (KB159960)

Does Oracle GoldenGate and OCI GoldenGate support change data capture from MongoDB?

Oracle GoldenGate and OCI GoldenGate supports change data capture from MongoDB and MongoDB Atlas. It supports bi-directional replication between different MongoDB databases.

Can I use Oracle GoldenGate and OCI GoldenGate for MongoDB to Oracle Database migrations?

Yes, Oracle GoldenGate supports no downtime migrations from MongoDB to Oracle database. You can refer to Oracle GoldenGate documentation for details.

How can I configure Oracle GoldenGate migrations to migrate from MongoDB to Oracle Database?

Ensure the following prerequisites:

Follow these steps to migrate MongoDB to Oracle Database for Oracle GoldenGate:

  1. Run MongoDB Dump Utility. Run the mongodump command with the --oplog option to create a snapshot of the source MongoDB database:

    $ ./bin/mongodump --uri="mongodb://localhost:27021" --oplog -v

  2. Run the OplogLSN.sh script to extract the first and last operation timestamps from the oplog.bson file by providing the path to oplog.bson file as an argument as follows:

    $./oplogLSN.sh /path/to/dump/oplog.bson

    The output provides the timestamps of the first and last operation (or the first noop if no operation occurred during the dump process.)

    Output:

    2025-02-27T13:53:00.885+0000 1 objects found First LSN: 1740663867.1 Last LSN: 1740663946.211 3

  3. Inspect Oplog Entries: If there were any incoming operations during the dump, then the oplog.bson file contains entries for those operations, each with a timestamp. You can use OplogLSN.sh to capture the first and last operation timestamps or convert it to JSON file for manual inspection, as shown in the previous step.

  4. Run MongoDB Restore Utility: After you have the necessary timestamps, use the mongorestore utility to restore the selected collections from the dump to the target MongoDB instance:

    $ ./mongorestore --uri="mongodb://localhost:27021" --nsInclude=testDB.coll1 --nsInclude=testDB.coll2 /path/to/dump -v

  5. Start MongoDB CDC Extract: Start the MongoDB CDC Extract process from the first operation timestamp (LSN position) extracted from the oplog.bson file. This will ensure the CDC Extract begins capturing operations that occur after the dump process started.

  6. Configure the MongoDB Replicat with the generated CDC trail file and set the oplogReplayLastLsn property to the last operation timestamp from the oplog.bson file. This ensures the Replicat runs in oplog-replay mode, avoiding any collisions. Once the last timestamp is processed, it continues in normal mode. This configuration guarantees precise initiation, with no data loss or duplication, and eliminates the need for costly collision handling in the Replicat.

How can I run initial loads from Snowflake to Oracle Database?

  1. Create a change data capture extract (from source Oracle Database).

  2. Get SCN from the source database.

  3. Create an initial load extract (from source Oracle Database).

  4. Create a distribution path for CDC Extract.

  5. Create a distribution path for initial load Extract.

  6. Create a Replicat for the initial load (targeting Snowflake).

  7. Create a Replicat for the change data capture replication (targeting Snowflake).

What should I do to fix “Exception: net.snowflake.client.jdbc.SnowflakeReauthenticationRequest: Authentication token has expired. The user must authenticate again.” error in Oracle GoldenGate Snowflake replication?

This error occurs when there are extended periods of inactivity. To resolve this issue, you can set the JDBC parameter CLIENT_SESSION_KEEP_ALIVE to force the database user to login after a period of inactivity.

snowflakecomputing.com/?warehouse=<warehouse-name>&db=<database-name>&CLIENT_SESSION_KEEP_ALIVE=true

Does Oracle GoldenGate and OCI GoldenGate support DDL replication to Snowflake?

Oracle GoldenGate can be configured to propagate source DDL changes to target Snowflake tables. Automatic schema evolution is the capability to detect, manage, and apply changes to a database schema, such as tables, columns, indexes, or relationships, without requiring manual intervention. Automatic schema evolution supports detecting new objects and metadata changes, then automatically generating target DDL for schema evolution.

For initial load, it can create or replace target tables.

For CDC Replicat, it can create or modify target tables during ongoing apply. For more details, refer to Oracle GoldenGate documentation.

Can I use Oracle GoldenGate and OCI GoldenGate for Apache Iceberg replication?

Yes, Oracle GoldenGate supports real-time data replication into Apache Iceberg. Oracle GoldenGate uses Apache Iceberg Java API for open Apache Iceberg Lakehouses. Oracle GoldenGate supports Oracle AI Data Catalog, Amazon Glue, Polaris, Nesti, Hadoop, REST catalogs.

Can I use Oracle GoldenGate and OCI GoldenGate for real-time data replication to Apache Iceberg tables on OCI Object Storage?

Yes, Oracle GoldenGate and OCI GoldenGate can be configured for real-time data replication to Apache Iceberg tables stored on OCI Object Storage through OCI Object Storage S3 API endpoint. Refer to Building a Real-Time Apache Iceberg Lakehouse on OCI Object Storage with OCI GoldenGate for more details.

Does Oracle GoldenGate and OCI GoldenGate Apache Iceberg replication support both merge on write?

Yes, Oracle GoldenGate and OCI GoldenGate support merge-on-write for Iceberg tables managed by Snowflake, Google BigQuery, and Databricks. On these platforms, GoldenGate uses the target platform’s compute resources for compaction.

How does Oracle GoldenGate and OCI GoldenGate can handle primary key updates in parquet tables on OCI Object Storage?

Oracle GoldenGate and OCI GoldenGate handle primary key updates in three modes. This behavior is controlled by adding gg.handler.name.format.pkUpdateHandling to the Replicat properties file. Supported values include abend, update, and delete-insert. Abend is the default behavior. The Replicat fails when a primary key update is detected and logs the error in the report file. Update treats the primary key update like any other update operation. Use this setting only if you can guarantee that the primary key is not used as selection criteria.

Delete-insert replicates the primary key update as two records: one with the before image, marked as a delete, and one with the after image, marked as an insert.

To use delete-insert, the Extract process must capture uncompressed change data records, meaning all columns are written to the trail file.

To generate uncompressed records, use LOGALLSUPCOLS for Oracle Database sources and COMPRESSUPDATES | NOCOMPRESSUPDATES for non-Oracle databases.

For example, when replicating to OCI Object Storage, set gg.handler.<gg.target value>.formatpkUpdateHandling=delete-insert` to replicate primary key updates as one delete record with the before image and one insert record with the after image.

How can I replicate Oracle DATE and TIMESTAMP columns to parquet tables stored on OCI Object Storage with Oracle GoldenGate?

Oracle DATE and TIMESTAMP columns are replicated as strings by default when no explicit mapping is configured. Without proper mapping, downstream engines will not recognize these columns as date/time types, making date arithmetic, range filtering, and time-based partitioning impossible without explicit casting. The enableTimestampLogicalType property enables mapping of Oracle DATE and TIMESTAMP columns to the Avro timestamp-micros logical type, which represents values as microseconds since epoch, the correct representation for analytical and data lake workloads.

In the Oracle GoldenGate Cloud Object Storage Replication, source DATE and TIMESTAMP types are mapped to Avro files (including Parquet, Iceberg and Delta) as STRING by default.

To replicate source DATE and TIMESTAMP types as timestamp-micros logical type to Avro files (including Parquet, Iceberg and Delta), set gg.handler.<gg.target value>.format.enableTimestampLogicalType to true.

When timestamp logical type enabled, gg.format.timestamp is also required. For example: gg.handler.oci.format.enableTimestampLogicalType= truegg.format.timestamp=yyyy-MM-dd HH:mm:ss.SSSSSS

How can I improve Oracle GoldenGate OCI Object Storage replication performance?

The Oracle GoldenGate Cloud Object Storage Replication performance can be tuned using two key features: Replicat type and GROUPTRANSOPS parameter. In addition to the Replicat type and transaction grouping, the size of the files produced by the Replicat directly affects throughput and should be tuned in conjunction with the other settings. Oracle GoldenGate Distributed Applications and Analytics provides two different replication modes: Classic Replicat and Coordinated Replicat.

Classic Replicat is a single-threaded process that applies the messages to target cloud storage services. Coordinated Replicat is a multi-threaded process where multiple threads read the OGG trail file independently and apply transactions in parallel. The Oracle GoldenGate Cloud Object Storage Replication process optimizes processing with transaction grouping. The GROUPTRANSOPS parameter groups multiple small transactions into a single larger transaction applied to cloud storage targets. GROUPTRANSOPS is configured in parameters file. By default, GROUPTRANSOPS is set to 1000. You can increase up to 20000 for better performance.

For example: GROUPTRANSOPS 20000

How can I set the file size in Oracle GoldenGate and OCI GoldenGate Google Cloud Storage replication?

Oracle GoldenGate replicat creates a file in the local file system and keeps it open until a rollover condition is met or triggered by a metadata change event from the source (like DDL change). Users can control file rollover by using replicat properties. Max File Size controls the file sizes. By default, file sizes are configured to 1 GB; but it can be configured as needed. When the max size is reached, file is closed, and a new file is generated. For more details, see Configuring the File Writer Handler in Oracle GoldenGate for DAA documentation.

Does Oracle GoldenGate and OCI GoldenGate supports partitioning with parquet file replication to Google Cloud Storage?

Oracle GoldenGate and OCI GoldenGate supports creating partitioned files in target object storage buckets. Partitioning improves downstream pruning and query performance, but over-partitioning increases directory/file counts and amplifies the small-file problem.

To use partitioning, data must be partitioned by the table at the highest level. This is done using the pathMappingTemplate property and it should be set to the fully qualified table name.

It will create directories within the container/bucket based on the fully qualified source table name. For example: gg.eventhandler.<gg.target value>.pathMappingTemplate=${fullyQualifiedTableName}

For creating partitions, gg.handler.<gg.target value>.partitioner.<fully_qualified_table_name> is used. This property can be used with template keyword such as ${columnValue[column_name]} or constant string values to define the partition path structure.

Does Oracle GoldenGate and OCI GoldenGate support DDL replication to parquet files on Azure Data Lake Storage (ADLS)?

Oracle GoldenGate and OCI GoldenGate ADLS replication propagates source DDL changes automatically to the files generated. Alternatively, EVENTACTIONS can be used to control the Extract/Replicat behavior in case of a DDL operation in the source database.

If Oracle GoldenGate extract captures a Create Table event from the source database, the Replicat will create a new file with the table name from the Create Table event in the target cloud object storage bucket/container.

If Oracle GoldenGate extract captures an Alter Column/Drop Column event from the source database, the Replicat will create a new file reflecting the updated source table definition.

If Oracle GoldenGate extract captures a Truncate event from the source database, you can configure the Replicat to roll the data file on Truncate event by setting:

gg.eventhandler.<gg.target value>.rollOnTruncate=true

This property is set to false by default and the Replicat does not roll the file in Truncate event. Oracle GoldenGate extract captures a Drop Table event from the source database, this has no impact on the target file system.

How does Oracle GoldenGate and OCI GoldenGate handle source Oracle NUMBER data type while replicating to parquet files on Azure Data Lake Storage (ADLS)?

Oracle NUMBER is a variable-precision decimal data type that can represent integers and fixed-point decimal values with up to 38 digits of precision.

If a column is defined without explicit precision and scale (for example, NUMBER), Oracle can store values with varying scale across rows, and in some replication/schema-generation scenarios the formatter may not be able to deterministically derive a single precision/scale for the target schema. As a result, mappings to Avro/Parquet often use a conservative decimal representation unless you explicitly configure precision and scale to match the source column definitions.

gg.handler.<gg.target value>.enableDecimalLogicalType is the master switch for decimal logical type mapping. When set to true, it instructs the Avro formatter to map Oracle NUMBER columns to the Avro decimal logical type (bytes with logicalType: decimal) instead of the default mapping which writes numbers as plain Avro numeric primitives or strings.

When precision/scale can’t be deterministically inferred, the formatter typically chooses a conservative Avro decimal definition (high precision and scale) to avoid precision loss. This can lead to downstream consumers seeing values expressed with an unnecessarily large scale (for example, apparent trailing fractional digits).

To align the target schema with known, consistent source definitions, especially for financial data (balances, prices, amounts):

set gg.handler.<gg.target value>.maxPrecision and gg.handler.<gg.target value>.oracleNumberScale.

What ADLS authentication methods are supported by Oracle GoldenGate and OCI GoldenGate?

Oracle GoldenGate and OCI GoldenGate supports Access Keys, Shared Access Signature and Azure Entra ID.

Oracle GoldenGate supports Amazon S3 Tables?

Yes, Oracle GoldenGate supports real-time Apache Iceberg replication to Amazon S3 Tables through Amazon S3 Table REST Catalogs.

Does Oracle GoldenGate and OCI GoldenGate support multi part uploads to Amazon S3?

Yes, enabling the Amazon S3 Multipart Upload feature allows uploading the large files to Amazon S3 by splitting them into small parts that can be uploaded independently and in parallel. This feature solves the already known Amazon S3 limitations, such as the single upload of 5GB+ size objects. Once all the file parts are successfully uploaded, a request is made to Amazon S3 to assemble them into a single object. To use this feature you need to enable gg.eventhandler.s3.multipartEnabled=true in Amazon S3 replicat.

Does Oracle GoldenGate and OCI GoldenGate supports partitioning with parquet file replication to Google Cloud Storage?

Oracle GoldenGate and OCI GoldenGate supports creating partitioned files in target object storage buckets. Partitioning improves downstream pruning and query performance, but over-partitioning increases directory/file counts and amplifies the small-file problem.

To use partitioning, data must be partitioned by the table at the highest level. This is done using the pathMappingTemplate property and it should be set to the fully qualified table name. It will create directories within the container/bucket based on the fully qualified source table name. For example: gg.eventhandler.<gg.target value>.pathMappingTemplate=${fullyQualifiedTableName}. For creating partitions, gg.handler.<gg.target value>.partitioner.<fully_qualified_table_name> is used.

This property can be used with template keyword such as ${columnValue[column_name]} or constant string values to define the partition path structure.

How is OCI Database Migration Service priced? (Factual)

The first 183 days (6 months) of a migration are provided at no charge, except in cases where the migration runs for more than 60 days without any data transfer.

Which sources and targets does OCI Database Migration Service support? (Factual)

Currently Oracle and MySQL homogeneous migrations are supported. The sources can be on-prem, on other clouds or in OCI. The targets need to be in OCI. Oracle is supported from 11g (11.2.0.4), 12c (12.1.0.2,12.2.0.1),19c,21c and all subsequent Oracle Database releases. MySQL: 5.7 and 8 versions. More details can be found in the next URL.

What are the migration types supported by OCI Database Migration Service?

Offline logical migration: One-time copy of the database, requires applications to be offline during the migration process. Online logical migration: Initial copy of database followed by change data capture during migration. Applications can stay online during the migration process.

During an oracle migration what objects and schemas are excluded by default?

The following object types are always excluded:

The following schemas are excluded by default:

What OCI resources are required for a migration?

Where is OCI GoldenGate available?