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

技术编号:18138689 阅读:51 留言:0更新日期:2018-06-06 11:59
本发明专利技术提供一种全量数据的同步方法及装置。所述方法包括:读取源数据库的数据文件,并解析出所述数据文件的数据字典、数据库对象和事务数据;通过交易文件的形式发送所述数据字典与所述数据库对象构成的数据框架到目标数据库的数据接收端;通过交易文件的形式发送所述事务数据发送到数据接收端;所述数据接收端将接收到的所述数据框架和事务数据按顺序装载到目标数据库中,实现源数据库和目标数据库的同步。利用本发明专利技术可提升数据库的同步效率,减少数据库的负载,降低数据库的资源占用率。

【技术实现步骤摘要】
一种全量数据的同步方法及装置
本专利技术涉及数据库
,具体涉及一种全量数据的同步方法及装置。
技术介绍
数据库是应用业务系统中最核心的组成部分,数据库的稳定以及业务的连续性是应用业务系统中最关注的问题。在许多数据库应用场景中(如双活、异地容灾等),通常需两个或两个以上数据库中的数据保持同步。现今通常将原数据库中的全量数据通过第三方数据容器转移到目标数据库。例如,可将原数据库中的数据拷贝到磁盘,再通过磁盘拷贝至目标数据库中,也可采用调用SQL方式进行数据传输,但这些方法数据同步速度慢,数据库的负载比较重,无法快速实现原数据库和目标数据库数据的实时同步,并且在数据同步过程中还会影响线上数据库的正常运行。因此,如何提出一种方法,能够提高源数据库和目标数据库数据实时同步的效率,成为亟待解决的问题。
技术实现思路
针对现有技术中的缺陷,本专利技术实施例提供了一种全量数据的同步方法及装置。第一方面,本专利技术实施例提供一种全量数据的同步方法,包括:读取源数据库的数据文件,并解析出所述数据文件的数据字典、数据库对象和事务数据;通过交易文件的形式发送所述数据字典与所述数据库对象构成的数据框架到目标数据库的数据接收端;通过交易文件的形式发送所述事务数据发送到数据接收端;所述数据接收端将接收到的所述数据框架和事务数据按顺序装载到目标数据库中,实现所述源数据库和所述目标数据库的同步。第二方面,本专利技术实施例提供一种全量数据的同步装置,包括:读取文件模块,用于读取源数据库的数据文件,并解析出所述数据文件的数据字典、数据库对象和事务数据;发送数据框架模块,用于通过交易文件的形式发送所述数据字典与所述数据库对象构成的数据框架到目标数据库的数据接收端;发送事务数据模块,用于通过交易文件的形式发送所述事务数据发送到数据接收端;加载文件模块,用于所述数据接收端将接收到的所述数据框架和事务数据按顺序装载到目标数据库中,实现所述源数据库和所述目标数据库的同步。第三方面,本专利技术实施例还提供了一种计算机设备,包括存储器和处理器,所述处理器和所述存储器通过总线完成相互间的通信;所述存储器存储有可被所述处理器执行的程序指令,所述处理器调用所述程序指令能够执行如下方法:读取源数据库的数据文件,并解析出所述数据文件的数据字典、数据库对象和事务数据;通过交易文件的形式发送所述数据字典与所述数据库对象构成的数据框架到目标数据库的数据接收端;通过交易文件的形式发送所述事务数据发送到数据接收端;所述数据接收端将接收到的所述数据框架和事务数据按顺序装载到目标数据库中,实现所述源数据库和所述目标数据库的同步。第四方面,本专利技术实施例提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时用于存储如前所述的计算机程序的方法。本专利技术实施例提供的全量数据同步方法及装置,通过将源数据库中解析出的数据框架先发送到目标数据库,再将装载在数据框架中的事务数据发送到目标数据库,实现源数据库和目标数据库的实时同步,不需要直接调用SQL语句来实现数据库的同步,利用本专利技术提升了数据库同步效率,减少数据库负载,降低数据库的资源占用率。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术实施例提供的全量数据同步方法的流程示意图;图2为本专利技术实施例提供的全量数据数据导出方法的流程示意图;图3为本专利技术实施例提供的全量数据事务数据导出方法的流程示意图;图4为本专利技术又一实施例提供的全量数据同步的方法流程示意图;图5为本专利技术实施例提供的全量数据同步装置的结构示意图;图6为本专利技术实施例提供的计算机设备的结构框图。具体实施方式为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。图1为本专利技术实施例提供的全量数据同步方法的流程示意图,如图1所示,所述方法包括:S101、读取源数据库的数据文件,并解析出所述数据文件的数据字典、数据库对象和事务数据;S102、通过交易文件的形式发送所述数据字典与所述数据库对象构成的数据框架到目标数据库的数据接收端;S103、通过交易文件的形式发送所述事务数据发送到数据接收端;S104、所述数据接收端将接收到的所述数据框架和事务数据按顺序装载到目标数据库中,实现所述源数据库和所述目标数据库的同步。具体地,将源数据库中的数据文件同步到目标数据库中,本专利技术实施例主要是对全量数据进行同步,首先将源数据库中数据文件的数据结构导入到目标数据库中,再将源数据库中的事务数据逐条或批量导入到目标数据库中,完成源数据库和目标数据库的数据文件的同步。首先,读取源数据库的数据文件,并解析出所述数据文件的数据字典、数据库对象和事务数据;然后,通过交易文件的形式发送所述数据字典与所述数据库对象构成的数据框架到目标数据库的数据接收端;例如,数据库中的表有一个树状的结构,将先将树状结构以交易文件的形式发送的目标端;再通过交易文件的形式发送所述事务数据发送到数据接收端;例如,在将树状结构发送到目标端后,再将事务数据发送到目标端;数据接收端将接收到的所述数据框架和事务数据按顺序装载到目标数据库中,即先将数据框架装载在目标数据库中,再将事务数据填充到数据框架中,实现所述源数据库和所述目标数据库的同步。需要说明的是,S102、S103可按顺序执行,也可同时执行,在本专利技术实施例中不做具体限定。在上述发送和接收的过程中,通过无线网络进行传输,可以用WAN、LAN等。本专利技术实施例提供的全量数据同步方法,通过将源数据库中解析出的数据框架先发送到目标数据库,再将装载在数据框架中的事务数据发送到目标数据库,实现源数据库和目标数据库的实时同步,不需要直接调用SQL语句来实现数据库的同步,利用本专利技术提升了数据库同步效率,减少数据库负载,降低数据库的资源占用率。可选地,所述交易文件形式为数据转换过程中的一种内部数据格式,具体为:xf1/xdt数据形式。具体地,将源数据库中的数据文件解析出数据字典、数据库对象和事务数据,将所述数据字典、数据库对象和事务数据都以交易文件形式存储和传输,本专利技术实施例可用xf1/xdt的数据格式。需要说明的是,本专利技术实施例提供的xf1/xdt数据格式不做具体限定,也可选用其他的数据形式。可选地,所述读取源数据库的数据文件,并解析出所述数据文件的数据字典、数据库对象和事务数据,具体为:采用直接路径导出方式,读取所述源数据库的数据文件;通过查询系统表得到所述数据字典,所述数据字典为创建对象的SQL语句;通过查询所述系统表得到所述数据库对象,所述数据库对象至少包括:表、索引、视图、触发器;通过直接路径导出方式,将所述事务数据导出。图2为本专利技术实施例提供的全量数据导出方法的流程示意图,如图2所示。采用直接路径导出的方式,读取所述源本文档来自技高网...
一种全量数据的同步方法及装置

