数据库数据同步系统、方法及装置制造方法及图纸

技术编号:21477317 阅读:37 留言:0更新日期:2019-06-29 04:45
本发明专利技术提供了一种数据库数据同步系统、方法及装置,该系统包括:同步源端和同步目标端,其中,根据源端数据库的事务日志,获得待同步的事务,将待同步的事务存储在缓存中;将缓存中的待同步的事务分批发送至同步目标端;同步目标端,用于:在接收到待同步的事务后,将待同步的事务添加至事务集合中;并行执行事务集合中的事务;从事务集合中删除执行成功的事务。本发明专利技术可以实现数据库数据同步,目标端数据库负担较轻,支持断点续传,同步效率高,且同步数据不丢失。

【技术实现步骤摘要】
数据库数据同步系统、方法及装置
本专利技术涉及金融行业业务系统数据同步领域,尤其涉及一种数据库数据同步系统、方法及装置。
技术介绍
目前金融行业各应用的分布式系统架构导致不同应用间存在“准实时”数据同步的需求,包括主机系统与开放系统间的同步以及不同开放系统间的同步。典型的应用场景如下所示:数据服务架构补充:由业务系统日间准实时同步关键业务数据到后台数据服务系统,提供“T+0”数据查询和报表。业务流程数据集中:将不同系统间的流程数据通过联机同步实现集中,提供业务流程全局视图。OLTP热数据读写分流:对于承载业务数据量较大的OLTP应用,可以将部分查询热数据独立建查询库,将查询交易进行适当分流。全文索引数据更新:对于使用搜索引擎的应用场景,可以通过捕获源端数据源的变化数据,及时更新建立的倒排索引数据,实现业务数据的准实时模糊搜索。应用缓存数据更新:对于使用缓存服务的应用场景,可以通过捕获源端数据源的变化数据,及时更新缓存中的业务数据,从而保证缓存数据的“一致性”。目前业界主流数据库厂商都提供了相关数据实时同步解决方案,都毫无例外的使用基于数据库联机和归档日志的变化捕捉(ChangeDataCapture,CDC)技术方案,具体包括IBMInfoSphereCDC和OracleGoldenGate两种,其中,IBMInfoSphereCDC主要面向IBMDB2产品家族,有限支持其它主流关系型数据库,图1为IBMInfoSphereCDC的架构示意图,包括数据库数据捕获、数据推送、数据应用和数据确认四大步骤;OracleGoldenGate的实现技术方案与IBMCDC类似。以上两种方案均存在以下缺点:一是当存在大量待同步的事务时,直接将从源端数据库中捕获的待同步的事务直接推送至目标端数据库,造成目标端数据库负担过重;二是不支持断点续传,即在未完成所有待同步的事务的同步,而目标端数据库由于故障等原因重启时,之前已经完成的同步可能丢失,此时需要重新同步之前已经同步过的待同步的事务,同步效率慢,且易造成数据丢失。
技术实现思路
本专利技术实施例提出一种数据库数据同步系统,以实现数据库数据同步,目标端数据库负担较轻,支持断点续传,同步效率高,且同步数据不易丢失,该系统包括同步源端和同步目标端,其中,同步源端,用于:根据源端数据库的事务日志,获得待同步的事务,将待同步的事务存储在缓存中;将缓存中的待同步的事务分批发送至同步目标端;同步目标端,用于:在接收到待同步的事务后,将待同步的事务添加至事务集合中;并行执行事务集合中的事务;从事务集合中删除执行成功的事务。本专利技术实施例提出一种数据库数据同步方法,以实现数据库数据同步,目标端数据库负担较轻,支持断点续传,同步效率高,且同步数据不易丢失,该方法包括:根据源端数据库的事务事务日志,获得待同步的事务,将待同步的事务存储在缓存中;分批发送缓存中的待同步的事务,所述待同步的事务用于添加至事务集合中,并行执行事务集合中的事务,从事务集合中删除执行成功的事务。本专利技术实施例提出一种数据库数据同步方法,以实现数据库数据同步,目标端数据库负担较轻,支持断点续传,同步效率高,且同步数据不易丢失,该方法包括:在接收到待同步的事务后,将待同步的事务添加至事务集合中,所述待同步的事务是通过缓存分批发送获得的;并行执行事务集合中的事务;从事务集合中删除执行成功的事务。本专利技术实施例提出一种数据库数据同步装置,以实现数据库数据同步,目标端数据库负担较轻,支持断点续传,同步效率高,且同步数据不易丢失,该装置包括:事务获取模块,用于根据源端数据库的事务日志,获得待同步的事务,将待同步的事务存储在缓存中;事务发送模块,用于分批发送缓存中的待同步的事务,所述待同步的事务用于添加至事务集合中,并行执行事务集合中的事务,从事务集合中删除执行成功的事务。本专利技术实施例提出一种数据库数据同步装置,以实现数据库数据同步,目标端数据库负担较轻,支持断点续传,同步效率高,且同步数据不易丢失,该装置包括:事务集合生成模块,用于在接收到待同步的事务后,将待同步的事务添加至事务集合中,所述待同步的事务是通过缓存分批发送获得的;并行执行模块,用于并行执行事务集合中的事务;事务删除模块,用于从事务集合中删除执行成功的事务。本专利技术实施例还提出了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述数据库数据同步方法。本专利技术实施例还提出了一种计算机可读存储介质,所述计算机可读存储介质存储有执行上述数据库数据同步方法的计算机程序。在本专利技术实施例中,同步源端,用于:根据源端数据库的事务日志,获得待同步的事务,将待同步的事务存储在缓存中;将缓存中的待同步的事务分批发送至同步目标端;同步目标端,用于:在接收到待同步的事务后,将待同步的事务添加至事务集合中;并行执行事务集合中的事务;从事务集合中删除执行成功的事务。在本专利技术实施例中,将待同步的事务存储在缓存中,将缓存中的待同步的事务分批发送至同步目标端,可避免目标端数据库负担过重;另外,在接收到待同步的事务后,将待同步的事务添加至事务集合中,并行执行事务集合中的事务,从事务集合中删除执行成功的事务,以上过程可以使得在未完成所有待同步的事务的同步,而目标端数据库重启时,不需要再次同步重启之前已经同步的待同步的事务,而是从事务集合中,获得重启前未执行的事务,提高了同步的效率,且避免了数据丢失。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:图1为IBMInfoSphereCDC的架构示意图;图2为本专利技术实施例中数据库数据同步系统的示意图;图3为本专利技术实施例中数据库数据同步系统的应用流程示意图;图4为本专利技术实施例中提出的数据库数据同步方法的流程图;图5为本专利技术实施例中提出的数据库数据同步方法的另一个流程图;图6为本专利技术实施例中数据库数据同步装置的示意图;图7为本专利技术实施例中数据库数据同步装置的另一个示意图。具体实施方式为使本专利技术实施例的目的、技术方案和优点更加清楚明白,下面结合附图对本专利技术实施例做进一步详细说明。在此,本专利技术的示意性实施例及其说明用于解释本专利技术,但并不作为对本专利技术的限定。图2为本专利技术实施例中数据库数据同步系统的示意图,如图2所示,该系统包括:同步源端和同步目标端,其中,同步源端,用于:根据源端数据库的事务日志,获得待同步的事务,将待同步的事务存储在缓存中;将缓存中的待同步的事务分批发送至同步目标端;同步目标端,用于:在接收到待同步的事务后,将待同步的事务添加至事务集合中;并行执行事务集合中的事务;从事务集合中删除执行成功的事务。如图2所示,在本专利技术实施例中,将待同步的事务存储在缓存中,将缓存中的待同步的事务分批发送至同步目标端,可避免目标端数据库负担过重;另外,在接收到待同步的事务后,将待同步的事务添加至事务集合中,并行执行事务集合中的事务,从事务集合中删除执行成功的事务,以上过程可以使得在未完成所有本文档来自技高网
...

