Real-time change streams

The engineer's reference for Change Data Capture.

In-depth guides and interactive tools for building real-time data pipelines across Oracle, Debezium, GoldenGate, Kafka, Redpanda, and Apache Iceberg.

Explore guides
Pipeline anatomy
Oracle redo log
SOURCE
Debezium
CAPTURE
Kafka / Iceberg
SINK
POSITIONSCN 0x0A3F·C21
LAG240 ms
OFFSETcommitted
THROUGHPUT18.4k ev/s
01

Debezium with Oracle LogMiner

8
01
Debezium Oracle SCN Recovery

Resiliency and recovery architectures for Debezium Server with Oracle LogMiner in Kubernetes: monitoring visualizations, root-cause analysis, recovery playbooks, and K8s topology patterns.

LOGMINERKUBERNETESRECOVERY
02
Debezium Oracle Performance Tuning

Interactive tuning studio that generates optimized configurations for throughput, latency, CPU, and memory profiles, with trade-off analysis for each.

TUNINGTHROUGHPUTLATENCY
08
Oracle Archive Log Management

Interactive guide to configuring Oracle archive log retention for Debezium LogMiner: retention vs. downtime simulator, dual-destination RMAN strategy, and SCN-aware cleanup.

LOGMINERRMANARCHIVELOG
10
LogMiner JDBC Config Generator

Interactive configuration generator for Debezium Server with Oracle LogMiner and JDBC-backed offset and schema history storage. Covers profiles, snapshot modes, CDB/PDB topology, and validation steps.

LOGMINERJDBCCONFIG
12
Oracle DDL Mining Strategy

Compare redo_log_catalog and online_catalog approaches for managing DDL changes in Oracle PDBs with Debezium. Interactive step-by-step playbooks with no-data-loss procedures.

LOGMINERDDLSCHEMA
13
Oracle EBR CDC Analysis

Interactive feasibility analysis for Debezium LogMiner CDC in Oracle Edition-Based Redefinition environments. Covers redo_log_catalog strategy, concurrent edition constraints, and DDL parsing requirements.

LOGMINERDDLEBR
14
LogMiner Performance Tuning

Interactive risk analyzer and tuning guide for Debezium Oracle LogMiner throughput: redo log sizing, logminer_unbuffered mode, Kafka producer settings, and SCN not found prevention.

LOGMINERTUNINGTHROUGHPUT
15
Oracle Redo Log Sizing

Interactive architecture flow, performance simulation, and SCN recovery guide for sizing Oracle redo logs to support stable Debezium LogMiner CDC pipelines.

LOGMINERSIZINGSCN
02

Debezium with Oracle XStream

2
03
XStream Configuration Explorer

Dashboard-style explorer for Debezium Server with Oracle XStream: connection pooling, JDBC state storage, SMT pipelines, CloudEvents formatting, HTTP sink batching, and retry strategies.

XSTREAMJDBC STATEHTTP SINK
09
GoldenGate Licensing Calculator

Model Oracle GoldenGate license costs by processor count and target type, explore K8s node scoping rules, and build a per-tenant pricing strategy.

LICENSINGXSTREAMGOLDENGATE
03

Oracle GoldenGate CDC

1
07
GoldenGate vs. Debezium

Architecture, cost, and consistency trade-offs for Oracle CDC — with an interactive recommendation engine for choosing between the two.

GOLDENGATELOGMINERLICENSING
04

CDC Patterns & Architecture

3
04
Connector Concurrency & Scaling

XStream vs LogMiner for multiple concurrent readers, same schema vs different schemas, horizontal scaling patterns, and high availability in Kubernetes.

XSTREAMSCALE-OUTHA
11
CDC vs Full Refresh ETL

Estimate compute savings, assess migration readiness, and explore the dlt + DuckDB implementation stack for switching from batch ETL to log-based CDC.

ETLFULL REFRESHDLT
16
Oracle CDC: EBR and Online DDL Compatibility

Compare GoldenGate, XStream, and Debezium on EBR cutover handling, supplemental logging, online DDL locking, and Oracle 19c vs 23ai configuration recommendations.

EBRGOLDENGATEDDL
05

Kafka & Streaming Infrastructure

soon
Queued: Kafka vs Redpanda · multi-tenant topic strategy · disaster recovery · Strimzi deployments for CDC pipelines.
06

Data Lake & Apache Iceberg

soon
Queued: Debezium to Iceberg configuration · Oracle LOBs in Iceberg · multi-tenant CDC ingestion · Iceberg sink schema design.
07

