一种实现数据库数据批流一体的同步方法和系统技术方案

技术编号:35865799 阅读:17 留言:0更新日期:2022-12-07 10:58
本发明专利技术提供一种实现数据库数据批流一体的同步方法和系统,所述方法包括对数据进行批流一体的数据同步;数据进行流同步的方法包括:打开binlog日志,分别对源数据库以及目的数据库进行注册、并寻找对应的配置任务;根据配置任务,将获取到的SQL信息实时发送给目的数据库,目的数据库将该SQL信息进行执行从而达到源数据库对目的数据库的流同步;数据批同步的方法包括:分别对源数据库以及目的数据库进行注册、并寻找对应的配置任务;根据配置任务,将获取到的SQL信息实时发送给目的数据库,目的数据库将该SQL信息进行执行从而达到源数据库对目的数据库的批同步。本发明专利技术方法实现数据库数据的批流一体同步。据库数据的批流一体同步。据库数据的批流一体同步。

【技术实现步骤摘要】
一种实现数据库数据批流一体的同步方法和系统


[0001]本专利技术属于数据处理领域,具体而言涉及一种实现数据库数据批流一体同步的方法和系统。

技术介绍

[0002]在IT行业,目前对数据的存储一般都采用数据库,如MYSQL,ORACLE,DB2,HIVE,KUDU等。然而随着业务的发展,系统功能的增多,系统架构变得越来越负载,数据库表和数据库表中的数据条数也变得越来越多。
[0003]由于系统与系统之间的数据交互变得越来越频繁,如何保证多个业务系统的正常运行,保证数据的正确性,保证数据同步可以兼容多种数据库格式,保证数据同步同时具备批同步和流同步(即数据批流一体同步),保证数据同步可以自动调度。传统的同步工具无法解决此问题。
[0004]有鉴于此,特提出本专利技术。

技术实现思路

