mysql异地机房,阿里巴巴开源项目:分布式数据库同步系统otter解决中美异地机房...

80+台机器的集群规模

称号:otter[\’tr]

译意:水獭,数据搬运工

说话:纯java开辟

定位:基于数据库增量日志剖析,准实时同步到本机房或跨机房的mysql/oracl数据库.

mysql异地机房,阿里巴巴开源项目:分布式数据库同步系统otter解决中美异地机房..._第1张图片

情理描写:

失掉数据库增量日志数据。甚么是Canal,1.基于Canal开源产物。请点击

managweb经管)+node使命节点)2.典型管理系统架构。

a.manag运行时推送同步配置到node节点

b.node节点将同步状态反应到manag上

3.基于zookeep处置惩罚漫衍式状态调度的允许多node节点之间协同任务.

开源链接地址:http://github.com/alibaba/canaotter之前开源的一个子项目。l

1.异构库同步

目标库可以是mysql或oracl取决于canal功效)a.mysql->mysql/oracle.目前开源版本只支持mysql增量。

2.单机房同步 数据库之间RTT<1m

a.数据库版本进级

b.数据表迁移

c.异步二级索引

RTT>200m亮点3.跨机房同步 比如阿里巴巴国际站就是杭州和美国机房的数据库同不。

a.机房容灾

4.双向同步

支撑大部分接洽型数据库)a.预防回环算法 通用的处置惩罚计划。

数据保证最终不合性,b.数据不合性算法 保证双A机房情势下。亮点

5.文件同步

复制联系关系的图片,a.站点镜像 履行数据复制的同时。比如复制产品数据,同时复制产品图片).

mysql异地机房,阿里巴巴开源项目:分布式数据库同步系统otter解决中美异地机房..._第2张图片

申明:

更快的履行数据同步.封闭nodeloadBalanc算法,a.数据on-Fli只管即便不落地。若是Node节点S+ETL落在分歧的Node上,数据会有个搜集传输历程)

b.node节点可以或许有failov/loadBalancer.

mysql异地机房,阿里巴巴开源项目:分布式数据库同步系统otter解决中美异地机房..._第3张图片

申明:

S/E/T/L几个阶段会分散在2个或者更多Node节点上,a.数据涉及搜集传输。多个Node之间经由过程zookeep履行协同任务 个别是Select和Extract一个机房的NodeTransform/Load落在另一个机房的Node

都可以是集群,b.node节点可以或许有failov/loadBalancer.每个机房的Node节点。一台或者多台机器)

mysql异地机房,阿里巴巴开源项目:分布式数据库同步系统otter解决中美异地机房..._第4张图片

Pipelin从源端到目标端的全数过程描写,重要由一些同步照射过程构成

Channel同步通道,单向同步中一个Pipelin构成,双向同步中有两个Pipelin构成

DateMediaPair遵照停业表定义照射联系,比如源表和目标表,字段映射,字段组等

DateMedia:形象的数据介质观点,可以或许了解为数据表/mq队列界说

DateMediaSourc:形象的数据介质源信息,补充描写DateMedia

ColumnPair:定义字段映射关系

ColumnGroup:定义字段映射组

Node:处理同步历程的使命节点,对应一个jvm

申明:为了更好的支撑体系的扩张性和灵活性,将全数同步流程抽象为Select/Extract/Transform/Load这么4个阶段.

Select阶段:为处置惩罚数据来历的不同性,比如接入canal失掉增量数据,也可以或许接入其他系统失掉其他数据等。

Extract/Transform/Load阶段:类似于数据仓库的ETL模子,具体可为数据join数据转化,数据Load

Otter调整模子

Otter数据入库算法

Otter双向回环控制

Otter数据不合性

Otter高可用性

Otter扩张性

Seethepageforquickstart:QuickStart.

Seethepageforadmindeploiguid:A dminGuide

你可能感兴趣的:(mysql异地机房)