otter是阿里巴巴的开源的一款数据数据同步工具,它基于对数据库增量日志解析,准实时同步到本机房或者异地机房的mysql/oracle/mq等,是一个分布式数据同步系统。otter第一版本可追溯到04~05年,开发时间从2011年7月份一直持续到现在;当时因阿里巴巴的业务特点,买家主要集中在国外,卖家在国内,因此诞生了杭州和美国异地机房,同时为了提升用户体验,整个机房是一个双A架构,两边均可写,由此诞生了otter这样一个产品;2019年otter更新版本为4.2.19-SNAPHOST后未再做大的版本更新。
otter的主要的使用场景有:
(1)异构库同步:mysql -> mysql; mysql -> oracle; mysql -> mq
(2)单机房同步:单机房内部数据同步,数据异构;
(3)数据迁移:历史数据迁移,全量迁移/增量迁移
(4)异地机房同步:异步机房同步支持,用于容灾
(5)双向同步:支持双向同步 A -> B; B -> A;同时避免双向回环
(6)文件同步

在讲otter同步原理前需要提一下mysql的日志,otter是基于mysql的增量日志解析来实现数据同步的,这里的日志就是mysql二进制日志——binlog日志,该类型日志详细记录了所有修改的数据的sql,当某一时刻的数据误操作导致问题,或者数据库当即数据丢失,就可以通过binlog日志完成数据的找回。同时binlog日志用于mysql主从数据同

最低0.47元/天 解锁文章
952

被折叠的 条评论
为什么被折叠?



