什么是 Flink CDC
Flink CDC 是 CDC(change data capture 变更数据捕获)在 Flink 的一种实现,具体体现为一系列的 Flink CDC Connector,如 Mysql CDC connector,PostgreSQL connector 等。Flink CDC Connector 内嵌了 Debezium 来捕获数据变更。
官网地址:https://ververica.github.io/flink-cdc-connectors/master/
(图片引自官网)
支持的数据源 :
数据源 | 版本 |
---|---|
MySQL | Database: 5.7, 8.0.x , JDBC Driver: 8.0.16 |
PostgreSQL | Database: 9.6, 10, 11, 12 JDBC Driver: 42.2.12 |
MongoDB | Database: 3.6, 4.x, 5.0, MongoDB Driver: 4.3.1 |
Oracle | Database: 11, 12, 19,Oracle Driver: 19.3.0.0 |
功能特性
- 支持数据库级别的快照,读取全量数据,2.0版本可以支持不加锁的方式读取
- 支持 binlog,捕获增量数据
- Exactly-Once
- 支持 Flink DataStream API,不需要额外部署 Debezium 和 Kafka即可在一个 Flink 作业中完成变更数据的捕获和计算
- 支持 Flink Table/SQL API,可使用 SQL DDL 来创建 CDC Source 表,并对表中的数据进行查询。
与 Flink 版本的对应关系
Flink CDC Connector 版本 | Flink 版本 |
---|---|
1.0.0 | 1.11.* |
1.1.0 | 1.11.* |
1.2.0 | 1.12.* |
1.3.0 | 1.12.* |
1.4.0 | 1.13.* |
2.0.* | 1.13.* |
2.1.* | 1.13.* |