点击上方“朱小厮的博客”,选择“设为星标”
后台回复"书",获取
Canal
定位:基于数据库增量日志解析,提供增量数据订阅&消费,目前主要支持了mysql。
原理:
canal模拟mysql slave的交互协议,伪装自己为mysql slave,向mysql master发送dump协议
mysql master收到dump请求,开始推送binary log给slave(也就是canal)
canal解析binary log对象(原始为byte流)
Connection获取上一次解析成功的位置(如果第一次启动,则获取初始制定的位置或者是当前数据库的binlog位点)
Connection建立连接,发生BINLOG_DUMP命令
Mysql开始推送Binary Log
接收到的Binary Log通过Binlog parser进行协议解析,补充一些特定信息
传递给EventSink模块进行数据存储,是一个阻塞操作,直到存储成功
存储成功后,定时记录Binary Log位置

数据过滤:支持通配符的过滤模式,表名,字段内容等
数据路由/分发:解决1:n (1个parser对应多个store的模式)
数据归并:解决n:1 (多个parser对应1个store)
数据加工:在进入store之前进行额外的处理,比如join
Maxwell

源与消费者之间的隔离
保证按顺序和至少一次交付具有高可用性
从更改流中的任意时间点开始消耗,包括整个数据的完全引导功能。
分区消费
源一致性保存

想知道更多?扫描下面的二维码关注我 后台回复"书",获取近百本电子书入口 【精彩推荐】
超清晰的DNS入门指南
深入理解Java Stream流水线
干掉Swagger,试试这个
干掉GuavaCache:Caffeine才是本地缓存的王
如何用ELK搭建TB级的日志系统
深度好文:Linux系统内存知识
日志系统新贵Loki,确实比笨重的ELK轻
日志采集系统都用到哪些技术?
面试官:为什么HashMap的加载因子是0.75?
原创|OpenAPI标准规范
复制
文章转载自朱小厮的博客,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。
评论
相关阅读
【专家有话说第五期】在不同年龄段,DBA应该怎样规划自己的职业发展?
墨天轮编辑部
1328次阅读
2025-03-13 11:40:53
MySQL8.0统计信息总结
闫建(Rock Yan)
501次阅读
2025-03-17 16:04:03
2月“墨力原创作者计划”获奖名单公布
墨天轮编辑部
470次阅读
2025-03-13 14:38:19
SQL优化 - explain查看SQL执行计划(一)
金同学
398次阅读
2025-03-13 16:04:22
MySQL突然崩溃?教你用gdb解剖core文件,快速锁定“元凶”!
szrsu
378次阅读
2025-03-13 00:29:43
MySQL生产实战优化(利用Index skip scan优化性能提升257倍)
chengang
331次阅读
2025-03-17 10:36:40
MySQL数据库当前和历史事务分析
听见风的声音
307次阅读
2025-04-01 08:47:17
MySQL 生产实践-Update 二级索引导致的性能问题排查
chengang
253次阅读
2025-03-28 16:28:31
墨天轮个人数说知识点合集
JiekeXu
244次阅读
2025-04-01 15:56:03
一键装库脚本3分钟极速部署,传统耗时砍掉95%!
IT邦德
243次阅读
2025-03-10 07:58:44