首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >canal初探

canal初探

原创
作者头像
爱努力的Max
修改2022-03-29 18:07:37
修改2022-03-29 18:07:37
9040
举报
文章被收录于专栏:Max的知识笔记Max的知识笔记

canal是阿里的开源框架,其优势在于可以方便地同步数据库中增量数据到其他的存储应用(MySQL、Kafka、Elastic Search、HBase、Redis等等)。

主要用途是基于MySQL数据库增量日志解析,提供增量数据订阅和消费。

工作原理:

canal相当于MySQL的slave,模拟MySQL slave的交互协议向MySQL Master发送dump协议,MySQL Master收到canal发送过来的的dump请求,开始推送binary log给canal,然后canal解析binary log,再发送到存储目的地。

原理图
原理图

canal数据同步有什么作用:

canal的数据同步不是全量的,而是增量的。基于binary log增量订阅和消费,canal可以做:

-数据库镜像

-数据库实时备份

-索引构建和实时维护

-业务cache(缓存)刷新

-带业务逻辑的增量数据处理

实例1:使用Kafka实现Redis与MySQL的数据同步(架构图)

架构图
架构图

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档