Loading...

We've detected that your browser language is Chinese. Would you like to visit our Chinese website? [ Dismiss ]
By: Emma

Enterprise databases process high volumes of critical transactions, making it challenging to keep downstream systems synchronized without affecting production performance. Traditional batch integration introduces delays and increases database load, while real-time streaming captures data changes as they occur for faster and more efficient data delivery.

This guide explores four common ways to stream data from Oracle to Kafka. It compares JDBC polling, Oracle LogMiner, Debezium, and Oracle GoldenGate, helping database administrators (DBAs) and data engineers choose the right approach based on performance, complexity, and cost.

What Does Streaming Data from Oracle to Kafka Mean

Streaming data from Oracle to Kafka is the process of continuously capturing database changes, including inserts, updates, and deletes, and publishing them to Apache Kafka topics in real time. Instead of relying on batch queries, this approach uses Change Data Capture (CDC) to capture changes with minimal impact on production databases.

A typical Oracle-to-Kafka pipeline reads Oracle transaction logs through a CDC tool, converts database changes into structured event formats such as JSON or Avro, and publishes them to Kafka. Downstream applications, analytics platforms, and other consumers can then process the same event stream independently.

Organizations stream data from Oracle to Kafka to:

  • Enable real-time processing: Deliver database changes to downstream applications as soon as they occur.
  • Reduce database load: Capture changes from transaction logs instead of running resource-intensive queries.
  • Decouple systems: Allow multiple applications to consume data without directly accessing the Oracle database.
  • Scale data distribution: Let Kafka deliver the same event stream to multiple consumers efficiently.
  • Replace batch integration: Eliminate the delays and resource spikes associated with scheduled ETL jobs.

How Oracle-to-Kafka Streaming Works

Oracle-to-Kafka streaming follows a simple workflow that captures database changes and delivers them to Kafka in real time with minimal impact on production systems.

Step 1. Oracle Records Database Changes

Oracle records every database transaction in its online redo logs. When the database runs in ARCHIVELOG mode, these logs are preserved, allowing CDC tools to access changes reliably. Each transaction is assigned a unique System Change Number (SCN), which ensures events are captured and processed in the correct order.

Step 2. A CDC Tool Captures the Changes

Instead of repeatedly querying database tables, a Change Data Capture (CDC) tool reads Oracle transaction logs to capture inserts, updates, and deletes. Most CDC solutions use Oracle LogMiner, while some enterprise solutions use XStream for lower latency and higher throughput.

Step 3. The Connector Publishes Events to Kafka

The streaming connector converts captured database changes into structured event formats, such as JSON or Avro, and publishes them to Kafka topics. In most deployments, changes from each Oracle table are written to a corresponding Kafka topic.

Step 4. Downstream Applications Consume the Data

Once the events are available in Kafka, multiple downstream systems can consume them independently for real-time analytics, data integration, search indexing, event-driven applications, and other business workloads.

5 Methods to Stream Data from Oracle to Kafka

There is no single best way to stream data from Oracle to Kafka. The right approach depends on your latency requirements, operational expertise, budget, and scalability needs. The table below compares four common approaches, followed by a closer look at how each one works.

Approach Real-Time Setup Complexity Best For
Custom LogMiner Pipeline Yes High Learning, prototypes, or a few low‑volume tables
Kafka Connect JDBC Source Connector No (Polling) Low Low‑volume workloads with acceptable latency
Debezium Oracle Connector Yes Medium Open‑source environments using Kafka Connect
Oracle GoldenGate for Big Data Yes Medium Enterprise environments requiring high scalability and Oracle support
i2Stream Yes Low-Medium Production Oracle-to-Kafka CDC with centralised management

Method 1: Oracle LogMiner + Custom Kafka Producer

A custom LogMiner pipeline provides a fully controlled approach to stream data from Oracle to Kafka. Instead of relying on a pre-built CDC platform, teams build and maintain their own data capture and delivery workflow using Oracle’s native log mining capabilities.

method 1 oracle logMiner custom kafka producer

How it works

A custom Oracle-to-Kafka pipeline uses Oracle LogMiner to read database redo logs and a self-developed Kafka producer to publish captured changes to Kafka topics. This approach requires Oracle to run in ARCHIVELOG mode with supplemental logging enabled to capture complete transaction information.

The custom application manages the CDC workflow by starting LogMiner sessions, reading changes from the V$LOGMNR_CONTENTS view, tracking the latest SCN, and converting database changes into Kafka events.

Advantages

  • Provides full control over the data pipeline and processing logic.
  • Allows custom handling of specific business requirements.
  • Does not require additional CDC platforms or replication software.

Limitations

  • Requires significant development and maintenance effort.
  • Teams must manage transaction ordering, checkpoints, schema changes, error handling, and performance tuning.
  • Scaling the pipeline for high-volume production workloads can be complex.

