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

(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同步的

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

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

赞 (0)
全栈程序员-站长的头像全栈程序员-站长

相关推荐

  • 大数据平台建设方案(项目需求与技术方案)[通俗易懂]

    大数据平台建设方案(项目需求与技术方案)[通俗易懂]一、项目背景 “十三五”期间,随着我国现代信息技术的蓬勃发展,信息化建设模式发生根本性转变,一场以云计算、大数据、物联网、移动应用等技术为核心的“新IT”浪潮风起云涌,信息化应用进入一个“新常态”。***(某政府部门)为积极应对“互联网+”和大数据时代的机遇和挑战,适应全省经济社会发展与改革要求,大数据平台应运而生。在这里我还是要推荐下我自己建的大数据学习交流qq裙: 957205…

    2022年4月30日
  • PMF到底是什么?

    PMF到底是什么?PMF指的是产品与市场匹配的产品关注的数据指标在不同行业、不同业务模式的产品中对应的数值应该是不同的,核心思想在于需要找到一些关键的数据指标,然后通过数据指标来判断产品是否达到了PMF的标准。用户级产品标准·每周使用天数超过3天·初始日新增用户(DNU)超过100·30%新用户次日留存率·达到10万用户量Saas产品标准·…

    2022年5月24日
  • 二叉树前序遍历、中序遍历、后序遍历、层序遍历的直观理解

    二叉树前序遍历、中序遍历、后序遍历、层序遍历的直观理解0.写在最前面希望大家收藏:本文持续更新地址:https://haoqchen.site/2018/05/23/go-through-binary-tree/    复习到二叉树,看到网上诸多博客文章各种绕,记得头晕。个人觉得数学、算法这些东西都是可以更直观简洁地表示,然后被记住的,并不需要靠死记硬背。本文的程序基本来源于《大话数据结构》,个人感觉是一本非常好的书,推荐去看。…

    2022年6月12日
  • 罗马字符发音_罗马字发音

    罗马字符发音_罗马字发音**1Ααalphaa:lf阿尔法2Ββbetabet贝塔3Γγgammaga:m伽马4Δδdeltadelt德尔塔5Εεepsilonepsilon伊普西龙6Ζζzetazat截塔7Ηηetaeit艾塔8Θθthetθit西塔9Ιιiotaiot约塔10

    2022年9月30日
  • sass scss区别_scss是什么

    sass scss区别_scss是什么Sass和SCSS其实是同一种东西,我们平时都称之为Sass,两者之间不同之处有以下两点:Sass是以”.sass”后缀为扩展名,Scss是以scss后缀为扩展名Sass是以严格的缩进式语法规则书写,不带{}和分号Scss语法属性和css语法书写方式非常类似,带大括号和分号。…

    2022年10月23日
  • 测试这个东西好不啦

    测试这个东西好不啦欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗Ctrl+B斜体Ctrl+I引用Ctrl

    2022年10月31日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

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