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

(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)


相关推荐

  • linux 技巧:使用 screen 管理你的远程会话

    linux 技巧:使用 screen 管理你的远程会话

  • ICO身份核实KYC

    ICO身份核实KYC

  • java数组删除元素_java中删除 数组中的指定元素方法[通俗易懂]

    java数组删除元素_java中删除 数组中的指定元素方法[通俗易懂]java中删除数组中的指定元素要如何来实现呢,如果各位对于这个算法不是很清楚可以和小编一起来看一篇关于java中删除数组中的指定元素的例子。java的api中,并没有提供删除数组中元素的方法。虽然数组是一个对象,不过并没有提供add()、remove()或查找元素的方法。这就是为什么类似ArrayList和HashSet受欢迎的原因。不过,我们要感谢ApacheCommonsUtils,我…

  • idea2021.11.3激活(JetBrains全家桶)

    (idea2021.11.3激活)最近有小伙伴私信我,问我这边有没有免费的intellijIdea的激活码,然后我将全栈君台教程分享给他了。激活成功之后他一直表示感谢,哈哈~IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.cn/100143.html08…

  • vscode前端插件简单配置

    vscode前端插件简单配置AutoCloseTaghtml标签自动闭合Chinese(Simplified)(简体中文)LanguagePackforVisualStudioCodevscode中文插件儿EasyLESS项目无框架无webpack时可以使用的一个less转换插件settings.json配置”less.compile”:{ “out”:false,//是否输出css文件,false为不输出 “compress”:false,//是否压缩 “sour..

  • NR 5G 网络切片[通俗易懂]

    NR 5G 网络切片[通俗易懂]5G网络切片网络切片是在5G引入的新概念之一,关于网络切片首先从5G的前辈3G和4G说起,从3G时代开始,手机上网就靠数据业务流量,但网络资源有限,不可能保证所有业务都能全速进行,总得捡重要的首先保障。最简单的方式就是对业务进行分类,给予不同优先级的业务不同的资源,不同的服务质量,这就是QoS(QualityofService)的来源。3G网络,是无线互联网的开端,通过对所有用户的各种类型…

发表回复

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

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