一种数据库的数据同步方法和装置制造方法及图纸

技术编号:18592204 阅读:20 留言:0更新日期:2018-08-04 20:03
本发明专利技术公开了一种数据库的数据同步方法和装置,通过读取和解析第一数据库中未同步过的日志信息,可以从第一数据库中获得所要同步的数据信息,从而该数据信息就可以同步到第二数据库。因此,若以业务系统数据库作为第一数据库,业务系统数据库可以不必为了向其他数据库进行数据同步而查找所要同步的数据信息,这样就避免了业务系统的数据库面对数据同步时产生的大量数据查找任务,使得频繁甚至是实时的数据同步任务不会影响到业务系统的数据库对业务系统运行过程所产生的数据处理任务的处理能力,从而在业务系统的正常运行不受影响的情况下实现数据库的实时数据同步。

A data synchronization method and device for a database

The invention discloses a data synchronization method and device for the database. By reading and analyzing the unsynchronized log information in the first database, the data information that is synchronized can be obtained from the first database, so that the data information can be synchronized to the second database. Therefore, if the business system database is the first database, the business system database can not look up the synchronized data in order to synchronize the data to other databases, thus avoiding the large number of search tasks that the database of the business system generates in the face of data synchronization, making it frequent or even real. The data synchronization task does not affect the processing capability of the data processing task generated by the business system's database to the operation process of the business system, thus realizing the real-time data synchronization of the database under the condition that the normal operation of the business system is not affected.

【技术实现步骤摘要】
一种数据库的数据同步方法和装置
本专利技术涉及数据库
,特别是涉及一种数据库的数据同步方法和装置。
技术介绍
随着数据库技术的发展,越来越多的业务系统采用数据库对数据进行存储和管理。在业务系统运行的过程中,所产生的数据被记录在业务系统的数据库中。而为了便于业务方对数据进行分析和处理,业务系统数据库的数据需要同步到业务方的其他数据库,以形成业务系统中的数据的备份。在现有技术中,每一次需要从业务系统的数据库同步数据到另一数据库时,业务系统的数据库都需要对所要同步的数据进行查找。但是,对于一些要求数据同步频繁的场景,尤其是要求实时数据同步的场景,过于频繁的数据同步会导致业务系统的数据库面对大量的数据查找任务,从而影响到业务系统的数据库对业务系统运行过程所产生的数据处理任务的处理能力,使得业务系统的正常运行受到影响。
技术实现思路
本专利技术所要解决的技术问题是,提供一种数据库的数据同步方法和装置,以避免业务系统的数据库面对数据同步时产生的大量数据查找任务,使得频繁甚至是实时的数据同步任务不会影响到业务系统的数据库对业务系统运行过程所产生的数据处理任务的处理能力,从而在业务系统的正常运行不受影响的情况下实现数据库的实时数据同步。第一方面,本专利技术实施例提供了一种数据库的数据同步方法,包括:响应于数据同步的触发指令,从第一数据库中读取未同步过的日志信息;对所述日志信息进行解析得到目标字符串;按照所述日志信息的格式,将所述目标字符串转换为目标数据信息;将所述目标数据信息同步到第二数据库。可选地,所述对所述日志信息进行解析得到目标字符串,包括:若所述日志信息对应的数据操作为插入操作,从所述日志信息中查找定长字符串和/或变长字符串;将所述定长字符串和/或所述变长字符串确定为所述目标字符串。可选地,所述对所述日志信息进行解析得到目标字符串,包括:若所述日志信息对应的数据操作为更新操作,从所述日志信息中查找所述更新操作对应的更新字符串;获取所述更新操作之前的初始数据信息对应的初始字符串;以所述更新字符串对所述初始字符串进行更新,得到所述目标字符串。可选地,所述获取所述更新操作之前的初始数据信息对应的初始字符串,包括:从所述日志信息中查找定长主键和/或变长主键;根据所述定长主键和/或变长主键,在所述第二数据库中查找所述初始数据信息;将所述初始数据信息转换成所述初始字符串。可选地,所述第一数据库为SQLServer数据库。第二方面,本专利技术实施例提供了一种数据库的数据同步装置,包括:读取单元,用于响应于数据同步的触发指令,从第一数据库中读取未同步过的日志信息;解析单元,用于对所述日志信息进行解析得到目标字符串;转换单元,用于按照所述日志信息的格式,将所述目标字符串转换为目标数据信息;同步单元,用于将所述目标数据信息同步到第二数据库。可选地,所述解析单元包括:第一查找子单元,用于若所述日志信息对应的数据操作为插入操作,从所述日志信息中查找定长字符串和/或变长字符串;确定单元,用于将所述定长字符串和/或所述变长字符串确定为所述目标字符串。可选地,所述解析单元包括:第二查找子单元,用于若所述日志信息对应的数据操作为更新操作,从所述日志信息中查找所述更新操作对应的更新字符串;获取子单元,用于获取所述更新操作之前的初始数据信息对应的初始字符串;更新子单元,用于以所述更新字符串对所述初始字符串进行更新,得到所述目标字符串。可选地,所述获取子单元包括:第三查找子单元,用于从所述日志信息中查找定长主键和/或变长主键;第四查找子单元,用于根据所述定长主键和/或变长主键,在所述第二数据库中查找所述初始数据信息;转换子单元,用于将所述初始数据信息转换成所述初始字符串。第三方面,本专利技术实施例提供了一种数据库的数据同步设备,所述设备包括处理器以及存储器:所述存储器用于存储程序代码,并将所述程序代码传输给所述处理器;所述处理器用于根据所述程序代码中的指令执行上述第一方面提供的所述数据库的数据同步方法。第四方面,本专利技术实施例提供了一种存储介质,所述存储介质用于存储程序代码,所述程序代码用于执行上述第一方面提供的所述数据库的数据同步方法。与现有技术相比,本专利技术实施例具有以下优点:在本专利技术实施例中,通过读取和解析第一数据库中未同步过的日志信息,可以从第一数据库中获得所要同步的数据信息,从而该数据信息就可以同步到第二数据库。因此,若以业务系统数据库作为第一数据库,业务系统数据库可以不必为了向其他数据库进行数据同步而查找所要同步的数据信息,这样就避免了业务系统的数据库面对数据同步时产生的大量数据查找任务,使得频繁甚至是实时的数据同步任务不会影响到业务系统的数据库对业务系统运行过程所产生的数据处理任务的处理能力,从而在业务系统的正常运行不受影响的情况下实现数据库的实时数据同步。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术实施例中一个示例性应用场景的网络系统示意图;图2为本专利技术实施例提供的一种数据库的数据同步方法的流程图;图3为本专利技术实施例提供的一种解析更新操作对应的日志信息的流程图;图4为本专利技术提供的一种数据库的数据同步方法场景实施例流程图;图5为本专利技术实施例提供的一种数据库的数据同步装置的结构图;图6为本专利技术实施例提供的一种数据库的数据同步设备的硬件结构示意图。具体实施方式为了使本
的人员更好地理解本专利技术方案,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。在业务系统运行的过程中会产生的越来越多的数据,这些数据会由该业务系统的数据库对这些数据相关的记录以及处理。目前,为了便于业务方对数据进行分析和处理,需要将业务系统数据库中记录的数据,同步到该业务方的其他数据库中。而每次从业务系统的数据库同步数据到业务方的另一数据库,都需要业务系统的数据库耗费一定的性能资源来查找所要同步的数据。而为了不影响业务系统的正常运行,上述数据同步操作会按照较长的周期执行,如一天进行一次数据同步,并且,数据同步操作的执行时间通常也会选择业务系统比较空闲的时段,比如晚上。但是,随着大数据时代的到来,很多场景中均要求数据可以频繁地、甚至实时地被同步,以便通过对实时同步数据的分析和处理,实现随时地、准确地对该业务系统中业务的分析以及预测。而由于每次从业务系统的数据库同步数据到业务方的另一数据库,都需要业务系统的数据库耗费一定的性能资源来查找所要同步的数据,所以,在实现实时数据同步时就需要业务系统的数据库耗费资源来进行查找操作。而业务系统的数据库频繁地执行查找操作,业务系统数据库的性能就会降低,则必然会导致该业务系统的数据库对业务系统运行过程所产生的数据的处理能力受到影响,进而会影响到该业务系统的正常运行。基于此,为了解决在数据库实时同步时业务系本文档来自技高网
...

