首页 > 编程知识 正文

实时数据库与关系型数据库(oracle数据库增量同步)

时间:2023-05-03 20:31:08 阅读:67493 作者:2370

实时增量同步工具-CDC(changedatacapture ) Canal阿里巴巴B2B由于业务特性,卖方主要集中在国内,买方主要集中在海外,因此衍生出杭州和美国异地机房的需求,从2010年开始

Canal是基于java开发的数据库增量日志分析,提供增量数据订阅消耗的中间件。 目前,Canal主要支持MySQL binlog分析,用于处理分析完成后使用Canal客户端检索的相关数据。 (数据库同步需要蚂蚁otter中间件,基于Canal )。

使用场景

1 .原始场景:蚂蚁otter中间件的一部分otter是蚂蚁用于在异地数据库之间进行同步的框架,Canal是其中的一部分。

Databus LinkedIn开源1 ) Databus分布式数据同步系统2 ) Cubert高性能计算引擎3 ) ParSeq Java部分处理框架4 ) kafka流处理平台Databus

Databus和canal提供了从数据库实时检索更改并将其提供给下游实时消耗流的功能。

本文就两个系统的实现和应用上的不同之处进行了简单的比较。

与项Databuscanal中的结论支持的数据库mysql相比,Oracle MySQL (据说Oracle在内部版本中支持Oracle ) Databus当前支持的数据源更多除了事件处理接口的事件处理以外,Databus开发界面用户友好的服务模型relayrelay可以同时服务多个客户端,如需要处理ack/rollback的反序列化异常一个服务器实例只能服务一个客户端。 (被限制为在服务器端保存拉动点。 )对于Databus服务模型,更灵活的客户端客户端可以拉入多个relay更改。 通过访问的relay,抽取特定表中特定片的更改客户端可以指定只能从一个服务器抽取更改。 此外,只需抽取全部容量的更改可扩展性客户端可以线性扩展,处理能力也可以线性扩展(与自动创建数据片(客户端无法扩展数据库可扩展性)相比),可用性更高的客户端ha客户端支持群集模式每个客户端处理部分数据,一个客户端锁定,另一个客户端自动继承相应的片数据,主客户端消耗,如果主客户端锁定,则备用客户端返回数据库区域更成熟的relay/server ha多个relay可以连接到同一数据库,客户端可以配置多个relay,relay可以故障切换主备用relay模式。 relay通过zk执行故障恢复主模式对数据库影响较小的故障对上游数据库的影响客户端故障,bootstrap继续读取更改,客户端恢复后直接启动通过客户端恢复,服务器可以立即从数据库中引发大量更改Databus本身的故障,并且对数据库的影响几乎为0的系统状态监视程序通过http接口向外部暴露运行状态,从而使Databus程序的核心代码16w、测试代码6wjava、4.2w核心代码、6k测试代码Databus项目将更加成熟,当然学习成本也会更高

RedHat开源Debezium是一个开源工具,它通过实时修改多个数据源来捕获数据,并形成数据流的输出。

这是一个changedatacapture (CDC )工具,其行为类似于众所周知的Canal、DataBus和纤细的蛋挞,通过提取数据库日志来检索更改。

官方介绍:

debeziumisanopensourcedistributedplatformforchangedatacapture.startit up,point it at your databases,andyourappscanstartrespont updates,anddeletesthatotherappscommittoyourdatabases.debeziumisdurableandfast,soyourappscanrespondquicklyandnevermisanesanes

为什么有关在Debezium网上实时收集Oracle数据的资料很少? 通常的做法如下。

必须购买Oracel本机提供的OGG。 debizum的本质也基于OGG。 这种方式不费事,但很贵。 比较4种CDC工具,其中格林门简称为ogg,德贝zium简称为dbz,数据pipeline简称为dp。 比较如下。

支持的数据源、目标类型

项goldengatedebeziumdatapipelinepglogicalmysql源/目标源/目标源/目标/Oracle源/目标源(不成熟)源/目标/pososql

与项goldengatedebeziumdatapipelinepglogicallicense的商业费用相比,oracle支持开源免费,工厂支持非常活跃、迭代速度非常快的商业费用和开源免费OracleMySQL、SQLServer有限支持PostgreSQL双向同步YN有限支持n主键/唯一约束冲突处理y要求消费者自行将YY要求与源代码库安装在同一台计算机上。 目标库版本是否等于或高于源库是否需要初始化批量同步? initial loadsnapshot支持copyweb界面NNYN数据幂等性y消费者端自行配置YY监控策略命令行/monitorhttp界面命令行调整策略更改配置的复杂

PostgreSQL-PostgreSQL同步,目标库版本为源代码库版本或更高版本,使用开源工具Pglogical

使用PostgreSQL-PostgreSQL以外的同步或PostgreSQL-PostgreSQL的较高版本、Debezium Kafka为个人用户开发

纤细的蛋挞https://github.com/zendesk/Maxwell

引用Flink Clickhouse实时数仓在广投集团的最佳做法3359 www.Jian Shu.com/p/6 AAA 2f 61f 56 b

比较delta、iceberg和hudi三个开源数据湖规划https://MP.weixin.QQ.com/s/M8-IFG-ekykwgrg3gxl Lew

增量数据同步工具Debezium介绍https://www.Jian Shu.com/p/61e 604299 b5e

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。