- 1、本文档共24页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Mysql同步原理 Mysql Slave同步原理: a. I/O thread接收binlog b. SQL thread执行变更 * Mysql同步原理 Binlog Dump交互 * Mysql同步原理 更多协议参考: /doc/internals/en/binary-log.html * Canal工作原理 实时增量数据获取原理: 模拟slave的交互协议,伪装自己为mysql slave (类似于I/O thread线程) * Canal工作原理 数据消费原理: 基于网络协议,提供数据订阅消费,类似于SQL Thread实现业务自定义 * Canal Server模块 1. server代表一个canal server运行实例,对应于一个jvm 2. instance对应于一个数据队列 (1个server对应0..n个instance) * Canal Server模块 server模块: 基于netty网络处理 + protobuf数据传输格式 instance模块: a. eventParser 增量数据解析器,目前仅支持mysql b. eventSink 数据过滤,加工,分发的工作 c. eventStore 数据存储,目前1.0.6仅支持memory,file存储开发中 d. metaManager 增量订阅消费信息管理器 * Canal Server配置示例 * Client/Server交互 * Client/Server交互 * 数据对象格式 * Canal Client示例 * Canal Client示例 * * * * * * * * * * * * * * * * * * * * * * * * * Canal开源产品介绍 七锋 @ taobao * Agenda 1. 产生背景 2. 项目介绍 3. 周边产品 4. roadmap * 产生背景 早期,阿里巴巴B2B公司因为存在杭州和美国双机房部署,存在跨机房同步的业务需求,当时早期的数据库同步业务,主要是基于trigger的方式获取增量变更。 从2010年开始,阿里系公司开始逐步的尝试基于数据库的日志解析,获取增量变更进行同步,由此衍生出了增量订阅消费的业务,从此开启了一段新纪元. * Canal介绍 名称: canal [k?n?l] 译意: 水道/管道/沟渠 语言: 纯java开发 定位: 基于数据库增量日志准实时解析,提供增量数据订阅消费(目前开源版本主要支持了mysql) * * * * * * * * * * * * * * * * * * * * * * * * *
文档评论(0)