数据库增量数据同步备份方法及系统与流程

文档序号:21363003发布日期:2020-07-04 04:37阅读:227来源:国知局
数据库增量数据同步备份方法及系统与流程

本发明涉及数据同步备份领域,尤其涉及一种数据库增量数据同步备份方法及系统。



背景技术:

随着数据库技术的发展,越来越多的业务系统采用数据库对数据进行存储和管理。在业务系统运行的过程中,所产生的数据被记录在业务系统的数据库中。而为了便于业务方对数据进行分析和处理,业务系统数据库的数据需要同步到业务方的其他数据库,以形成业务系统中的数据的备份。在现有技术中,每一次需要从业务系统的数据库同步数据到另一数据库时,业务系统的数据库都需要对所要同步的数据进行查找。但是,对于一些要求数据同步频繁的场景,尤其是要求数据同步的场景,过于频繁的数据同步会导致业务系统的数据库面对大量的数据查找任务,从而影响到业务系统的数据库对业务系统运行过程所产生的数据处理任务的处理能力,使得业务系统的正常运行受到影响。

现有技术中,国外大多数数据库厂商提供了数据复制的功能,而且一般都支持异构数据库间的复制,如mssqlserver、oracle、sybase等,也开发了能作为数据导入导出工具的产品,如sqlserver2000的dts。有一些软件商开发的复制中间件应用于数据复制领域,如比较知名的有peerdirect公司的pdre、synchrologic公司的synckit、syware公司的datasync等。这些方法的优点在于它们独立于数据库系统本身,能够解决各种异构问题;能够适应主从复制和同步复制;能够提供丰富的api,可扩展性好。增量同步系统基于成熟的关系数据模型和标准接口,能以极少的系统开支实现秒级数据同步,可广泛应用于应急系统、容灾备份、负载均衡、数据移植、联机维护、多业务中心等业务领域。

以金融系统而言,现如今每目交易量普遍达到百万级,数据增量可以达到百万字节甚s是数十亿字节,传统的单一数据可难以满足这类系统的实际需要。现有技术中,在原数据库进行数据同步时,采用数据分片技术通过分区键进行区分,将不同分为的数据存储s不同的实体数据库中,多个实体数据库作为一个整体再向外提供数据访问服务。但是上述现有技术在实现过程中需要停止联机服务,这会严重影响正常业务的进行,带来巨大的损失。

因此,如何不停止联机服务进行数据同步,是本领域技术人员目前需要解决的技术问题。公开号“cn103927313a”、名称为“企业信息系统数据同步核查机制”的专利文献公开了一种自动核查系统,通过对原始记录进行标记来实施数据同步以及比对核定数据同步的信息一致性。该方法破坏了原始数据的固有结构,对应用系统的插入、更新操作提出了额外的工作要求。

为解决上述问题,本发明提供了一种实现增量同步数据的方法及装置,能够实现数据由关系型数据库按时间筛选增量同步,同时有效减平台的负担,增强用户体验。



技术实现要素:

针对现有技术上存在的不足,本发明提供了一种数据库增量数据同步备份方法及系统,能够避免业务系统的数据库面对数据同步时产生的大量数据查找任务,使得同步任务不会影响到业务系统的数据,从而在业务系统的正常运行不受影响的情况下实现数据库的实时数据同步。

根据本发明的一方面,提供了一种数据库增量数据同步备份方法,所述方法包括:步骤1)将关系型数据库保存的数据按照时间顺序分各个时间段分别导出对应的各个数据文件;步骤2)确定各个时间段中出现数据内容增量的时间段以作为目标时间段,将所述目标时间段对应的数据文件上传到同步系统中;步骤3)使用同步系统读取所述上传的数据文件的数据,对数据文件执行数据重复性校验和数据规范性校验,将通过校验的数据作为增量数据导入到目标数据库中,完成所述关系型数据库的增量数据到所述目标数据库的同步备份;其中,导出的数据文件为json结构的文件,导出的数据文件中的数据被封装成key-value结构的形式储存在json结构的文件中,在key-value结构中,key是对应目标数据库中的字段,而value则对应目标数据库中字段的值。

更具体地,在所述数据库增量数据同步备份方法中:步骤2)还包括,在同步系统接收到上传的数据文件后,检测上传的数据文件的命名格式是否符合同步系统上传文件的格式要求,符合,则执行步骤3),不符合,,则同步备份结束。

更具体地,在所述数据库增量数据同步备份方法中:在步骤3)中,对数据文件执行数据重复性校验包括:根据数据文件的id查询云代码知识库中是否已经包含所述id的数据记录,如果包含,则不对数据文件进行基于云代码知识库的数据读取,并记录所述id作为忽略跳过数据的唯一标识以便于后续需要再次同步备份数据时基于所述id再次执行增量数据同步备份操作,如果不包含,则重复性校验通过。