Best for

This approach is best suited for learning, prototypes, or low-volume workloads where customization is more important than operational simplicity.

Method 2: Kafka Connect + JDBC Source Connector

The Kafka Connect JDBC Source Connector provides a simple way to move data from Oracle to Kafka by periodically querying database tables.

Unlike log-based CDC solutions, this approach relies on scheduled polling instead of reading transaction logs, making it easier to configure but less suitable for real-time data replication.

How it works

The JDBC Source Connector connects to Oracle through standard JDBC and runs SQL queries at configured intervals to detect new or updated records. It typically uses an incrementing ID column or timestamp column to track changes and publish retrieved data as messages to Kafka topics.

A typical workflow looks like this:

method 2 kafka connect JDBC source connector

Advantages

  • Easy to set up with minimal infrastructure requirements.
  • Works well for simple data ingestion scenarios.
  • Does not require access to Oracle transaction logs or CDC configuration.

Limitations

  • Does not provide true real-time streaming because data is captured through scheduled polling.
  • Cannot reliably detect deleted records because removed rows are no longer available for query.
  • Frequent polling can increase database load, while longer intervals introduce more latency.
  • Requires suitable columns, such as timestamps or incrementing IDs, to track changes.

Best for

This approach is best suited for low-volume workloads, simple data ingestion tasks, or scenarios where near-real-time replication is not required.

Method 3: Debezium Oracle Connector (Open Source)

Debezium is one of the most widely adopted open-source CDC platforms for streaming data from Oracle to Kafka. Built on top of Kafka Connect, it captures database changes from Oracle transaction logs and delivers them as event streams for downstream applications.

debezium oracle connector

How it works

The Debezium Oracle Connector reads changes from Oracle redo logs using either LogMiner or XStream. It converts database operations, including inserts, updates, and deletes, into structured events and publishes them to Kafka topics through Kafka Connect.

Advantages

  • Provides real-time change data capture without continuous table polling.
  • Integrates naturally with the Kafka ecosystem through Kafka Connect.
  • Supports schema changes and structured event formats.
  • Offers an open-source option without commercial licensing fees.

Limitations

  • Requires operational knowledge of Kafka Connect and related components.
  • Teams need to manage connector configuration, monitoring, upgrades, and replication lag.
  • Production deployments may require additional components, such as a schema registry and monitoring tools.

Best for

This approach is best suited for teams with Kafka expertise that want a flexible, open-source solution for real-time Oracle-to-Kafka data streaming.

Method 4: Oracle GoldenGate for Big Data

Oracle GoldenGate is a commercial data replication platform designed for high-performance, enterprise-grade data integration. Its Big Data edition provides native support for Kafka, allowing organizations to capture Oracle database changes and deliver them to Kafka topics with low latency.

method 4 Oracle GoldenGate logo

 

How it works

GoldenGate captures database changes from Oracle redo logs and uses its Kafka handler to publish transaction events directly to Kafka. Unlike Kafka Connect-based solutions, GoldenGate runs as an independent replication process and does not require a Kafka Connect cluster.

Advantages

  • Provides high-performance, low-latency data replication for enterprise workloads.
  • Offers strong Oracle support and mature replication capabilities.
  • Handles large transaction volumes and complex database synchronization scenarios.
  • Includes enterprise features such as monitoring, recovery, and operational management.

Limitations

  • Requires commercial licensing, which can be expensive compared with open-source alternatives.
  • May be difficult to justify for small teams or low-volume data pipelines.
  • Requires Oracle GoldenGate expertise for deployment and ongoing management.

Best for

This approach is best suited for large enterprises that already use GoldenGate, require high-volume Oracle replication, or need a commercially supported solution for mission-critical data pipelines.

Method 5: i2Stream Simplifies Oracle-to-Kafka Data Streaming

Each of the four methods above solves the Oracle-to-Kafka problem at a different cost. DIY LogMiner scripts demand constant maintenance. JDBC polling misses deletes and lags behind true CDC. Debezium hands you full control but also full operational ownership. GoldenGate delivers enterprise reliability at enterprise licensing cost.

Info2soft’s i2Stream is built to close that gap, offering log-based CDC without the DIY fragility or the heavy license overhead.

How it works

i2Stream captures Oracle database changes through log-based CDC and continuously delivers them to Kafka. Its visual management console provides a central interface for configuring replication tasks and monitoring sync status, throughput, and latency.

Advantages

  • Log-based CDC: Captures Oracle changes without continuous table polling or custom LogMiner scripts.
  • Agentless architecture: Does not require software to be installed on the production Oracle database.
  • DDL and DML synchronisation: Captures schema and data changes to simplify schema evolution.
  • Transaction-level consistency: Helps maintain data consistency during replication and recovery.
  • Broad platform support: Supports 40+ database and big data environments, including Apache Kafka.
  • Visual management: Provides centralised monitoring of replication status, throughput, and latency.

