layout | title | permalink |
---|---|---|
page-menu |
Debezium Roadmap |
/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.
Note
|
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. |
-
Rebase MySQL connector to common framework used by the other connectors
-
Stabilize Oracle connector based on LogMiner
-
Build out Debezium UI (more connectors, pausing/resuming/restarting, monitoring etc.)
-
Provide more flexible options for snapshotting (re-snapshotting specific tables, filter changes, parallelized snapshotting, etc.)
-
Analyze and fix performance bottlenecks (ongoing)
-
Create PoC for implementing sagas (long-running business transactions spanning multiple (micro-)services) using CDC and the outbox pattern
-
Explore differences in MariaDB binlog format and what’s needed to support MariaDB
-
Explore options for resumeable snapshots
-
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)
-
DB history topic compaction tool
-
New implementation of the Debezium embedded engine independent of Kafka Connect APIs
Please see the releases overview page to learn more about the contents of past Debezium releases.