一种OGG同步实现Mongo多库连接方法及系统技术方案

技术编号:26970331 阅读:17 留言:0更新日期:2021-01-05 23:59
本发明专利技术实施例提供一种OGG同步实现Mongo多库连接方法,包括以下步骤:步骤一:应用系统将目标数据写入Oracle数据库,步骤二:消息中转OGG监控Oracle数据库中变化的数据,步骤三:消费OGG利用R进程解析队列消息为json格式数据,所述json格式数据包括A数据和B数据,步骤四:基于配置类HandlerProperties,根据线程1将所述A数据写入MongoDB集群A库a表,步骤五:基于配置类HandlerProperties2,根据线程2将所述B数据写入MongoDB集群B库b表;本发明专利技术实施例实现了OGG同步Mongo多库连接,提高了OGG同步Mongo多库连接的效率。

【技术实现步骤摘要】
一种OGG同步实现Mongo多库连接方法及系统
本专利技术涉及计算机
,更具体地说,涉及到一种OGG同步实现Mongo多库连接方法及系统。
技术介绍
OGG是一种基于日志的结构化数据复制软件,能够实现大量交易数据的实时捕捉,变换和投递,实现源数据库与目标数据库的数据同步,保持最少10ms的数据延迟。OGG可实现Oracle到Oracle,Oracle到MySQL,Oracle到MongDB的同构或异构表同步,灵活、稳定、配置化操作的优点,让OGG在数据同步领域,使用越来越广,收获了一批忠实粉,DBA同步数据的首选,相比同构表的同步,异构表的同步要二次开发。我们项目中很多是做OGG中的Oracle到MongDB异构同步,涉及到多个库的操作时,以OGG主数据HandlerProperties连接实例,需要写入其他数据库时,HandlerProperties实例切换数据库名,这样就会出现一次数据同步多个源,就要多次切换,多线程操作时会出现线程不安全,加锁则会有同步卡顿现象,效率低。本
技术实现思路
为了克服现有技术的不足,本专利技术提供一种OGG同步实现Mongo多库连接方法解决多线程操作时线程不安全且加锁有同步卡顿以及效率低的问题。本专利技术解决其技术问题所采用的技术方案是:一种OGG同步实现Mongo多库连接方法,包括以下步骤:步骤一:应用系统将目标数据写入Oracle数据库;步骤二:消息中转OGG监控Oracle数据库中变化的数据;步骤三:消费OGG利用R进程解析队列消息为json格式数据,所述json格式数据包括A数据和B数据;步骤四:基于配置类HandlerProperties,根据线程1将所述A数据写入MongoDB集群A库a表;步骤五:基于配置类HandlerProperties2,根据线程2将所述B数据写入MongoDB集群B库b表。优选地,消息中转OGG监控Oracle数据库中变化的数据之后,所述步骤还包括:E进程抽取变化的数据推送至所述消费OGG。优选地,消费OGG利用R进程解析队列消息为json格式数据,所述json格式数据包括A数据和B数据之前,所述步骤还包括:R进程预先加载配置信息,所述配置信息包括源表、目标表以及MongoDB连接库信息。优选地,R进程预先加载配置信息之后,所述步骤还包括:生成配置类HandlerProperties;创建另一个配置类HandlerProperties2。优选地,创建另一个配置类HandlerProperties2之后,所述步骤还包括:R进程读取E进程推送的队列消息。一种OGG同步实现Mongo多库连接系统,所述系统包括:第一写入单元,用于应用系统将目标数据写入Oracle数据库;监控单元,用于消息中转OGG监控Oracle数据库中变化的数据;解析单元,用于消费OGG利用R进程解析队列消息为json格式数据,所述json格式数据包括A数据和B数据;第二写入单元,用于基于配置类HandlerProperties,根据线程1将所述A数据写入MongoDB集群A库a表;第二写入单元,用于基于配置类HandlerProperties2,根据线程2将所述B数据写入MongoDB集群B库b表。优选地,所述系统还包括:抽取单元,用于E进程抽取变化的数据推送至所述消费OGG。优选地,所述系统还包括:加载单元,用于R进程预先加载配置信息,所述配置信息包括源表、目标表以及MongoDB连接库信息。优选地,所述系统还包括:生成单元,用于生成配置类HandlerProperties;创建单元,用于创建另一个配置类HandlerProperties2。优选地,所述系统还包括:读取单元,用于R进程读取E进程推送的队列消息。本专利技术的有益效果是:应用系统将目标数据写入Oracle数据库;消息中转OGG监控Oracle数据库中变化的数据;消费OGG利用R进程解析队列消息为json格式数据,所述json格式数据包括A数据和B数据;基于配置类HandlerProperties,根据线程1将所述A数据写入MongoDB集群A库a表;基于配置类HandlerProperties2,根据线程2将所述B数据写入MongoDB集群B库b表;从而实现OGG同步Mongo多库连接,进而提高了OGG同步Mongo多库连接的效率。附图说明图1是一种OGG同步实现Mongo多库连接方法的流程示意图。图2是一种OGG同步实现Mongo多库连接系统的功能模块图。图3是一种OGG同步实现Mongo多库连接系统的框架图。图4是多线程数据写入时序图。具体实施方式为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。以下结合具体实施例对本专利技术的具体实现进行详细描述:实施例一:图1示出了本专利技术实施例一提供的一种OGG同步实现Mongo多库连接方法的实现流程,为了便于说明,仅示出了与本专利技术实施例相关的部分,详述如下:在步骤S101中,应用系统将目标数据写入Oracle数据库;在步骤S102中,消息中转OGG监控Oracle数据库中变化的数据;优选地,消息中转OGG监控Oracle数据库中变化的数据之后,所述步骤还包括:E进程抽取变化的数据推送至所述消费OGG。在步骤S103中,消费OGG利用R进程解析队列消息为json格式数据,所述json格式数据包括A数据和B数据;优选地,消费OGG利用R进程解析队列消息为json格式数据,所述json格式数据包括A数据和B数据之前,所述步骤还包括:R进程预先加载配置信息,所述配置信息包括源表、目标表以及MongoDB连接库信息。优选地,R进程预先加载配置信息之后,所述步骤还包括:生成配置类HandlerProperties;创建另一个配置类HandlerProperties2。优选地,创建另一个配置类HandlerProperties2之后,所述步骤还包括:R进程读取E进程推送的队列消息。在步骤S104中,基于配置类HandlerProperties,根据线程1将所述A数据写入MongoDB集群A库a表;在步骤S105中,基于配置类HandlerProperties2,根据线程2将所述B数据写入MongoDB集群B库b表。本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,所述的程序可以存储于一计算机可读取存储介质中,所述的存储介质,如ROM/RAM、磁盘、光盘等。实施例二:图2示出了本文档来自技高网...

