Best Oracle Replication Tools in 2026, Compared
38 min read

Key takeaways
There's no single best Oracle replication tool, because the tools answer different questions. Oracle Active Data Guard copies a whole Oracle database to another Oracle database, and Oracle GoldenGate moves changes to other systems for a licence fee.
Qlik Replicate, Striim, Quest SharePlex, Fivetran, AWS Database Migration Service (DMS) and Google Datastream read Oracle for you, and Debezium is the open-source log reader. OLake Go copies Oracle tables into Iceberg or Parquet on a schedule. Before you shortlist anything, check how the tool reads Oracle's logs, whether that route needs a GoldenGate licence, and where your data has to land.
- How a tool reads Oracle's logs, and one logging setting, decide licence and risk. LogMiner needs no extra licence unless GoldenGate Supplemental Logging is on, XStream generally needs a GoldenGate licence, and a tool that parses log files itself is called unsupported by Oracle.
- Log retention and large objects bite first. Archived logs must be kept long enough, and several tools handle large-object columns badly.
We checked prices and facts in October 2026 against each vendor's own pages.
How we picked
We included tools that copy data out of Oracle, by reading its logs or by scheduled table reads, are still sold or maintained, and publish documentation we could open. We compared how each tool reads Oracle, the licence rule that follows, the price basis, where data lands, and the documented limits.
Vendor facts come from each vendor's own pages and docs, read in October 2026. We did not run the other tools. "What users say" lines are single opinions from review sites and forums, each with its site, thread and month. Entries are grouped by maker and carry no ranking. This page covers Oracle only; for tools across many databases, see our best change data capture tools and best data replication tools comparisons.
One term you'll see a lot: change data capture (CDC) means finding the inserts, updates and deletes in a database and sending only those on.
First, pick how the tool reads Oracle
Oracle writes every change to redo logs, which are files where the database records each change in order. When a log fills up, Oracle copies it to an archived redo log.
Log-based tools read these files. How they read them sets the licence rule and the risks.

| Method | How it reads Oracle | Oracle licence | Limits that Oracle or vendors document |
|---|---|---|---|
| LogMiner | Oracle's built-in utility reads redo and archived logs through SQL | Oracle's GoldenGate Advantages paper says it is accessible without additional licensing. Oracle's licensing guide adds one condition, covered below | Needs at least minimal supplemental logging; table and column names over 30 characters are not supported; Oracle's paper says it was designed for diagnostics, not high-volume continuous replication, and is single-threaded |
| XStream | An Oracle programming interface that streams changes out of the redo log | Oracle's paper says use generally needs GoldenGate for Oracle licences on each database where it is used | The tool must track how far it has read (checkpoints) and handle large objects itself |
| GoldenGate Extract | Oracle's own capture process, which writes GoldenGate's own change record, a trail file | A GoldenGate licence | Cost and setup effort |
| Direct log reading | The tool parses redo and archive files itself | Oracle's paper says it does not support this approach, and that its Master Agreement addresses reverse engineering | Oracle's log format is undocumented, per the OpenLogReplicator project |
Sources: Oracle's GoldenGate Advantages paper (undated, with references accessed in June 2026) and the LogMiner documentation for Oracle 26ai, read in October 2026.
One setting can turn a free reader into a licensed one
Oracle's Licensing Information guide for Oracle 26ai says LogMiner is available in all offerings. Then it adds that when LogMiner is used with GoldenGate Supplemental Logging turned on, a GoldenGate licence is required.
That logging is on when the database parameter ENABLE_GOLDENGATE_REPLICATION is TRUE.
For on-premises databases, the same guide says a GoldenGate licence is required "regardless of which APIs are used for log consumption (e.g., LogMiner, XStream or 3rd party tools)". The setting decides the licence, whatever the tool is called.
We found no vendor page that says whether its setup turns the parameter on, so ask each vendor.