Event-Driven Architecture

2
05
EDA Decision Matrix Tool

Interactive flow analyzer that recommends synchronous APIs, event choreography, or orchestration based on temporal intent, downstream topology, and compensation requirements.

EDACHOREOGRAPHYORCHESTRATION
06
EDA Orchestration and Patterns

Orchestration vs choreography in microservices, five good event-driven patterns, five anti-patterns to avoid, and a practical decision guide for choosing the right approach.

EDAOUTBOXIDEMPOTENCY

What is Change Data Capture?

Change Data Capture (CDC) is a design pattern that tracks row-level changes in a database, inserts, updates, and deletes, and delivers them as a stream of events to downstream systems in real time. Instead of periodically querying for differences, CDC reads the database's transaction log (redo logs in Oracle, WAL in PostgreSQL, binlog in MySQL), capturing every change the moment it's committed.

CDC is the foundation of modern event-driven architectures, enabling real-time data replication, cache invalidation, audit logging, microservice synchronisation, and streaming analytics. In a typical CDC data stack, change events flow from the source database into a message broker, Apache Kafka or Redpanda, and from there into downstream stores such as data lakes built on Apache Iceberg, analytical warehouses, or search indexes. Debezium (open-source) and Oracle GoldenGate (commercial) are the most widely deployed CDC tools for Oracle Database environments.

Technologies Covered

Debezium Server

Open-source CDC platform that streams database changes as events. Runs as a standalone Quarkus application in Kubernetes, supporting Oracle, PostgreSQL, MySQL, SQL Server, and MongoDB.

Oracle LogMiner

Oracle's built-in utility for reading redo logs via SQL. No additional license required. Used by Debezium with the online_catalog or redo_log_catalog strategies.

Oracle XStream

Oracle's high-performance streaming API built on GoldenGate internals. Provides lower latency than LogMiner but requires an Oracle GoldenGate license. Used by Debezium as an alternative capture adapter.

Oracle GoldenGate

Enterprise-grade real-time data integration platform for heterogeneous replication, zero-downtime migrations, and active-active database synchronization across Oracle and non-Oracle targets.

Apache Kafka & Redpanda

The most widely used event streaming platforms for CDC pipelines. Kafka Connect hosts Debezium as a source connector, publishing change events to topics. Redpanda is a Kafka-compatible alternative with no ZooKeeper dependency.

Apache Iceberg

Open table format for large-scale data lakes in object storage (S3, Azure Data Lake, GCS). CDC events flow through Kafka Connect sink connectors into Iceberg tables, enabling real-time analytics on operational Oracle data.

Frequently Asked Questions

What is the difference between Debezium and Oracle GoldenGate?
Debezium is an open-source CDC tool that captures changes from database transaction logs and streams them as events. It runs on the JVM and is typically deployed in Kubernetes. Oracle GoldenGate is a commercial, enterprise-grade replication platform with support for heterogeneous databases, active-active replication, and conflict resolution. Debezium is ideal for event streaming use cases, while GoldenGate excels at database replication and migration scenarios.
Should I use LogMiner or XStream with Debezium for Oracle?
LogMiner is free and requires no additional Oracle licensing, it works by querying redo logs via SQL. XStream provides lower latency and better performance but requires an Oracle GoldenGate license. For most use cases, LogMiner is the recommended starting point. Switch to XStream when you need sub-second latency or are processing very high transaction volumes.
Can Debezium Server run in Kubernetes?
Yes. Debezium Server is a standalone Quarkus application packaged as a container image. It can be deployed as a Kubernetes Deployment or StatefulSet. Key considerations include JVM heap sizing aligned with container memory limits, JDBC-based offset and schema history storage (rather than local files), and proper liveness/readiness probes.
What is an SCN in Oracle CDC?
A System Change Number (SCN) is Oracle's internal transaction ordering mechanism, a monotonically increasing number assigned to every committed transaction. CDC tools like Debezium use the SCN to track their position in the redo logs, ensuring exactly-once processing. "SCN not found" errors typically indicate that the connector has fallen behind and the required redo logs have been archived or deleted.
How do I tune Debezium for high throughput with Oracle?
Key parameters include log.mining.batch.size.default (increase to 100,000+ for larger mining windows), max.queue.size (buffer between source and sink), poll.interval.ms (reduce to minimize idle time), and HTTP sink batch size. Use ZGC for garbage collection on large heaps, and ensure the Kubernetes pod has guaranteed QoS with requests equal to limits.