【技术保护点】
1.一种OGG同步实现Mongo多库连接方法,其特征在于,包括以下步骤:/n步骤一:应用系统将目标数据写入Oracle数据库;/n步骤二:消息中转OGG监控Oracle数据库中变化的数据;/n步骤三:消费OGG利用R进程解析队列消息为json格式数据,所述json格式数据包括A数据和B数据;/n步骤四:基于配置类HandlerProperties,根据线程1将所述A数据写入MongoDB集群A库a表;/n步骤五:基于配置类HandlerProperties2,根据线程2将所述B数据写入MongoDB集群B库b表。/n

【技术特征摘要】
1.一种OGG同步实现Mongo多库连接方法,其特征在于,包括以下步骤:
步骤一:应用系统将目标数据写入Oracle数据库;
步骤二:消息中转OGG监控Oracle数据库中变化的数据;
步骤三:消费OGG利用R进程解析队列消息为json格式数据,所述json格式数据包括A数据和B数据;
步骤四:基于配置类HandlerProperties,根据线程1将所述A数据写入MongoDB集群A库a表;
步骤五:基于配置类HandlerProperties2,根据线程2将所述B数据写入MongoDB集群B库b表。


2.根据权利要求1所述的一种OGG同步实现Mongo多库连接方法,其特征在于,消息中转OGG监控Oracle数据库中变化的数据之后,所述步骤还包括:
E进程抽取变化的数据推送至所述消费OGG。


3.根据权利要求2所述的一种OGG同步实现Mongo多库连接方法,其特征在于,消费OGG利用R进程解析队列消息为json格式数据,所述json格式数据包括A数据和B数据之前,所述步骤还包括:
R进程预先加载配置信息,所述配置信息包括源表、目标表以及MongoDB连接库信息。


4.根据权利要求3所述的一种OGG同步实现Mongo多库连接方法,其特征在于,R进程预先加载配置信息之后,所述步骤还包括:
生成配置类HandlerProperties;
创建另一个配置类HandlerProperties2。


5.根据权利要求4所述的一种OGG同步实现Mongo多库连接方法,其特征在于,创建另一个配置类HandlerProperties2之后,所述步...

【专利技术属性】
技术研发人员:夏菊平刘跃红李雨峰曾国江
申请(专利权)人:银盛支付服务股份有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1