Original diagram, drawn from Oracle's Licensing Information guide for Oracle 26ai, accessed October 2026.
Caveat: Oracle sells GoldenGate, so its papers are a vendor view. It names no tool, though.
Quick definition: supplemental logging is an Oracle setting that adds extra detail to the redo log so tools can rebuild a full row. LogMiner needs at least the minimal level, and Debezium's Oracle setup guide also asks for all-column logging on captured tables.
Oracle's LogMiner documentation says the continuous_mine option was desupported in Oracle 19c, and it still documents LogMiner for 26ai.
Oracle replication tools at a glance
| Tool | Maker type | Reads Oracle with | Lands data in | Price basis |
|---|---|---|---|---|
| Oracle GoldenGate | Oracle | Extract on the redo log | Many targets; Iceberg in a separate product | Per processor or user; cloud per OCPU per minute |
| Oracle Active Data Guard | Oracle | Redo shipped to a standby | Another Oracle database | Extra-cost option on Enterprise Edition |
| Qlik Replicate | Commercial | LogMiner or Replicate Log Reader | Many targets; Iceberg through Qlik Open Lakehouse | Not published |
| Striim | Commercial | Oracle Reader (LogMiner) or OJet | Many targets; Iceberg on Google Cloud Storage or Amazon S3 Tables | Free Developer tier; others "contact us" |
| Quest SharePlex | Commercial | Redo log, method not stated | Oracle, PostgreSQL, SQL Server, Kafka, Parquet files | Not published |
| Fivetran | Managed service | Binary Log Reader, XStream Out, Teleport, HVA | Warehouses and lakes | Monthly Active Rows |
| Debezium | Open source | LogMiner, XStream or OpenLogReplicator | Kafka; community Iceberg sink | Free licence, you pay for servers |
| Open source | Table reads: Full Refresh or Full Refresh + Incremental | Apache Iceberg, Parquet | Free licence, you pay for servers | |
| AWS DMS | AWS service | LogMiner or Binary Reader | AWS targets, S3 files; Iceberg not on its target list | Instance or serverless hours |
| Google Datastream | Google service | Binary reader (Preview) or LogMiner | BigQuery, Cloud Storage, Iceberg (append-only) | Per GiB processed |
| Confluent Oracle XStream connector | Managed Kafka | XStream Out | Kafka topics | Not published |
OCPU is Oracle's unit of compute. Append-only means each change is a new row.
The 11 best Oracle replication tools
Grouped by who makes them. The order carries no ranking.
Made by Oracle
1. Oracle GoldenGate: for Oracle estates with a licence budget

Oracle GoldenGate home page, October 2026.
At a glance
- Price: Licensed per processor or Named User Plus on premises, at both the capture and apply ends. Oracle's price list of 15 September 2026 shows GoldenGate at $17,500 per processor ($350 per Named User Plus) with $3,850 of support for the first year. GoldenGate for Distributed Applications and Analytics is $20,000 per processor ($400 per Named User Plus), counted on the source side only. Oracle Cloud bills per OCPU per minute, and GoldenGate Free costs nothing for databases of 20 GB or smaller (Oracle GoldenGate Free and OCI billing documentation, October 2026)
Oracle's GoldenGate FAQ says Extract captures changes from the source database's redo or transaction logs and writes them to a trail file. GoldenGate 26ai supports Oracle Database 19c to 26ai and later, and the 19c and 21c releases cover Oracle 11.2.0.4 to 21c.
The FAQ lists plenty of targets, including MySQL, PostgreSQL, SQL Server, Kafka and Apache Iceberg.
What's good
- The FAQ also names Db2, Hadoop, Snowflake, Parquet, Avro, MongoDB and Cassandra among its supported databases and targets, and Oracle says GoldenGate supports hundreds of sources and targets.
- Per Oracle's high availability guide, it fits a read/write replica, multimaster and bidirectional replication, subset and many-to-one replication, data transformations, and replication between endian formats or across database major versions.
- The FAQ lists unidirectional, bidirectional and multi-directional setups. For bidirectional ones it recommends conflict detection and resolution policies and primary or unique keys on every replicated table.
- It runs as Microservices Architecture, managed through Service Manager, on a VM, bare metal or Kubernetes. OCI GoldenGate is a fully managed service where Oracle handles backups, patching and upgrades.
- Oracle's Apache Iceberg connection docs list Glue, Hadoop, Nessie, Polaris and REST catalogs, with dependency downloaders for Google Cloud Storage, Amazon S3 and Azure Data Lake Storage.
Where it falls short
- Iceberg writing lives in a separate product, GoldenGate for Distributed Applications and Analytics, and its docs sit in Oracle's big-data documentation set, not in the core GoldenGate docs. It has its own line on the price list.
- The older Classic Architecture is de-supported in
26ai, so check which one you run. - The FAQ says bidirectional setups are more complex than one-way setups and can cause update conflicts, replication loops, data divergence, latency sensitivity and operational complexity.
- The FAQ says GoldenGate cannot capture from Salesforce, Teradata or TimesTen.
What users say: On PeerSpot a reviewer said "The solution's licensing price is very expensive and could be made more competitive" (January 2024).
2. Oracle Active Data Guard: for a standby copy of a whole Oracle database
At a glance
- Price: An extra-cost option on Enterprise Edition, per Oracle's Licensing Information guide. Oracle's price list of 15 September 2026 shows $11,500 per processor, with $2,530 of support for the first year (October 2026).
Oracle's best-practice page says to use Active Data Guard when the focus is simplicity, data protection and availability. It calls it the simplest and fastest one-way replication of a complete Oracle database, with all data types and automatic replication of data definition language (DDL) changes, the statements that change table structure.
What's good
- Oracle's page says a synchronized standby can be opened read-only, so your reports can run there and leave the main database alone.
- It says Active Data Guard detects silent corruptions that can occur on the source or target and automatically repairs corrupt blocks.
- It lists zero data loss protection at any distance without impacting database performance. That is Oracle's own claim, and we did not test it.
- It says a Data Guard primary and standby are physically exact copies, so RMAN backups are interchangeable.
- It lists standby-first patching, database rolling upgrades and select platform migrations as ways to cut planned downtime.
Where it falls short
- It's all or nothing: a whole Oracle database goes to another Oracle database. Oracle's page points to GoldenGate for subset replication and for a replica that must be open read/write.
- The same page sends multimaster and bidirectional replication, many-to-one replication and data transformations to GoldenGate.
- It also sends replication between endian-format platforms, or across database major versions, to GoldenGate.
- The licensing guide lists it as an extra-cost option on Enterprise Edition and shows it as not available in the Free edition.
- Oracle's page describes a copy of a whole Oracle database to another Oracle database, and names no lake or other database engine as a target.
Commercial and managed tools
3. Qlik Replicate: for mixed legacy sources