更具体地,在所述数据库增量数据同步备份方法中:在步骤3)中,对数据文件执行数据规范性校验包括:将云代码知识库的字段与json结构的文件的key一一对应校验,如果在云代码知识库中与key对应的字段的value缺失,则认为校验失败,排除云代码知识库中与key对应的字段,否则,认为数据规范性校验通过。

更具体地,在所述数据库增量数据同步备份方法中:在步骤3)中,当出现value缺失或同步系统异常时,使用spring企业级开源框架进行云代码知识库的控制以实现异常数据回滚和正常数据提交操作。

根据本发明的另一方面,还提供了一种数据库增量数据同步备份装置,所述装置包括:文件导出模块,用于将关系型数据库保存的数据按照时间顺序分各个时间段分别导出对应的各个数据文件;文件上传模块,用于确定各个时间段中出现数据内容增量的时间段以作为目标时间段,将所述目标时间段对应的数据文件上传到同步系统中;同步备份模块,用于使用同步系统读取所述上传的数据文件的数据,对数据文件执行数据重复性校验和数据规范性校验,将通过校验的数据作为增量数据导入到目标数据库中,完成所述关系型数据库的增量数据到所述目标数据库的同步备份;其中,导出的数据文件为json结构的文件,导出的数据文件中的数据被封装成key-value结构的形式储存在json结构的文件中,在key-value结构中,key是对应目标数据库中的字段,而value则对应目标数据库中字段的值。

更具体地,在所述数据库增量数据同步备份装置中:在所述文件上传模块中,在同步系统接收到上传的数据文件后,还用于检测上传的数据文件的命名格式是否符合同步系统上传文件的格式要求,符合,则启动所述同步备份模块的同步备份操作,不符合,则同步备份结束。

更具体地,在所述数据库增量数据同步备份装置中:在所述同步备份模块中,对数据文件执行数据重复性校验包括:根据数据文件的id查询云代码知识库中是否已经包含所述id的数据记录,如果包含,则不对数据文件进行基于云代码知识库的数据读取,并记录所述id作为忽略跳过数据的唯一标识以便于后续需要再次同步备份数据时基于所述id再次执行增量数据同步备份操作,如果不包含,则重复性校验通过。

更具体地,在所述数据库增量数据同步备份装置中:在所述同步备份模块中,对数据文件执行数据规范性校验包括:将云代码知识库的字段与json结构的文件的key一一对应校验,如果在云代码知识库中与key对应的字段的value缺失,则认为校验失败,排除云代码知识库中与key对应的字段,否则,认为数据规范性校验通过。

更具体地,在所述数据库增量数据同步备份装置中:在所述同步备份模块中,当出现value缺失或同步系统异常时,使用spring企业级开源框架进行云代码知识库的控制以实现异常数据回滚和正常数据提交操作。

附图说明

以下将结合附图对本发明的实施方案进行描述,其中:

图1为根据本发明实施方案示出的数据库增量数据同步备份方法的步骤流程图。

图2为根据本发明实施方案示出的数据库增量数据同步备份装置的结构方框图。

图3为根据本发明实施方案示出的数据库增量数据同步备份方法的步骤3)的详解图。

具体实施方式

下面将参照附图对本发明的数据库增量数据同步备份方法及系统的实施方案进行详细说明。

为了克服上述不足,本发明公开了一种数据库增量数据同步备份方法及系统,应用于关系型数据库到其他储存组件中的数据导入,包括:将数据库保存的数据进行按时间分段导出数据文件;确定内容增量的数据时间段上传文件到系统中;读取增量数据文件同步更新插入增量数据。

图1为根据本发明实施方案示出的数据库增量数据同步备份方法的步骤流程图,所述方法包括:

步骤1)将关系型数据库保存的数据按照时间顺序分各个时间段分别导出对应的各个数据文件;

步骤2)确定各个时间段中出现数据内容增量的时间段以作为目标时间段,将所述目标时间段对应的数据文件上传到同步系统中;

步骤3)使用同步系统读取所述上传的数据文件的数据,对数据文件执行数据重复性校验和数据规范性校验,将通过校验的数据作为增量数据导入到目标数据库中,完成所述关系型数据库的增量数据到所述目标数据库的同步备份;

其中,导出的数据文件为json结构的文件,导出的数据文件中的数据被封装成key-value结构的形式储存在json结构的文件中,在key-value结构中,key是对应目标数据库中的字段,而value则对应目标数据库中字段的值。

接着,继续对本发明的数据库增量数据同步备份方法的具体流程进行进一步的说明。

所述数据库增量数据同步备份方法中:

步骤2)还包括,在同步系统接收到上传的数据文件后,检测上传的数据文件的命名格式是否符合同步系统上传文件的格式要求,符合,则执行步骤3),不符合,则同步备份结束。

所述数据库增量数据同步备份方法中:

