新特性,可以替代Canal的数据同步方案—Flink-CDC

新特性,可以替代Canal的数据同步方案—Flink-CDC_第1张图片

一、CDC简介

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

CDC主要分为基于查询和基于Binlog两种方式,我们主要了解一下这两种之间的区别:

新特性,可以替代Canal的数据同步方案—Flink-CDC_第2张图片

Flink社区开发了 flink-cdc-connectors 组件,这是一个可以直接从 MySQL、PostgreSQL等数据库直接读取全量数据和增量变更数据的 source 组件。大数据培训目前也已开源,开源地址:https://github.com/ververica/flink-cdc-connectors

新特性,可以替代Canal的数据同步方案—Flink-CDC_第3张图片

二、Flink DataStream方式应用的案例实操

1. 在pom.xml中增加如下依赖

  org.apache.flink        flink-java        1.12.0    
            
    org.apache.flink        
    flink-streaming-java_2.12        
    1.12.0    
    
            
    org.apache.flink        
    flink-clients_2.12        
    1.12.0    
    
            
    org.apache.hadoop        
    hadoop-client        
    3.1.3    
    
            
    mysql        
    mysql-connector-java        
    5.1.49    
    
            
    com.alibaba.ververica        
    flink-connector-mysql-cdc        
    1.2.0    
     
            
    com.alibaba        
    fastjson        
    1.2.75 
    
     
        
            
      
    org.apache.maven.plugins   
    maven-assembly-plugin  
    3.0.0
    
                  
    jar-with-depende

你可能感兴趣的:(flink,数据库,mysql)