目的:实时同步mysql的数据,之前是通过flink-cdc实现,但是flink-cdc需要编写代码,维护起来相对来说较为麻烦。现在直接采用kafkaconnect来进行,操作简单便于维护
一、前期准备
软件版本
mysql 5.7.30
kafka 2.2.1-cdh6.3.2
Flink 12.2.2
Debezium连接器
debezium 1.5.0
相关介绍
Debezium是一个开源项目,为捕获数据更改(change data capture,CDC)提供了一个低延迟的流式处理平台。你可以安装并且配置Debezium去监控你的数据库,然后你的应用就可以消费对数据库的每一个行级别(row-level)的更改。
二、整体流程设计
图示如下
1、源数据位于mysql中
2、通过debezium捕获数据更改
3、传输mysql的变化信息
4、消费kafka,将其映射成为一张表
三、分步骤测试
1、kafka connnect启动与测试
1.1 进入kafka配置目录
cd /opt/cloudera/parcels/CDH/lib/kafka/config
1.2 创建配置文件
vim connect-distributed.properties
1.3 进行配置
bootstrap.servers=192.168.5.185:9092,192.168.5.165:9092,192.168.5.187:9092
group.id=kafka-connect
key.converter=org.ap