各种开源数据库同步工具汇总

(1)OGGOracleGoldenGate是一款实时访问、基于日志变化捕捉数据,并且在异构平台之间迚行数据传输的产品。GoldenGateTDM是一种基于软件的数据复制方式,它从数据库的日志解析数据的变化(数据量只有日志的四分之一左右)。GoldenGateTDM将数据变化转化为自己的格式,直接通过TCP/IP网络传输,无需依赖于数据库自身的传递方式,而且可以通过高达10:1的压缩率对数据迚行压缩,可以大大降低带宽需求。在目标端,GoldenGateTDM可以通过交易重组,分批加载等技术手

大家好,又见面了,我是你们的朋友全栈君。

(1) OGG

Oracle GoldenGate 是一款实时访问、基于日志变化捕捉数据,并且在异构平台之间迚行数据传输的产品。GoldenGate TDM是一种基于软件的数据复制方式,它从数据库的日志解析数据的变化(数据量只有日志的四分之一左右)。GoldenGate TDM将数据变化转化为自己的格式,直接通过TCP/IP网络传输,无需依赖于数据库自身的传递方式,而且可以通过高达10:1的压缩率对数据迚行压缩,可以大大降低带宽需求。在目标端,GoldenGate TDM可以通过交易重组,分批加载等技术手段大大加快数据投递的速度和效率,降低目标系统的资源占用,可以在亚秒级实现大量数据的复制,并且目标端数据库是活动的。

优点:牛逼

缺点:好像不开源;

(2) Canal

canal是由Alibaba开源的一个基于binlog的增量日志组件,其核心原理是canal伪装成Mysql的slave,发送dump协议获取binlog,解析并存储起来给客户端消费。

优点:可以同步任何非查询类操作。DDL和DML语句(除了数据查询语句select)。增量+全量都可以

缺点:数据源只支持MySQL,因为利用了MySQL的binlog特性

项目地址:https://github.com/alibaba/canal

(3) otter

otter是一款基于Java且免费、开源基于数据库增量日志解析,准实时同步到本机房或异地机房的mysql/oracle数据库的解决方案

优点:

1. 单向同步, mysql –> oracle互相同步

2. 双向同步,无冲突变更

3. 文件同步,本地/aranda文件

4. 双A同步,冲突检测&冲突补救

5. 数据迁移,中间表/行记录同步

缺点:同canal,因其是利用canal来进行同步的,canal作为其数据源组件

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

(4) DataX

DataX 是一个异构数据源离线同步工具,致力于实现包括关系型数据库(MySQL、Oracle等)、HDFS、Hive、ODPS、HBase、FTP等各种异构数据源之间稳定高效的数据同步功能。

优点:支持非常多数据库同步,原理是通过查询语句select同步的

缺点:不支持ddl同步

项目地址:https://github.com/alibaba/DataX

(5) kettle

Kettle是一款国外开源的ETL工具,用java编写,可以在视窗、Linux和Unix上运行,数据抽取高效稳定,中文称水壶。这个项目的主要程序员MATT想把各种数据放进一个水壶,然后以指定的格式流出。它是一个ETL工具集,允许你管理来自不同数据库的数据,并通过提供一个图形用户环境来描述你想做什么,而不是你想怎么做。Kettle中有两个脚本文件,转换和作业。转换完成了数据的基本转换,而作业完成了对整个工作流的控制。

优点:功能强大,支持几乎所有数据库;

缺点: 需要用户自己一步步配置,学习成本高;通过查询语句select同步的;

项目地址:https://github.com/pentaho/pentaho-kettle

(6) FlinkX

FlinkX是在是袋鼠云内部广泛使用的基于flink的分布式离线和实时的数据同步框架,实现了多种异构数据源之间高效的数据迁移。FlinkX是一个基于Flink的批流统一的数据同步工具,既可以采集静态的数据,比如MySQL,HDFS等,也可以采集实时变化的数据,比如MySQL binlog,Kafka等。

项目地址:https://github.com/DTStack/flinkx

缺点: 通过查询语句select同步的

(7) Porter

Porter是一款随行付开源的数据同步中间件,主要用于解决同构/异构数据库之间的表级别数据同步问题。

项目地址:https://github.com/sxfad/porter

缺点: 数据源只支持MySQL和Oracle;仅支持DML;通过查询语句select同步的

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/124950.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 笛卡尔积 php,PHP笛卡尔积实现算法示例

    笛卡尔积 php,PHP笛卡尔积实现算法示例本文实例讲述了PHP笛卡尔积实现算法。分享给大家供大家参考,具体如下:$arr=array(array(1,3,4,5),array(3,5,7,9),array(76,6,1,0));/****实现二维数组的笛卡尔积组合**$arr要进行笛卡尔积的二维数组**$str最终实现的笛卡尔积组合,可不写**@returnarray**/functioncartesian($arr,…

  • HTML入门

    HTML入门HTML入门

  • 利用Pycharm连接服务器[通俗易懂]

    利用Pycharm连接服务器[通俗易懂]利用Pycharm连接服务器前言当下,很多深度学习的模型需要高配置的设备来跑,本地的pc可能无法满足要求。所以就需要利用服务器来训练,但是在服务器上操作代码不是很方便。利用Pycharm可以在本地编写/修改代码,能够同步到服务器上,并且能直接在本地利用pycharm运行同步到服务器上的代码。非常的方便。-前提一台装有anaconda的服务器,本地装了专业版的pycharm。操作步骤步骤一:在pycharm上使用服务器的python环境用pycharm任意打开一个项目,从工具栏中选择Fil

  • sift构建尺度空间_离散序列的尺度变换

    sift构建尺度空间_离散序列的尺度变换尺度空间定义  说到尺度空间理论最早可以追溯到1962年的T.Iijima最先提出,学术界开始关注尺度空间技术主要在1986年IEEEPAMI上同时刊出的4篇关于尺度空间理论的文章奠定了发展基础。现实世界中物体只有具备一定的尺度才能够倍人眼所察觉,计算机视觉学术研究就是在不断的尝试与突破来模拟人眼的观察方法。因此,尺度空间就是试图在图像领域中模拟人眼观察物体的概念与方法。例如:观察一颗树,关…

    2022年10月14日
  • 乾颐堂军哥HCIE8-BGP工作原理以及更新机制(含下一跳解析)[通俗易懂]

    乾颐堂军哥HCIE8-BGP工作原理以及更新机制(含下一跳解析)

  • Composer常见问题

    Composer常见问题

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号