Otter简介

article/2025/10/20 12:53:02

原文地址:http://m635674608.iteye.com/blog/2314908


Otter它是一个数据同步解决方案,可以解决本地跨网络跨机房跨地域的数据同步问题,并且拥有可观的效率,web管理工具等特点,而且背景也很优秀,据说阿里B2B内部的本地/异地机房的同步需求基本全上了 otter。

Otter项目地址:https://github.com/alibaba/otter

Otter文档地址:https://github.com/alibaba/otter/wiki

1. Otter是什么

Ottter是由阿里巴巴开源的一个数据同步产品,它的最初的目的是为了解决跨国异地机房双A架构,两边可写的场景,开发时间从2011年7月份一直持续到现在,目前阿里巴巴B2B内部的本地/异地机房的同步需求基本全上了Otter。

Otter基于数据库增量日志解析,支持mysql/oracle数据库进行同步,在最新的v4.2.13已经支持mysql5.7以及阿里云提供的RDS数据库(使用RDS童鞋的福音)

工作原理

下图是关于Otter运行原理图:

更具上图里面关键几个元素进行介绍

  • db : 数据源以及需要同步到的库
  • Canal : 用户获取数据库增量日志
  • manager : 配置同步规则设置数据源同步源等
  • zookeeper : 协调node进行协调工作
  • node : 负责任务处理处理接受到的部分同步工作

特性

笔者总结了一下Otter的一些特性:

  • 使用纯JAVA开发,占时资源比较高
  • 基于Canal获取数据库增量日志,Canal是阿里巴巴另外一个开源产品
  • 使用manager(web管理)+node(工作节点),manager负责配置监控,node负责处理任务
  • 基于zookeeper,解决分布式状态调度的,允许多node节点之间协同工作
  • 使用aria2多线程传输技术,对网络依赖带宽依赖较低

2. Otter能解决什么问题

技术最终是解决业务问题的,不然还是耍流氓!我们来一同看看 Otter 到底能解决我们在开发中遇到的那些场景中的问题

异构库同步

Otter支持从Mysql同步到Mysql/oracle,我们可以把mysql同步到oracle

单机房同步

可以作为一主多从同步方案,对于单机房内网来说效率非常高,还可以做为数据库版本升级,数据表迁移,二级索引等这类功能

异地机房同步

异地机房同步可以说是Otter最大的亮点之一,可以解决国际化问题把数据从国内同步到国外来提供用户使用,在国内场景可以做到数据多机房容灾

双向同步

双向同步是在数据同步中最难搞的一种场景,Otter可以很好的应对这种场景,Otter有避免回环算法和数据一致性算法两种特性,保证双A机房模式下,数据保证最终一致性

文件同步

站点镜像,进行数据复制的同时,复制关联的图片,比如复制产品数据,同时复制产品图片


http://chatgpt.dhexx.cn/article/RwqxHMAF.shtml

相关文章

Canal和Otter

