数据实时增量同步工具Maxwell与Canal详解

一、CDC

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

1、什么是变更数据捕获

CDC是指从源数据库捕获到数据和数据结构(也称为模式)的增量变更,近乎实时地将这些变更,传播到其他数据库或应用程序之处。

通过这种方式,CDC能够向数据仓库提供高效、低延迟的数据传输,以便信息被及时转换并交付给专供分析的应用程序。

与批量复制相比,变更数据的捕获通常具有如下三项基本优势:

  • CDC通过仅发送增量的变更,来降低通过网络传输数据的成本;
  • CDC可以帮助用户根据最新的数据做出更快、更准确的决策。例如,CDC会将事务直接传输到专供分析的应用上;
  • CDC最大限度地减少了对于生产环境网络流量的干扰;

常见的CDC工具有:

  •     maxwell:基于MYSQL的binlog; 
  •     canal:基于MYSQL的binlog; 
  •     debezium;
  •     flinkcdc; 

注:sqoop不是CDC工具 sqoop是基于查询的全量数据捕获。

二、MySQL的binlo

你可能感兴趣的:(Hadoop,Hive,Spark,大数据安全,数据库)