Qlik Replicate / Qlik Talend Cloud home page, October 2026.
At a glance
- Price: Not published. Qlik Talend Cloud uses capacity bands based on data volume, job runs and run time. For client-managed Replicate, Qlik tells customers to contact sales (Qlik pricing page and Qlik Community, October 2026)
Qlik's Oracle source limits list separate rules for each reader, so read them before you plan. For Oracle 21c, LogMiner access is not supported, and only the Replicate Log Reader works.
What's good
- Qlik's product page describes Replicate as log-based with a zero-footprint design. For Oracle, Qlik's docs say it reads redo logs with either LogMiner or its own Replicate Log Reader.
- The same page lists IMS/DB, Db2 for z/OS, RMS and VSAM as mainframe sources, and Apache Kafka, Confluent, Azure Event Hubs and AWS Kinesis as streaming platforms.
- On Iceberg, Qlik's launch release of September 2025 says Qlik Open Lakehouse combines CDC ingestion with automatic Iceberg optimization, runs in the customer's own cloud account with bring-your-own compute, and can be read by Amazon Athena, Snowflake, Spark, Trino and Amazon SageMaker. Replicate's May 2026 release notes added a Cloudera Iceberg target.
- Replicate is client managed. Qlik's page says it can be installed on premises or as a virtual machine image in any location you choose.
- Under Qlik's product descriptions, the initial full load of a table is not counted in Data Moved, and Qlik waives overage charges incurred in the first six months of an initial subscription.
Where it falls short
- Qlik's pricing page shows a "Contact Us" button for each of the four Talend Cloud editions (Starter, Standard, Premium and Enterprise) and no dollar figure, so you can't budget without a sales call.
- Log-based CDC first appears in the Standard edition list on that page. It is not in the Starter list.
- On Oracle
21c, CDC is not supported if a schema, table or column name is longer than30characters. - Capturing from a pluggable database with LogMiner is not supported, and neither is capturing several pluggable databases through the container database. Qlik's docs also advise against LogMiner on RAC because of unpredictable behavior.
- Open Lakehouse is part of Qlik Talend Cloud, not Replicate alone. The release notes describe Replicate landing data on S3 for an Open Lakehouse pipeline to turn into Iceberg tables, plus a Cloudera Iceberg target.
- Data Volume is counted where data lands, so the same data replicated to two targets is counted twice.
What users say: A reviewer on PeerSpot said "Licensing is calculated based on the machine's total capacity rather than actual usage" (January 2025).
4. Striim: for high-volume Oracle streaming

