CDC Connectors for Apache Flink®

Embrace Database Changes


This project provides a set of source connectors for Apache Flink® directly ingesting changes coming from different databases using Change Data Capture(CDC).

Key Features

Exactly-once Semantics

CDC Connectors for Apache Flink® supports reading database snapshots and continues to read binlogs with exactly-once processing, even after failures.


Users can use SQL DDL to create a CDC source to monitor changes on a single table.

DataStream API

Users can consume changes on multiple databases and tables in a single job without Debezium and Apache Kafka® deployed.

Getting Started

CDC Connectors for Apache Flink® provides a series of quick start demos without any dependencies or java code, only a Linux or MacOS computer with Docker installed is enough. With these demos, you can quickly feel the power and convenience of Apache Flink® CDC.
Learn More
-- creates a mysql cdc table source CREATE TABLE mysql_binlog (   id INT NOT NULL,   name STRING,   description STRING,   weight DECIMAL(10,3),   PRIMARY KEY(id) NOT ENFORCED ) WITH (   'connector' = 'mysql-cdc',   'hostname' = 'localhost',   'port' = '3306',   'username' = 'flinkuser',   'password' = 'flinkpw',   'database-name' = 'inventory',   'table-name' = 'products' ); -- read snapshot and binlog data from mysql -- and do some transformation -- and show on the client SELECT id, UPPER(name), description, weight FROM mysql_binlog;

Connect to Your Favorite Database

CDC Connectors for Apache Flink® supports ingesting snapshot data and real time changes from databases to Flink® and then transform and sink to various downstream systems.

Join the Community

Apache Flink, Flink®, Apache®, the squirrel logo, and the Apache feather logo are either registered trademarks or trademarks of The Apache Software Foundation. Copyright © 2022 Ververica Inc., Licensed under the Apache License, Version 2.0.