otter学习(5)— canal和otter的关系?
2018-03-25 15:41
344 查看
在回答这问题之前,首先来看一张canal&otter和mysql复制的类比图:
mysql的自带复制技术可分成三步:
master将改变记录到二进制日志(binary log)中(这些记录叫做二进制日志事件,binary log events,可以通过show binlog events进行查看);
slave将master的binary log events拷贝到它的中继日志(relay log),这里是I/O thread线程;
slave重做中继日志中的事件,将改变反映它自己的数据,这里是SQL thread线程。
基于canal&otter的复制技术和mysql复制类似,具有类比性:
Canal对应于I/O thread,接收Master Binary Log;
Otter对应于SQL thread,通过Canal获取Binary Log数据,执行同步插入数据库;
两者的区别在于:
otter目前嵌入式依赖canal,部署为同一个jvm,目前设计为不产生Relay Log,数据不落地;
otter目前允许自定义同步逻辑,解决各类需求;
a. ETL转化. 比如Slave上目标表的表名,字段名,字段类型不同,字段个数不同等.
b. 异构数据库. 比如Slave可以是oracle或者其他类型的存储,nosql等.
c. M-M部署,解决数据一致性问题
d. 基于manager部署,方便监控同步状态和管理同步任务.
mysql的自带复制技术可分成三步:
master将改变记录到二进制日志(binary log)中(这些记录叫做二进制日志事件,binary log events,可以通过show binlog events进行查看);
slave将master的binary log events拷贝到它的中继日志(relay log),这里是I/O thread线程;
slave重做中继日志中的事件,将改变反映它自己的数据,这里是SQL thread线程。
基于canal&otter的复制技术和mysql复制类似,具有类比性:
Canal对应于I/O thread,接收Master Binary Log;
Otter对应于SQL thread,通过Canal获取Binary Log数据,执行同步插入数据库;
两者的区别在于:
otter目前嵌入式依赖canal,部署为同一个jvm,目前设计为不产生Relay Log,数据不落地;
otter目前允许自定义同步逻辑,解决各类需求;
a. ETL转化. 比如Slave上目标表的表名,字段名,字段类型不同,字段个数不同等.
b. 异构数据库. 比如Slave可以是oracle或者其他类型的存储,nosql等.
c. M-M部署,解决数据一致性问题
d. 基于manager部署,方便监控同步状态和管理同步任务.
相关文章推荐
- canal和otter的关系?
- Java学习--01--JRE与JDK的关系
- 【Java学习之路之2】对象和类的关系
- effective C ++ 学习笔记之 item 31 将文件间的编译依赖关系降至最低(未完成)
- Linux学习笔记之权限与命令之间的关系(重要)及文件与目录知识总结
- Spring学习(3)--Bean之间的关系
- 微软企业库4.1学习笔记(二)各功能之间的依赖关系以及对象创建
- 每天学习一算法系列(33)(n 支队伍比赛,分别编号为0,1,2......n-1,已知它们之间的实力对比关系,存储在一个二维数组w[n][n]中,w[i][j] 的值代表编号为i,j 的队伍中更强)
- nio与mina学习(1) nio与socket模型的关系探究
- JSP学习 —— 开篇:JSP,servlet容器,Tomcat,servlet容器之间的关系
- MySQL 学习教程(五)【整理】-索引/ 关系/ 范式
- Kafka整体结构图、Consumer与topic关系、Kafka消息分发、Consumer的负载均衡、Kafka文件存储机制、Kafka partition segment等(来自学习资料)
- 【Linux学习】pthread_create主线程与创建的新线程之间退出关系
- Vijava 学习笔记之(VirtualMachine 与HostSystem 宿主关系)
- ios学习之 关于Certificate、Provisioning Profile、App ID的介绍及其之间的关系
- java基础学习总结——关于Java中的paint,repaint,update三个方法的关系
- j2se学习中的一些零碎知识点3之内部类和UML类图关系,以及软件包机制
- php管理依赖关系工具composer学习笔记
- 我的学习笔记005--常见web前台技术之间的关系html,css,javascript...
- 数据库关系代数表达式学习