Striim home page, October 2026.
At a glance
- Price: Developer tier free up to 25 million events a month. Striim Cloud and Striim Platform say "contact us" (Striim pricing page, October 2026)
Striim gives you two readers. Its Oracle CDC documentation describes Oracle Reader, which uses LogMiner, and OJet, a high-performance log mining interface. Both read Oracle 11g and higher, Oracle clusters (RAC, several servers sharing one database) and pluggable databases.
Striim's own sizing guidance puts Oracle Reader at 20 GB to 80 GB of change data an hour and OJet at 150 GB or more.
What's good
- Striim's feature table marks Oracle Database
26aias supported by both Oracle Reader and OJet. - Per Striim's docs, a GG Trail Reader can read existing GoldenGate trail files (the page names GoldenGate versions
11g,12c,18.1and19.1), which matters if you're moving off GoldenGate. We did not test it. - On Iceberg, Striim's docs describe an Iceberg Writer with Merge and Append Only modes that propagates DDL changes, and an S3 Tables Writer with
MERGEandAPPENDONLYmodes that runs on Amazon EMR with either the S3 Tables catalog or AWS Glue. - The Striim Cloud SLA sets monthly availability at 99.5% for Striim Cloud Enterprise and 99.9% for Mission Critical. It applies only to customers whose order forms reference it.
- Under the consumption terms updated on 17 September 2026, Monthly Plan customers pay monthly in arrears for credits used, with no long-term commitment.
Where it falls short
- Iceberg is the catch. Striim's Iceberg Writer docs say that in this release Google Cloud Storage is the only supported data lake (S3 Tables has its own writer), and that it needs Google's managed Spark service plus a Lakehouse, Nessie or Polaris catalog. A Hadoop catalog is for development and testing only.
- Iceberg Writer partitioned tables need manual creation, time source types are written as strings, and recovery uses at-least-once processing.
- The S3 Tables Writer needs lowercase table, namespace and column names, which breaks wildcard mappings against sources with uppercase identifiers.
- Oracle Reader and GG Trail Reader are premium adapters. At the entry tier, premium adapters use 200 credits per million events against 100 for standard ones, and events are counted when they are read and when they are written.
- Unused credits are forfeited at the end of a Capacity Purchase term.
- The SLA credit is the sole remedy for a missed service level, and scheduled upgrade or maintenance downtime of up to 24 hours a month is excluded.
What users say: A data engineer on PeerSpot said Striim "would not intuitively tell me the culprit table or database behind the lag" (August 2026).
5. Quest SharePlex: for Oracle-to-Oracle and Oracle-to-PostgreSQL replication
At a glance
- Price: Not published. Quest's page offers "Request Pricing" (Quest SharePlex page, October 2026)
Quest says SharePlex operates outside the Oracle database instance and reads from redo logs. Its targets include Oracle, PostgreSQL, SQL Server, Kafka, and Parquet files in cloud storage such as Amazon S3 and Azure Blob. It supports two-way replication with conflict handling.
What's good
- Quest lists Oracle-to-Oracle and Oracle-to-PostgreSQL replication, including active-active with conflict resolution, and says the same works between Oracle and Google Cloud SQL for PostgreSQL, AlloyDB and AlloyDB Omni.
- Beyond the targets above, Quest's page lists MySQL (including AWS RDS, Aurora and Azure Database for MySQL), MariaDB, Azure SQL Database, Azure Event Hubs, JMS queues and Snowflake.
- Quest says SharePlex can replicate to an unlimited number of targets. That is a vendor claim, and we did not test it.
- File output can be Parquet, JSON, XML or SQL.
- The page offers a free trial ("Request Free Trial").
Where it falls short
- Quest's page describes replication from Oracle and PostgreSQL databases; it lists no other source.
- Quest doesn't say whether it uses LogMiner, XStream or its own parser.
- The pages we read don't list Apache Iceberg as a target. The lake output is Parquet files in object storage.
- Quest's marketing says SharePlex costs a fraction of native tools, but it publishes no figures or method.
- Per-datatype and per-version limits are not on the pages we read.
What users say: Evidence is thin here: PeerSpot holds five reviews from 2017 to 2022. The SharePlex pros and cons page on PeerSpot lists "Reporting features need improvement" as a con from a February 2020 review.
6. Fivetran: for hands-off pipelines into a warehouse

Fivetran home page, October 2026.
At a glance
- Price: Monthly Active Rows (MAR) per connection, meaning the rows changed in a month. Free up to 500,000 MAR, and a $5 base charge per connection with 1 to 1 million MAR from January 2026. Paid per-MAR rates are in its Service Consumption Table (first tier, per million MAR: Standard $495, Enterprise $661.67 and Business Critical $1,061.67, each plus a $5 monthly base; October 2026)
Fivetran bills by Monthly Active Rows (MAR). Its Oracle docs list two connectors. The Oracle connector offers Binary Log Reader, Teleport and XStream Out, and the High-Volume Agent (HVA) connector offers Direct Capture and Archive Log Only.
Per the docs, Teleport works differently: it reads tables, doesn't support large objects and is limited to tables under 100 GB.
What's good
- Per Fivetran's setup docs, Binary Log Reader reads Oracle redo log files directly, with no agent on the source database host. It reads both online and archived redo logs, and access to archived logs is required.
- The Oracle connector docs list database versions
11g R2to21c. - Fivetran's Hybrid Deployment docs say the pipeline runs in your own environment and only metadata, including MAR information, and logs are sent to Fivetran. It needs the Enterprise or Business Critical plan.
- Fivetran's docs say its Managed Data Lake Service writes Parquet files to your own Amazon S3, ADLS or GCS bucket and always creates Iceberg metadata, with a default Fivetran Catalog built on Apache Polaris.
Where it falls short
- The LogMiner method is sunset. Fivetran ended support for LogMiner connections on April 15, 2026, and said those still on it would stop syncing at the end of May 15, 2026.
- Oracle sources, including Oracle RAC and Oracle RDS, and the High-Volume Agent Oracle connector are on the Enterprise and Business Critical plans only, per Fivetran's billing docs. Annual contracts have a $12,000 minimum.
- The Oracle docs list a
5 TBlimit on the sum of replicated tables and a200 GBlimit on redo per hour, for both Binary Log Reader and the HVA connector. - The Oracle docs' instance table lists a physical standby instance as unsupported for every method, and Binary Log Reader support for an Active Data Guard standby is in Private Preview.
- The Service Consumption Table defines MAR as distinct primary keys reflecting inserts, updates and deletes, and says MAR cannot be combined across connections to get a better rate.
- Fivetran says the Managed Data Lake Service does not support position deletes for Iceberg tables. On AWS it does not support the S3 Glacier Flexible Retrieval, Glacier Deep Archive or Intelligent-Tiering archive tiers.