在步骤3)中,对数据文件执行数据重复性校验包括:根据数据文件的id查询云代码知识库中是否已经包含所述id的数据记录,如果包含,则不对数据文件进行基于云代码知识库的数据读取,并记录所述id作为忽略跳过数据的唯一标识以便于后续需要再次同步备份数据时基于所述id再次执行增量数据同步备份操作,如果不包含,则重复性校验通过。

所述数据库增量数据同步备份方法中:

在步骤3)中,对数据文件执行数据规范性校验包括:将云代码知识库的字段与json结构的文件的key一一对应校验,如果在云代码知识库中与key对应的字段的value缺失,则认为校验失败,排除云代码知识库中与key对应的字段,否则,认为数据规范性校验通过。

所述数据库增量数据同步备份方法中:

在步骤3)中,当出现value缺失或同步系统异常时,使用spring企业级开源框架进行云代码知识库的控制以实现异常数据回滚和正常数据提交操作。

图2为根据本发明实施方案示出的数据库增量数据同步备份装置的结构方框图,所述装置包括:

文件导出模块,用于将关系型数据库保存的数据按照时间顺序分各个时间段分别导出对应的各个数据文件;

文件上传模块,用于确定各个时间段中出现数据内容增量的时间段以作为目标时间段,将所述目标时间段对应的数据文件上传到同步系统中;

同步备份模块,用于使用同步系统读取所述上传的数据文件的数据,对数据文件执行数据重复性校验和数据规范性校验,将通过校验的数据作为增量数据导入到目标数据库中,完成所述关系型数据库的增量数据到所述目标数据库的同步备份;

其中,导出的数据文件为json结构的文件,导出的数据文件中的数据被封装成key-value结构的形式储存在json结构的文件中,在key-value结构中,key是对应目标数据库中的字段,而value则对应目标数据库中字段的值。

接着,继续对本发明的数据库增量数据同步备份装置的具体结构进行进一步的说明。

所述数据库增量数据同步备份装置中:

在所述文件上传模块中,在同步系统接收到上传的数据文件后,还用于检测上传的数据文件的命名格式是否符合同步系统上传文件的格式要求,符合,则启动所述同步备份模块的同步备份操作,不符合,则同步备份结束。

所述数据库增量数据同步备份装置中:

在所述同步备份模块中,对数据文件执行数据重复性校验包括:根据数据文件的id查询云代码知识库中是否已经包含所述id的数据记录,如果包含,则不对数据文件进行基于云代码知识库的数据读取,并记录所述id作为忽略跳过数据的唯一标识以便于后续需要再次同步备份数据时基于所述id再次执行增量数据同步备份操作,如果不包含,则重复性校验通过。

所述数据库增量数据同步备份装置中:

在所述同步备份模块中,对数据文件执行数据规范性校验包括:将云代码知识库的字段与json结构的文件的key一一对应校验,如果在云代码知识库中与key对应的字段的value缺失,则认为校验失败,排除云代码知识库中与key对应的字段,否则,认为数据规范性校验通过。

所述数据库增量数据同步备份装置中:

在所述同步备份模块中,当出现value缺失或同步系统异常时,使用spring企业级开源框架进行云代码知识库的控制以实现异常数据回滚和正常数据提交操作。

图3为根据本发明实施方案示出的数据库增量数据同步备份方法的步骤3)的详解图。

另外,使用json作为数据的传输载体,它具有良好的可读和便于快速编写的特性,可在不同平台之间进行数据交换。json采用兼容性很高的、完全独立于语言文本格式,易于读写,格式都是压缩的,占用带宽小,同时也具备类似于c语言的习惯(包括c,c++,c#,java,javascript,perl,python等),这些特性使json成为理想的数据交换语言,其还有一个好处就是支持异构关系型数据库和非关系型数据库,数据方便解析与传递,在数据库接口不相同的情况下也可以轻易兼容并实现数据的同步。

采用本发明的数据库增量数据同步备份方法及系统,通过按日期导出增量数据文件方式进行数据同步,可以从第一数据库中获的所要同步的数据信息,从而该数据信息就可以同步到第二数据库,因此,若以业务系统数据作为第一数据库,业务系统数据库可以不必为了向其他数据库进行数据同步而查找所要同步的数据信息,这样就避免了业务系统的数据库面对数据同步时产生的大量数据查找任务,使得频繁甚至是实时的数据同步任务不会影响到业务系统的数据库对业务系统运行过程所产生的数据处理任务的处理能力,从而在业务系统的正常运行不受影响的情况下实现云代码知识数据库的增量按日期进行数据同步。

可以理解的是,虽然本发明已以较佳实施例披露如上,然而上述实施例并非用以限定本发明。对于任何熟悉本领域的技术人员而言,在不脱离本发明技术方案范围情况下,都可利用上述揭示的技术内容对本发明技术方案做出许多可能的变动和修饰,或修改为等同变化的等效实施例。因此,凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施例所做的任何简单修改、等同变化及修饰,均仍属于本发明技术方案保护的范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1