otter 是一款数据同步利器
基于数据库增量日志解析,准实时同步到本机房或异地机房的数据库中,支持 MySQL 与 Oracle 数据库。
基于 canal 开源产品,获取数据增量日志数据;
典型的管理系统架构,manager web 管理 +node 工作节点;
manager 运行时推送同步配置到 node 节点;
node 节点将同步状态反馈到 manager 上
基于 zookeeper,解决分布式状态调度的,允许多节点之间协同工作;
实现异构数据库的同步,mysql 数据>mysql 、ORACLE 数据库;
实现单机房同步&#xff0c;数据库之间 RTT<1ms &#xff0c;包括(数据库版本升级&#xff0c;数据表迁移&#xff0c;异步二级索引)
1、数据 on-fly&#xff0c;尽可能不落地&#xff0c;更快的进行数据同步&#xff0c;开启 node loadbalancer 算法&#xff0c;如果 node 节点 s&#43;etl 落在不同的 node 上&#xff0c;数据会有个网络传输过程&#xff1b;
2、node 节点可以有 failover&#xff0c;loadbalancer&#xff1b;’
实现异地机房同步&#xff0c;比如阿里巴巴国际站就是杭州和美国机房的数据同步&#xff0c;RTT>200MS&#xff0c;实现机房容灾&#xff1b;
实现双向同步&#xff1a;
1、避免回环算法(通用的解决方案&#xff0c;支持大部分关系型数据库)
2、数据一致性算法(保证双 A 机房模式下&#xff0c;数据保证最终一致性)
实现文件同步&#xff1a;1、站点镜像进行数据复制的同时&#xff0c;复制关联图片&#xff0c;比如复制产品数据&#xff0c;同时复制产品图片