Fivetran's Oracle connector documentation, October 2026.
What users say: In a Hacker News thread about Notion's data lake, a commenter said cost "quickly adds up when you have hundreds of millions to billions of rows that are constantly changing" (July 2024, an older view).
Open source
7. Debezium: for teams that already run Kafka

Debezium home page, October 2026.
At a glance
- Price: Free Apache 2.0 licence. You pay for servers and staff.
Debezium's Oracle docs say it can read Oracle through LogMiner, XStream or OpenLogReplicator, and you choose with the database.connection.adapter setting (logminer, logminer_unbuffered, olr or xstream). The docs call XStream "a commercial component of Oracle GoldenGate". Debezium 3.7 lists tested Oracle versions 19c, 21c, 23ai and 26ai.
Then there's OpenLogReplicator, a separate open-source C++ project that parses Oracle's redo files and sends changes to Kafka, files or a network stream. GitHub lists it under the Affero General Public License (AGPL) version 3. Its stable line is 1.9, and the 2.0.0 release (shown as 19 Jul on the releases page, with no year) is still called under development on the project page.
What's good
- Debezium's Oracle docs let you pick the reader, so you pick the licence route too: LogMiner, or XStream if you own GoldenGate. Check the logging setting described earlier either way.
- Debezium's exactly-once page lists Oracle among the connectors that can take part in Kafka Connect's exactly-once delivery. It needs Kafka Connect
3.3.0or higher in distributed mode, withexactly.once.source.support=enabledon every worker. - The Debezium Server docs say it streams change events from a source database directly to messaging and storage systems without requiring Apache Kafka. Its sink list includes Kinesis, Pub/Sub, Pulsar, Redis, Kafka, RabbitMQ, Event Hubs and Iceberg.
- The docs say the Iceberg sink consumes change events from a source Debezium connector and writes Apache Iceberg tables, with upsert and append modes, automatic table creation when event and key schema information is enabled, and automatic schema evolution.
- The OpenLogReplicator README says it can be used with Debezium as a replacement for the LogMiner reader. For Debezium
2.xand3.xits table gives1.3.0as the minimum version and1.9.0as the recommended one.
Where it falls short
- Watch the first snapshot. The docs say an
ORA-01555error can occur if the first snapshot outlasts the database'sUNDO_RETENTIONtime,15 minutesby default. - Before deploying, the docs say to run the database in archive log mode and enable supplemental logging. For Debezium Server you also copy the Oracle JDBC driver into its
libdirectory yourself, and each Server instance runs exactly one connector. - LogMiner has a memory trade-off. In the default mode the connector buffers events until a commit or rollback. The
logminer_unbufferedmode needs much less connector memory but shifts a much greater burden to the source database, and for large transactions it can exceed the database's PGA memory. - OpenLogReplicator's README says it is primarily developed and maintained by its author, and that issue reports are handled on a best-effort basis.
- The Iceberg sink is community-maintained in a separate repository. Upsert is off by default, and the Server docs say upsert and automatic primary key detection depend on the flattened event structure. The sink's own FAQ says to run periodic table maintenance jobs to compact data and rewrite delete files, especially in upsert mode.
- The exactly-once page says Debezium does not implement an internal deduplication layer, and that it is unclear whether Kafka's exactly-once implementation is fully correct or has edge cases.
What users say: A top comment on Postgres, Kafka, and a mysterious 100 GB said it "requires a lot of babysitting" (December 2021, an older view).
8. OLake Go: for scheduled copies of Oracle tables into Iceberg or Parquet