[0005]有鉴于此,本专利技术公开了一种实现数据库数据批流一体同步的方法和系统,保证数据同步可以自动调度,同时实现批同步以及流同步。
[0006]具体的,本专利技术是通过以下技术方案实现的:
[0007]第一方面,本专利技术公开了一种实现数据库数据批流一体同步的方法,包括对数据进行流同步以及对数据进行批同步的方法;
[0008]其中,所述数据进行流同步的方法包括:打开binlog日志,分别对源数据库以及目的数据库进行注册、并寻找对应的配置任务;
[0009]根据所述配置任务,将获取到的SQL信息实时发送给目的数据库,目的数据库将该SQL信息进行执行从而达到源数据库对目的数据库的流同步;
[0010]所述数据进行批同步的方法包括:分别对源数据库以及目的数据库进行注册、并寻找对应的配置任务;
[0011]根据所述配置任务,将获取到的SQL信息实时发送给目的数据库,目的数据库将该SQL信息进行执行从而达到源数据库对目的数据库的批同步。
[0012]上述方法中,需打开的binlog日志(binlog即Binary Log,本身是MySQl中的一种二进制日志文件,可以记录MySQL内部对数据库的所有修改),系统通过binlog日志可以订阅到该数据库事务的变更信息。
[0013]更为具体地,无论是批同步还是流同步,源数据库以及所述目的数据库包括数据库的名称、数据库类型、ip地址、端口号、用户名、密码以及链接额外参数,这样系统录入了上述系统的相关参数,系统根据录入的数据库类型,寻找该数据库对应的驱动,然后通过ip、端口、用户名及密码访问该数据库。
[0014]优选地,在进行流同步的过程中,寻找对应的配置任务方法包括:
[0015]获取源数据库中的数据库日志中的变化数据,所述变化数据包括:增、删、改;
[0016]根据变化数据中的变更的行信息和其对应的索引信息来确定事务的变更数据信息;
[0017]根据变更数据信息,获知用于表示重做日志对应事务的数据变化情况,即获知变化数据的事务逻辑信息。
[0018]优选地,将获取到的SQL信息实时发送给目的数据库的方法包括:
[0019]根据所述事务逻辑信息,选择对应的操作语句,并将变化的具体数据作为SQL信息的参数;
[0020]将事务的同步信息发送至目的数据库,同步信息包括事务的标记信息和相应的所述SQL信息。
[0021]实际上,系统获取到源数据库中需要同步的事务的标记信息和变更数据信息,根据事务的变更数据信息以生成相应的SQL语句。
[0022]优选地,目的数据库将该SQL信息进行执行从而达到源数据库对目的数据库的流同步的方法包括:
[0023]目的数据库根据接收到的所述标记信息对事务进行分类,并按照事务分类对同步信息进行执行,从而达到数据的流同步。
[0024]优选地,在进行批同步的过程中,寻找对应的配置任务方法包括:
[0025]选择源数据库需要进行同步的表,并配置where条件,从而达到增量同步和全量同步的目的。
[0026]其中,增量同步的方法采用where条件判断,结合调度参数来实现数据的增量同步;全量同步实现对源数据库表中的全部历史数据进行全表查询。
[0027]在批同步过程中,系统获取到源数据库的配置文件,根据配置信息,系统可以获取到该源端数据库需要同步的数据结果集,同样地选择目的数据库需要进行同步的表,并配置源数据库获取到的结果集指向目的数据库。
[0028]总之通过本专利技术的两种同步方法的结合使用提高了数据同步方法的灵活性,方便性。
[0029]第二方面,本专利技术公开了一种实现数据库数据批流一体同步的系统,包括:
[0030]流同步模块:用于对数据进行流同步,所述流同步的方法包括:打开binlog日志,分别对源数据库以及目的数据库进行注册、并寻找对应的配置任务;根据所述配置任务,将获取到的SQL信息实时发送给目的数据库,目的数据库将该SQL信息进行执行从而达到源数据库对目的数据库的流同步;
[0031]批同步模块:用于对数据进行批同步,所述批同步的方法包括:分别对源数据库以及目的数据库进行注册、并寻找对应的配置任务;根据所述配置任务,将获取到的SQL信息实时发送给目的数据库,目的数据库将该SQL信息进行执行从而达到源数据库对目的数据库的批同步。
[0032]第三方面,本专利技术公开了一种计算机可读存储介质,其上存储有计算机程序所述程序被处理器执行时实现如第一方面实现数据库数据批流一体的同步方法的步骤。
[0033]第四方面,本专利技术公开了一种计算机设备,包括存储器,处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如第一方面实现数据
库数据批流一体的同步方法的步骤。
[0034]与现有技术相比,本专利技术的有益效果在于:
[0035]本专利技术提出的实现数据库数据批流一体的同步方法和系统,同时具备批同步和流同步,保证数据同步可以自动调度。
附图说明
[0036]通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本专利技术的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
[0037]图1为本专利技术实施例提供的实现数据库数据流同步的方法流程图;
[0038]图2为本专利技术实施例提供的实现数据库数据批同步的方法流程图;
[0039]图3为本专利技术实施例提供的一种计算机设备的结构示意图;
[0040]图4为数据库与数据库之间数据批流一体同步系统的系统结构示意图。
具体实施方式
[0041]下面将结合附图和具体实施方式对本专利技术的技术方案进行清楚、完整地描述,但是本领域技术人员将会理解,下列所描述的实施例是本专利技术一部分实施例,而不是全部的实施例,仅用于说明本专利技术,而不应视为限制本专利技术的范围。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种实现数据库数据批流一体的同步方法,其特征在于,包括对数据进行流同步以及对数据进行批同步的方法;其中,所述数据进行流同步的方法包括:打开binlog日志,分别对源数据库以及目的数据库进行注册、并寻找对应的配置任务;根据所述配置任务,将获取到的SQL信息实时发送给目的数据库,目的数据库将该SQL信息进行执行从而达到源数据库对目的数据库的流同步;所述数据进行批同步的方法包括:分别对源数据库以及目的数据库进行注册、并寻找对应的配置任务;根据所述配置任务,将获取到的SQL信息实时发送给目的数据库,目的数据库将该SQL信息进行执行从而达到源数据库对目的数据库的批同步。2.根据权利要求1所述的实现数据库数据批流一体的同步方法,其特征在于,所述源数据库以及所述目的数据库包括数据库的名称、数据库类型、ip地址、端口号、用户名、密码以及链接额外参数。3.根据权利要求1所述的实现数据库数据批流一体的同步方法,其特征在于,在进行流同步的过程中,寻找对应的配置任务方法包括:获取源数据库中的数据库日志中的变化数据,所述变化数据包括:增、删、改;根据变化数据中的变更的行信息和其对应的索引信息来确定为事务的变更数据信息;根据变更数据信息,获知用于表示重做日志对应的事务的变化数据的变化情况,即获知变化数据的事务逻辑信息。4.根据权利要求3所述的实现数据库数据批流一体的同步方法,其特征在于,将获取到的SQL信息实时发送给目的数据库的方法包括:根据所述事务逻辑信息,选择对应的操作语句,并将变化的具体数据作为SQL信息的参数;将事务的同步信息发送至目的数据库,同步信息包括事务的标记信息和相应的所述SQL信息。5.根据权利要求4所述的实现数据库数据批流一体的同步方法,其特征在于,目的数据库将该SQL信息进行执行从而达到源数据库对目的数据库的流同步的方法包括:目的数据库根据接收到的所述标...

【专利技术属性】
技术研发人员:陈伟生辛盛鹏王芳袁蕾磊赵子琪刘小萱杨龙波郭君超
申请(专利权)人:中国动物疫病预防控制中心农业农村部屠宰技术中心
类型:发明
国别省市:

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

1