数据增量收集CDC系统应用场景分析以及Canal应用步骤

作者 : 开心源码 本文共597个字,预计阅读时间需要2分钟 发布时间: 2022-05-12 共213人阅读

很多应用场景下,除了收集数据库全量数据外,还希望只获取增量数据。例如,MySQL某个表从某个时刻开始修改、插入或者删除的数据。在这种情况下,CDC(Change

Data Capture)系统应运而生。本文将详情数据增量收集CDC系统应用场景分析以及Canal应用步骤。

CDC系统主要功能是捕获数据库中的数据升级,将增量数据发送给各个订阅者和消费者。CDC系统应用非常广泛,具体应用场景可形容为如下图所示:

CDC应用场景

应用场景主要包括:

(1)异地机房同步。实现数据异地机房容灾。

(2)数据库实时备份。相似于master/slave架构,实时对数据库进行备份。

(3)业务Cache刷新。升级数据库成功的同时,刷新Cache的值。

(4)数据全库迁移。创立任务对列表,逐渐完成全库所有表的迁移。

CDC系统开源实现的典型系统是Canal。Canal的主要定位是基于数据库增量日志解析,提供增量数据订阅和消费,目前主要支持了MySQL关系数据库。

Canal的主要原理是,模拟数据库的主备复制协议,接收主数据库产生的binary log,进而捕获升级数据,以MySQL为例说明,具体步骤如下:

步骤1:Canal实现MySQL主备复制协议,向MySQL Server发送dump协议。

步骤2:MySQL收到dump请求,开始推送binlog给Canal。

步骤3:Canal解析binlog对象,并发送给各个消费者。

说明
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是摆设,本站源码仅提供给会员学习使用!
7. 如遇到加密压缩包,请使用360解压,如遇到无法解压的请联系管理员
开心源码网 » 数据增量收集CDC系统应用场景分析以及Canal应用步骤

发表回复