问题一: 跨公网部署Otter 参考架构图 解析 ​ a. 数据涉及网络传输,S/E/T/L几个阶段会分散在2个或者更多Node节点上,多个Node之间通过zookeeper进行协同工作 (一般是Select和Extract在一个机房的Node,Transform/Load落在另一个机房的Node&a…

otter学习(一)——otter原理

1.otter原理: 基于数据库增量日志解析,准实时同步到本机房或异地机房的mysql/oracle数据库. 一个分布式数据库同步系统 原理描述: 1. 基于Canal开源产品,获取数据库增量日志数据。 2. 典型管理系统架构,manager(web管理…

otter数据同步

一、Otter目前支持了什么 1. 单向同步, mysql/oracle互相同步 2. 双向同步,无冲突变更 3. 文件同步,本地/aranda文件 4. 双A同步,冲突检测&冲突补救 5. 数据迁移,中间表/行记录同步 导历史表还需要程序代码实现吗&…

数据同步 之 Otter

一、Otter 语言:java 定位:基于数据库增量日志解析,准实时同步到本机房或异地机房的mysql/oracle数据库,一个分布式数据库同步系统。 1.工作原理: 2.原理描述 1. 基于Canal开源产品,获取数据库增量日志…

otter:分布式数据库同步系统

一、otter介绍 阿里巴巴B2B公司,因为业务的特性,卖家主要集中在国内,买家主要集中在国外,所以衍生出了杭州和美国异地机房的需求,同时为了提升用户体验,整个机房的架构为双A,两边均可写&#x…

Otter 下载安装

简介 基于数据库增量日志解析,准实时同步到本机房或异地机房的mysql/oracle数据库. 一个分布式数据库同步系统。 原理 1. 基于Canal开源产品,获取数据库增量日志数据。 什么是Canal, 请点击 2. 典型管理系统架构,manager(web管理)node(工…

otter使用手册

目录 1.机器管理 1.1 zookeeper管理 1.2 Node管理 2.配置管理 2.1数据源配置 2.2数据表配置(添加数据库表) 2.3 Canal配置(添加Canal) 3.同步管理 3.1 Channel管理 3.2 Pipeline管理 1.机器管理 1.1 zookeeper管理 添加z…

Otter 双向同步mysql

一、Otter目前支持了什么 1. 单向同步, mysql/oracle互相同步 2. 双向同步,无冲突变更 3. 文件同步,本地/aranda文件 4. 双A同步,冲突检测&冲突补救 5. 数据迁移,中间表/行记录同步 实际测试中,otter的…

Otter安装说明

Otter安装说明 Mysql安装(如果已安装则无需再安装):【忽略安装Mysql】 安装依赖 yum -y install perl perl-devel autoconf #下载Mysql包 https://github.com/alibaba/otter/releases【Otter最新版本下载】 wget https://dev.mysql.com/g…

otter mysql hbase_otter自定义扩展

otter自定义扩展 otter支持数据处理自定义过程。 Extract模块: EventProcessor : 自定义数据处理,可以改变一条变更数据的任意内容 FileResolver : 解决数据和文件的关联关系 目前两者都只支持java语言编写,但都支持运行时动态编译&lib包…

otter搭建

一、安装zookeeper的单机版 apache-zookeeper-3.6.1-bin.tar.gz 如果下载的是3.5及以后的,需要下载包名带有-bin的版本,从3.5.5开始,带有bin的包才是解压以后可以直接使用的里面有编译后二进制的包,而之前的普通的tar.gz里面只是…

otter安装

译意: 水獭,数据搬运工 语言: 纯java开发 定位: 基于数据库增量日志解析,准实时同步到本机房或异地机房的mysql/oracle数据库. 一个分布式数据库同步系统 otter的环境需要:mysql,jdk&#x…

Otter 安装部署维护

介绍 淘宝开源的产品,基于数据库增量日志解析,准实时同步到本机房或异地机房的mysql/oracle数据库,一个分布式数据库同步系统。 目前同步规模: 同步数据量6亿 文件同步1.5TB(2000w张图片) 涉及200个数据库实例之间的同步 80台机器…

Otter配置说明

Otter配置说明 标签: Otter 下载 最新版Otter下载地址 CSDN下载地址 需要下载manager.deployer-4.2.13.tar.gz,node.deployer-4.2.13.tar.gz和Source code (zip) 需要安装zookeeper和jdk支持,canal已经内置,不需要安装 manage…

mysql otter_MySQL数据库实现远程同步的工具alibaba otter

MySQL数据库实现远程同步的工具alibaba otter 发布时间:2020-06-03 15:46:57 来源:51CTO 阅读:291 作者:三月 本篇文章给大家主要讲的是关于MySQL数据库实现远程同步的工具alibaba otter的内容,感兴趣的话就一起来看看…

Otter源码深入详解(三)

分析Node的代码前,需要理解Node的工作机制,需要先了解其工作原理: https://github.com/alibaba/otter/wiki/Otter调度模型 这里用到了SEDA模型,SEDA模型这里有偏文章介绍的很好: https://www.jianshu.com/p/e184fdc0ad…

otter mysql教学视频_3.Otter快速上手

QuickStart 1.几点说明 有一点特别注意:目前canal支持mixed,row,statement多种日志协议的解析,但配合otter进行数据库同步,目前仅支持row协议的同步,使用时需要注意. 环境准备 操作系统 a. otter为纯java编写,windows/…

通过docker构建otter

本文是通过docker构建otter环境与mysql环境 一、使用docker构建otter docker pull canal/otter-all curl -fsSL https://raw.githubusercontent.com/alibaba/otter/master/docker/run.sh | bash 访问otter:http://192.168.102.212:8080 账号密码默认是admin/adm…

Otter详解

otter girthub链接: https://github.com/alibaba/otter 有兴趣的同学可以移步笔者的个人博客 更多博客 整体架构 子模块解释 zooKeeper 分布式一致性协调服务,主要用来调度配置好的node模块。 manager 管理中心,用来配置同步信息&#…

otter 配置问题笔记

otter 部署启动 : 1,启动zookeeper 2,启动manager 3,启动node 4 在manger管理界面配置zookeeper 和node 添加映射关系表 点击pipeline的名称, 点击[批量添加] (一个一个的添加, 太累) 按照以下格式输入 数据库名,表1,【数据源配置】序号,目的数据源的序号 item,s…