【技术保护点】
一种全量数据的同步方法,其特征在于,包括:读取源数据库的数据文件,并解析出所述数据文件的数据字典、数据库对象和事务数据;通过交易文件的形式发送所述数据字典与所述数据库对象构成的数据框架到目标数据库的数据接收端;通过交易文件的形式发送所述事务数据发送到所述数据接收端;所述数据接收端将接收到的所述数据框架和事务数据按顺序装载到目标数据库中,实现所述源数据库和所述目标数据库的同步。

【技术特征摘要】
1.一种全量数据的同步方法,其特征在于,包括:读取源数据库的数据文件,并解析出所述数据文件的数据字典、数据库对象和事务数据;通过交易文件的形式发送所述数据字典与所述数据库对象构成的数据框架到目标数据库的数据接收端;通过交易文件的形式发送所述事务数据发送到所述数据接收端;所述数据接收端将接收到的所述数据框架和事务数据按顺序装载到目标数据库中,实现所述源数据库和所述目标数据库的同步。2.根据权利要求1所述的方法,其特征在于,所述交易文件形式为数据转换过程中的一种内部数据格式,具体为:xf1/xdt数据形式。3.根据权利要求1所述的方法,其特征在于,所述读取源数据库的数据文件,并解析出所述数据文件的数据字典、数据库对象和事务数据,具体为:采用直接路径导出方式,读取所述源数据库的数据文件;根据读取的数据文件,通过查询系统表得到所述数据字典,所述数据字典为创建对象的SQL语句;根据读取的数据文件,通过查询所述系统表得到所述数据库对象,所述数据库对象至少包括:表、索引、视图、触发器;通过直接路径导出方式,从读取的数据文件中将所述事务数据导出。4.根据权利要求3所述的方法,其特征在于,所述通过直接路径导出方式,将所述事务数据导出,具体为:解析所述事务数据的数据段的起始数据块,得到数据块簇信息;根据所述数据块簇信息,逐块解析出所述数据块中的事务数据并导出。5.根据权利要求1所述的方法,其特征在于,所述数据接收端将接收到的所述数据框架和事务数据按顺序装载到目标数据库中,实现所述源数据库和所述目标数据库的同步,具体为:接收所述源数据库以交易文件形式发送的所述数据框架和所述事务数据;所接收到的交易文件存储在磁盘中,将所述磁盘中的交易文件解析为SQL语句,所述数据框...

【专利技术属性】
技术研发人员:白崇东李远卓刘玉李希民刘春生梁永杰李晓远
申请(专利权)人:农信银资金清算中心有限责任公司
类型:发明
国别省市:北京,11

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

1