【技术保护点】
1.一种数据库的数据同步方法,其特征在于,包括:响应于数据同步的触发指令,从第一数据库中读取未同步过的日志信息;对所述日志信息进行解析得到目标字符串;按照所述日志信息的格式,将所述目标字符串转换为目标数据信息;将所述目标数据信息同步到第二数据库。

【技术特征摘要】
1.一种数据库的数据同步方法,其特征在于,包括:响应于数据同步的触发指令,从第一数据库中读取未同步过的日志信息;对所述日志信息进行解析得到目标字符串;按照所述日志信息的格式,将所述目标字符串转换为目标数据信息;将所述目标数据信息同步到第二数据库。2.根据权利要求1所述的方法,其特征在于,所述对所述日志信息进行解析得到目标字符串,包括:若所述日志信息对应的数据操作为插入操作,从所述日志信息中查找定长字符串和/或变长字符串;将所述定长字符串和/或所述变长字符串确定为所述目标字符串。3.根据权利要求1所述的方法,其特征在于,所述对所述日志信息进行解析得到目标字符串,包括:若所述日志信息对应的数据操作为更新操作,从所述日志信息中查找所述更新操作对应的更新字符串;获取所述更新操作之前的初始数据信息对应的初始字符串;以所述更新字符串对所述初始字符串进行更新,得到所述目标字符串。4.根据权利要求3所述的方法,其特征在于,所述获取所述更新操作之前的初始数据信息对应的初始字符串,包括:从所述日志信息中查找定长主键和/或变长主键;根据所述定长主键和/或变长主键,在所述第二数据库中查找所述初始数据信息;将所述初始数据信息转换成所述初始字符串。5.根据权利要求1至4任意一项所述的方法,其特征在于,所述第一数据库为SQLServer数据库。6.一种数据库的数据同步装置,其特征在于,包括:读取单元,用于响应于数据同步的触发指令,从第一数据库中读取未同步过的日志信息;解析单元,用于对所述日志信息进行解析得到...

【专利技术属性】
技术研发人员:吴永奎
申请(专利权)人:沈阳东软医疗系统有限公司
类型:发明
国别省市:辽宁,21

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

1