OLake home page, October 2026.
At a glance
- Method: Oracle source with Full Refresh and Full Refresh + Incremental sync modes (Oracle connector docs)
- Price: Free licence (Apache 2.0, GitHub), you pay for infrastructure
OLake Go reads Oracle tables and writes Apache Iceberg tables or Parquet files to storage you control. You run it from the OLake UI (install, or start with the quickstart), with the Docker command line (Docker CLI) or with Helm on Kubernetes (Kubernetes install).
What's good
- The Oracle source offers parallel chunking, checkpointing and automatic resume for failed full loads (Oracle connector docs).
- It supports Oracle Database
11gor above, tested with19cand23ai, and the docs list the privileges the database user needs (Oracle connector docs). - Iceberg output works with eleven catalog types, including Glue, Hive Metastore, JDBC and REST catalogs such as Nessie, Polaris and Unity (compatibility page). Parquet goes to Amazon S3, MinIO or Google Cloud Storage (OLake Go overview).
- The connector page documents the Oracle-to-Iceberg data type mapping and how date and time values are handled (Oracle connector docs).
Good to know
- Oracle is read with Full Refresh or Full Refresh + Incremental syncs, and OLake Go has no database CDC for Oracle (Oracle connector docs).
Bottom line: Pick OLake Go for scheduled copies of Oracle tables into Iceberg or Parquet on storage you run. For change capture from Oracle's redo logs, look at the log-based tools above, such as Debezium, Qlik Replicate or Oracle GoldenGate.
Cloud services
9. AWS DMS: for moving Oracle into AWS

AWS DMS home page, October 2026.
At a glance
- Price: Replication instance hours or Serverless capacity hours, plus any extra log storage. The page lists no separate CDC fee (AWS DMS pricing page, October 2026)
AWS's Oracle source documentation says DMS uses LogMiner by default and offers Binary Reader, which parses the raw redo files. For a full-load-only task, no extra setup is needed. A CDC task is different: you choose one reader and prepare the source.
What's good
- Per AWS, Binary Reader has a lower impact on source CPU and I/O and better CDC performance on high change volumes. Its feature table lists LogMiner as the easier of the two to configure.
- AWS lists self-managed Oracle sources from
10.2and higher,11gup to12.2,18cand19c. - A CDC task can start from an
SCNor a timestamp. From DMS version3.5.1theopenTransactionWindowendpoint setting covers open transactions on a CDC-only task that starts that way. - Per the same page, bidirectional replication is supported on Oracle, SQL Server, MySQL, PostgreSQL and the Aurora editions, as two tasks, one in each direction.
- AWS's Free Tier page says that sign-ups after 15 July 2025 can choose a Free Plan or a Paid Plan with $100 in credits, plus up to $100 more, valid for up to twelve months.
Where it falls short
- LogMiner doesn't give large-object support on Oracle
12c, and it doesn't handle updates that touch only large-object columns. Binary Reader does, but it doesn't support table clusters, compression or most encryption options. - DMS's CDC setup steps say it does not support an Oracle Standby as a source. Per the Binary Reader section, a self-managed standby works only if it is an Active Data Guard standby.
- Apache Iceberg is not on AWS's list of DMS target endpoints (checked October 2026). In an AWS Big Data blog example, DMS writes files to S3 and a Glue job loads Iceberg tables, and the blog says the job does not process a file when no primary key is set.
- During CDC, DMS skips events for objects whose identifiers are longer than
30bytes without stopping the task, which can leave data missing on the target. - The CDC page says there are no SLAs for CDC latency, and that latency can rise to several minutes or longer. AWS's best practices page advises against DMS CDC for sub-second or guaranteed low-latency replication.
- Starting a CDC task from an
SCNor timestamp misses open transactions, those that started before the start position and committed after it, unless you use the setting above.

AWS DMS documentation for Oracle sources, October 2026.
What users say: An AWS re:Post thread about DMS into Redshift, not Oracle, says "CDC replication is completely broken across all our tasks" (March 2026).
10. Google Datastream: for Oracle into BigQuery

Google Datastream home page, October 2026.
At a glance
- Price: Per GiB processed, and a processed byte is an internal representation that for most use cases can be 2 to 5 times larger than the data itself. Backfill is free for the first 500 GiB a month, then $0.40 per GiB. The free CDC tier covers only AlloyDB and Spanner sources (Datastream pricing page, October 2026)
Google's Oracle source page lists Oracle 11.2.0.4 (LogMiner only), 12c, 18c, 19c and 21c. It supports RAC, Exadata, Amazon's managed Oracle service and an Active Data Guard standby. Oracle Autonomous Database is not supported, though.
What's good
- One difference to know, per Google's docs: the binary reader sends only committed changes, while LogMiner can also read uncommitted ones and emits the opposite operation after a rollback.
- The binary reader (Preview) falls back to archived log files if there is a read lag on the online logs, and it supports Oracle
VARCHAR2columns longer than4000characters. - The pricing page says an idle stream does not incur any cost, there are no costs for running streams other than data processed, and events read but not written to the destination are not counted. CDC costs are tiered, so the price per GB falls as usage rises.
- Per the Iceberg destination docs, Iceberg tables in BigQuery store data in customer-owned Cloud Storage buckets in the Iceberg table format and Parquet file format.
Where it falls short
- Large-object columns arrive as
NULLunless you set thestreamLargeObjectsflag. Even then Datastream looks values up in the source, so fast back-to-back changes can be missed. - Columns of types such as
LONG,LONG RAW,BFILE,UROWID, user-defined types,VARRAYandSDO_GEOMETRYarrive asNULL. Index-organized tables and temporary tables are not supported. - For a table without a primary key, Datastream merges on the row's
ROWID, which might not be unique and can change after an export and import. - Google says not all source schema changes are detected automatically. Dropping a column, adding one in the middle of a table, changing a data type or truncating a table can cause data corruption or failures downstream.
- The binary reader is in Preview and does not support Transparent Database Encryption, Hybrid Columnar Compression or Secure files. If a column name is longer than
30characters, anUPDATEmakes Oracle silently abort supplemental logging for the row, and unchanged columns arrive asNULL. - With an Active Data Guard standby as the source, Datastream waits for the standby to apply each log before it reads it, so a paused standby apply delays your data.
What users say: A Google Developer forum thread from October 2025, about partitioned PostgreSQL tables rather than Oracle, said "our Datastream pipelines never finish backfilling".
11. Confluent Oracle XStream connector: for Oracle into Kafka without a GoldenGate purchase

