详解 Flink CDC 的介绍和入门案例

一、Flink CDC 简介

1. CDC 介绍

​ CDC 是 Change Data Capture(变更数据获取)的简称。核心思想是监测并捕获数据库的变动(包括数据或数据表的插入、更新以及删除等),将这些变更按发生的顺序完整记录下来,写入到消息中间件中以供其他服务进行订阅及消费。

2. CDC 种类

基于查询的 CDC 基于 Binlog 的 CDC
开源产品 Sqoop、Kafka JDBC Source Canal、Maxwell、Debezium
执行模式 Batch Streaming
是否可以捕获所有数据变化
延迟性 高延迟 低延迟
是否增加数据库压力

3. Flink CDC 介绍

​ Flink CDC 是一个内置了 Debezium 的基于 Binlog 的可以直接从 MySQL、PostgreSQL 等数据库直接读取全量数据和增量变更数据的 source 组件。开源地址:https://github.com/ververica/flink-cdc-connectors

二、Flink CDC 案例实操

1. DataStream 实现

1.1 导入依赖
<dependencies>
	 <dependency>
		 <groupId>org.apache.flink</groupId>
		 <artifactId>flink-java</artifactId>
		 <version>1.12.0</version>
	 </dependency>
	 <dependency>
		 <groupId>org.apache.flink</groupId>
		 <artifactId>flink-streaming-java_2.12</artifactId>
		 <version>1.12.0</version>
	 </dependency>
	 <dependency>
		 <groupId>org.apache.flink</groupId>
		 <artifactId>flink-clients_2.12</artifactId>
		 <version>1.12.0</version>
	 </dependency>
	 <dependency>
		 <groupId>org.apache.hadoop</groupId>
		 <artifactId>hadoop-client</artifactId>
		 <version>3.1.3</version>
	 </dependency>
	 <dependency>
		 <groupId>mysql</groupId>
		 <artifactId>mysql-connector-java</artifactId>
		 <version>5.1.49</version>
	 </dependency>
	 <dependency>
		 <groupId>org.apache.flink</groupId>
		 <artifactId>flink-table-planner-blink_2.12</artifactId>
		 <version>1.12.0</version>
	 </dependency>
	 <dependency>
		 <grou
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值