Limitations

  • i2Stream is a commercial solution, so licensing costs should be taken into consideration.

Best for

For teams that have outgrown prototype scripts but don’t want the licensing weight of GoldenGate, i2Stream offers a middle path: production-grade CDC to Kafka with a shorter operational learning curve. You can click the button below to request a 60-day free trial of i2Stream.

FREE Trial for 60-Day

In addition, Info2soft also provides related solutions for broader data resilience needs. For businesses replicating beyond Kafka, i2Migration supports cross-platform database migration, while i2Availability extends real-time replication into full high availability and disaster recovery protection.

Common Challenges of Streaming Data from Oracle to Kafka

Streaming high-volume data from Oracle to Kafka introduces challenges related to schema changes, data consistency, recovery, and system compatibility. Addressing these issues is essential for building a reliable and scalable data replication pipeline.

Schema Evolution and DDL Changes

Oracle database changes, such as ALTER TABLE operations, can affect downstream Kafka consumers if the replication pipeline does not handle schema updates correctly. Adding, modifying, or removing columns may cause compatibility issues between source data and consumer applications.

To address this challenge, use schema management tools such as Schema Registry and define compatibility rules to ensure schema changes do not break existing consumers.

Delivery Semantic

Maintaining exactly-once delivery across Oracle and Kafka is difficult because data passes through multiple processing layers. Most production environments use at-least-once delivery, which requires applications to handle potential duplicate events.

Design downstream consumers with idempotent processing and use event identifiers or transaction metadata to detect and remove duplicate records.

Unsupported Data Types

Oracle supports complex data types such as LOB, CLOB, BLOB, and LONG, which may not map directly to Kafka message formats. These fields can cause replication issues if the connector cannot process them correctly.

Define a clear strategy for handling complex data types, such as transforming values, storing large objects externally, or excluding unnecessary fields from replication.

Offset Management and Recovery

Replication failures require accurate recovery points to prevent missing or duplicated events. CDC tools typically rely on Oracle SCN tracking to resume processing from the correct position.

Monitor replication checkpoints, configure recovery mechanisms, and regularly test failure procedures to ensure data consistency after interruptions.

Multitenant Database Architecture

Oracle Container Databases (CDB) and Pluggable Databases (PDB) introduce additional CDC configuration requirements. Accessing redo logs may require specific permissions while maintaining database security isolation.

Apply least-privilege access policies and validate CDC permissions before deployment to avoid security and connectivity issues.

FAQ

Q1: Does Oracle CDC require ARCHIVELOG mode?

Yes. Most log-based Change Data Capture (CDC) solutions require Oracle to run in ARCHIVELOG mode. This ensures redo logs are preserved long enough for CDC tools to capture database changes before they are overwritten.

 

Q2: Can JDBC connectors capture deleted records from Oracle?

No. Standard JDBC connectors rely on SQL queries and cannot detect hard deletes after rows are removed from the database. To capture deletes, teams need to use log-based CDC solutions or implement soft-delete strategies.

 

Q3: What is the performance impact of CDC on Oracle databases?

Log-based CDC usually has minimal impact because it reads transaction logs instead of repeatedly querying active tables. However, tools such as LogMiner still consume database resources when parsing logs. For high-volume workloads, organizations may offload CDC processing to a standby database.

 

Q4: How does Kafka Schema Registry help with Oracle replication?

Schema Registry manages the structure and versions of Kafka event messages. When Oracle table schemas change, it helps enforce compatibility rules and prevents downstream applications from failing due to unexpected schema changes.

Conclusion

Streaming Oracle data to Kafka comes down to matching the method to the scale and team behind it. DIY LogMiner scripts work for prototypes, JDBC polling fits simple append-only tables, Debezium suits teams ready to own their Kafka Connect stack, and GoldenGate serves enterprises already invested in Oracle’s ecosystem.

For teams that want production-grade CDC without building and maintaining that infrastructure themselves, Info2soft offers i2Stream as a log-based alternative that handles the operational weight directly.

Emma is the bridge between complex engineering and the people who need it. As a content creator at Info2soft, she spends her days translating "tech-speak" into clear, actionable stories about data resilience. She’s not just documenting software; she's uncovering how data replication and recovery actually change the way businesses run.

More Related Articles

Table of Contents:
Stay Updated on Latest Tips
Subscribe to our newsletter for the latest insights, news, exclusive content. You can unsubscribe at any time.
Subscribe
Ready to Enhance Business Data Security?
Start a 60-day free trial or view demo to see how Info2soft protects enterprise data.
Please fill out the form and submit it, our customer service representative will contact you soon.
By submitting this form, I confirm that I have read and agree to the Privacy Notice.
{{ isSubmitting ? 'Submitting...' : 'Submit' }}