Confluent Cloud (incl. Tableflow) home page, October 2026.
At a glance
- Price: Not published. Confluent lists its Oracle XStream connector as "contact us" (Confluent connector pricing, October 2026)
Confluent's connector documentation says the fully managed connector reads the redo log through XStream Out and captures both data and DDL changes. Confluent says it has an agreement with Oracle, so users don't need to buy extra Oracle licences for XStream with this connector. (That's Confluent's claim, so confirm it in writing.)
What's good
- It's the one XStream route here where the vendor says the licence is covered.
- For updates it emits the state of the row before and after the update, and it receives changes in transaction commit order.
- Confluent's docs say it fully supports Oracle RAC. They also describe downstream capture, where the capture process runs on a separate Oracle database so production isn't hit by capture overhead, and cascading downstream capture through an Active Data Guard standby.
- An ad hoc blocking snapshot signal can backfill specific tables after the connector has started streaming, and automated retries try up to three times before the connector stops in a failed state.
Where it falls short
- The connector writes changes to Kafka topics, so you still need a second step to reach a lake.
- The managed connector needs Confluent Cloud. A self-managed version for Confluent Platform exists as a Premium connector under the Confluent Enterprise licence.
- Delivery is at-least-once. If the connector is interrupted during a snapshot it restarts all snapshots from the beginning, and a long snapshot can hit
ORA-01555unless you raiseUNDO_RETENTION. - Each connector instance captures from one pluggable database, and an XStream outbound server supports only one active client session, so every connector needs its own outbound server.
- An unmodified large-object column is left out of the change event and replaced by a placeholder. Large-object events can also exceed Kafka's maximum message size, in which case Kafka rejects the message.
- Low database activity can add about 3 seconds of latency because of XStream batching, and heartbeats are off by default, so the connector can't advance its position on a quiet database.
Where Oracle changes can land in Iceberg
Ask which catalog (the service that tracks your Iceberg tables), which cloud, which write mode, and whether the route is one step or two.

