Debezium Roadmap

This page describes the roadmap for upcoming work on Debezium.

Debezium is community-driven and as such the roadmap constantly evolves to reflect the users needs and contributions. You can find a fine-grained list of planned issues and feature requests in our issue tracker, but this page is a good starting point to see where we are going.

This roadmap is subject to changes. Please get in touch if you think anything important is missing on the roadmap.

The Debezium community pursues a time-boxed release scheme: minor releases (1.2, 1.3, etc.) are done at the end of every quarter, with preview releases (1.3.0.Alpha1, 1.3.0.Beta1, etc.) every three weeks. As our engineering capacity is limited, we’re focusing our efforts on a single release line at a time (e.g. 1.3), i.e. patch releases for the current stable minor release (e.g. 1.2.1.Final) are done in case of critical bug fixes only.

1.9

  • Support for multiple connector tasks in SQL Server connector and common framework (ongoing work, community-led)

  • Analyze and fix performance bottlenecks

  • Expand Debezium UI

  • HTTP sink for Debezium Server (making it a Knative event source)

  • Support for GCP Pub/Sub Lite

2.0

Debezium 2.0 is planned for 2022 Q3 (i.e. we’re planning to work on it for two quarters rather than the usual one quarter). The backlog is tracked in DBZ-3899, please join the discussion on the mailing list for discussing the scope for Debezium 2.0.

Future Releases

  • Transaction buffer rework for the Oracle connector

  • Add history compaction tool

  • SPIs for snapshotting and offset storage

  • Explore differences in MariaDB binlog format and what’s needed to support MariaDB

  • Using JSON representation by default for database history

  • Promote JSON support for schema changes topic to stable

  • Build out Debezium UI (more connectors, pausing/resuming/restarting, monitoring etc.)

  • Create PoC for implementing sagas (long-running business transactions spanning multiple (micro-)services) using CDC and the outbox pattern

  • Kubernetes Operator for Debezium Server

  • HTTP support for Debezium Server, allowing to use it as a Knative event source

  • Provide a Debezium-specific SPI for describing change event schemas

  • API/SPI allowing to implement custom connectors on the foundations of Debezium

  • Exploration of creating aggregated events, based on the streams/data from multiple tables, so to enable use cases which need to incorporate data from multiple tables into a single output structure (e.g. an Elasticsearch document containing order and orderline info)

  • Explore and provide building blocks for implementing CQRS architectures based on change data streams

  • Support for Infinispan as a source

  • Allow to propagate custom contextual data in change messages (e.g. the business user doing a certain change)

  • Re-structure DB history topic to have proper semantic representation instead of being DDL-based (DBZ-549)

  • Support for Infinispan as a sink (to enable caching use cases)

  • Provide more detailed monitoring information about Debezium’s internal state and health via JMX (e.g. to spot loss of DB connection while the connector still is running)

  • Explore publication of change events via reactive data streams (on top of embedded connector)

  • New implementation of the Debezium embedded engine independent of Kafka Connect APIs

Past Releases

Please see the releases overview page to learn more about the contents of past Debezium releases.