【技术保护点】
1.一种数据库数据同步系统,其特征在于,包括:同步源端和同步目标端,其中,同步源端,用于:根据源端数据库的事务日志,获得待同步的事务,将待同步的事务存储在缓存中;将缓存中的待同步的事务分批发送至同步目标端;同步目标端,用于:在接收到待同步的事务后,将待同步的事务添加至事务集合中;并行执行事务集合中的事务;从事务集合中删除执行成功的事务。

【技术特征摘要】
1.一种数据库数据同步系统,其特征在于,包括:同步源端和同步目标端,其中,同步源端,用于:根据源端数据库的事务日志,获得待同步的事务,将待同步的事务存储在缓存中;将缓存中的待同步的事务分批发送至同步目标端;同步目标端,用于:在接收到待同步的事务后,将待同步的事务添加至事务集合中;并行执行事务集合中的事务;从事务集合中删除执行成功的事务。2.如权利要求1所述的数据库数据同步系统,其特征在于,还包括数据捕获端,用于:接收同步源端发送的数据获取请求;根据数据获取请求,捕获源端数据库的事务日志;将源端数据库的事务日志发送至同步源端;同步源端还用于:发送数据获取请求;接收源端数据库的事务日志。3.如权利要求1所述的数据库数据同步系统,其特征在于,同步源端还用于:解析源端数据库的事务日志,获得事务操作标记;根据事务操作标记,过滤出待同步的事务。4.如权利要求1所述的数据库数据同步系统,其特征在于,同步目标端还用于:在接收到待同步的事务后,将事务转化为多个SQL操作;将所述SQL操作添加至事务集合中。5.如权利要求4所述的数据库数据同步系统,其特征在于,同步目标端还用于:将事务集合中SQL操作分为多个待同步组,同一个事务的SQL操作在一个待同步组中。6.如权利要求5所述的数据库数据同步系统,其特征在于,同步目标端还用于:并行执行多个待同步组;对每一个待同步组,顺序执行待同步组里的SQL操作。7.如权利要求4所述的数据库数据同步系统,其特征在于,所述SQL操作包括增加操作、删除操作和修改操作。8.如权利要求1所述的数据库数...

【专利技术属性】
技术研发人员:岳艳涛汪涛张佩毅郭志军
申请(专利权)人:交通银行股份有限公司
类型:发明
国别省市:上海,31

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

1