| Route | What the docs show | Limit to know |
|---|---|---|
| GoldenGate for Distributed Applications and Analytics | An Iceberg connection used by Replicat processes that write to Iceberg tables, with Glue, Hadoop, Nessie, Polaris and REST catalogs | A separate product from core GoldenGate |
| Qlik Open Lakehouse | Qlik says it writes spec-compliant Iceberg tables in your own cloud account | Part of Qlik Talend Cloud, not Replicate alone |
| Google Datastream | Iceberg tables managed by BigQuery, stored in your Cloud Storage | Append-only write mode |
| AWS DMS | An AWS blog shows DMS writing S3 files, then Glue jobs loading Iceberg tables | Two steps; Iceberg is not on DMS's target list |
| Debezium Server | An Iceberg sink that consumes events from a Debezium connector | Community-maintained, and we found no Oracle-specific guide |
| Fivetran Managed Data Lake Service | Parquet files in your own S3, ADLS or GCS bucket with Iceberg metadata and a default Fivetran Catalog built on Apache Polaris | Fivetran says position deletes are not supported for Iceberg tables, and we did not check the Oracle connector against it |
| Striim | Iceberg Writer with merge and append-only modes | Iceberg Writer: Google Cloud Storage only; a separate S3 Tables Writer targets Amazon S3 Tables |
| Oracle connector to Kafka, then Tableflow | Each step is documented separately: Confluent's XStream connector, then Tableflow turning topics into Iceberg | We found no single Oracle-to-Iceberg guide for this route |
One more trick for append-only output. To get current state, take the latest record per key by the tool's ordering field, then drop keys whose latest record is a delete.
Which Oracle replication tool for which job
| Your situation | Look at first | Why, from the docs |
|---|---|---|
| Disaster recovery and read offload, Oracle to Oracle | Active Data Guard | Oracle's page: simplest one-way copy of a whole database |
| Two-way replication or a read/write replica | GoldenGate or SharePlex | Both list multi-directional replication |
| Oracle into AWS | AWS DMS | Managed, LogMiner or Binary Reader |
| Oracle into BigQuery | Datastream | Serverless, Google Cloud only |
| Oracle into Kafka, no GoldenGate purchase | Confluent XStream connector | Vendor says licence is covered |
| Open source, you run Kafka | Debezium | Choose LogMiner, XStream or OpenLogReplicator |
| Iceberg tables as the goal | GoldenGate DAA or Qlik Open Lakehouse | Both document Iceberg writing |
| A scheduled copy of Oracle tables into Iceberg or Parquet | Full Refresh and incremental sync modes, in our Oracle docs (see the entry above) |
Prefer a quick answer? Try the quiz.
Which Oracle replication tool fits you?
Question 1 of 5
What job do you need done?
The post says there is no single best Oracle replication tool, because the tools answer different questions.
What to check before you commit
1. The licence route. Ask which reader the tool uses and whether its setup turns on GoldenGate Supplemental Logging (see the licence section above). XStream generally needs GoldenGate licences unless the vendor has its own deal, and a direct reader is outside what Oracle supports.
2. Log retention. Archived redo logs must stay on disk through an outage plus the catch-up time, so don't let a cleanup job eat them. Fivetran says Binary Log Reader requires archived redo access, and Datastream's setup includes a retention policy.
3. The first snapshot. Tools copy your existing rows before they follow changes. A snapshot that outlasts undo retention can raise ORA-01555 in Debezium.
4. Large objects. A large object (LOB) is a text or binary column that can be huge. Datastream writes them as NULL by default, and DMS LogMiner has gaps on Oracle 12c.
5. Names. LogMiner needs names of 30 characters or less, Datastream's LogMiner mode has the same limit, and Qlik's 21c notes say longer names are not replicated.
6. Standby and pluggable databases. Datastream reads one pluggable database per stream. DMS's Binary Reader section says it currently supports only an Active Data Guard Standby, and Fivetran lists no Oracle method on a physical standby.
A two-week trial
Run the same test on every finalist and compare each tool's own records with the final table.
| Step | Operation | Append-only records | Current-state rows |
|---|---|---|---|
| 1 | Snapshot of existing keys 1, 2, 3 | Three snapshot records | 1, 2, 3 |
| 2 | Insert key 4 | Insert 4 | 1, 2, 3, 4 |
| 3 | Update key 2 to a, then to b | Two update records | 1, 2 (b), 3, 4 |
| 4 | Delete key 3 | A delete record for 3 | 1, 2 (b), 4 |
| 5 | Kill the tool mid-batch, restart, insert key 5 with a large object | Insert 5 | 1, 2 (b), 4, 5 |
A missing event is a failure, full stop. Accept a duplicate only if the tool documents at-least-once delivery and your load collapses it by key. Last, stop the tool for your longest expected outage and check that the archived logs it needs are still there.
A worked example: one Oracle setup, six configurations
Take Oracle 12c, an Active Data Guard standby as the source, large-object columns, and Iceberg as the goal.
| Candidate | Reads a standby | Large objects on 12c | Iceberg | Verdict |
|---|---|---|---|---|
| AWS DMS with LogMiner | No | No | Iceberg not on DMS's target list | Eliminated |
| AWS DMS with Binary Reader | Yes | Yes | S3 files, then Glue jobs | Passes, in two steps |
| Fivetran Binary Log Reader | Yes (marked Private Preview on the docs page) | Supported | Managed Data Lake Service, not checked with Oracle | Needs a check on Iceberg |
| Fivetran HVA | Yes, with Direct Capture or Archive Log Only | Supported | Managed Data Lake Service, not checked with Oracle | Needs a check on Iceberg |
| Datastream | Yes | NULL unless the flag is set | Append-only | Passes only if append-only is acceptable |
| GoldenGate with DAA | Not checked | Not checked | Documented | Needs a check on standby and large objects |
If you need current-state Iceberg tables, Datastream drops out. That leaves DMS with Binary Reader plus a Glue step, and three candidates to check.
FAQs
Q1. What is the best Oracle replication tool?
Q2. Is Oracle LogMiner free?
Q3. Do I need a GoldenGate licence to use XStream?
Q4. What is the difference between Data Guard and GoldenGate?
Q5. Can I replicate Oracle to Apache Iceberg?
Q6. Are third-party Oracle log readers allowed?
Conclusion
Start with the job, then the reader, then the landing place. Run the two-week trial on two finalists, and watch log retention, large objects and standby support. Prices and limits change, so re-check each vendor page before you sign.


