[发明专利]数据同步方法、数据同步装置、电子设备及存储介质有效
申请号: | 202010382046.X | 申请日: | 2020-05-08 |
公开(公告)号: | CN111651519B | 公开(公告)日: | 2023-04-25 |
发明(设计)人: | 周俊;张延成;郑浩华;吉聪睿 | 申请(专利权)人: | 携程计算机技术(上海)有限公司 |
主分类号: | G06F16/27 | 分类号: | G06F16/27;G06F16/23 |
代理公司: | 上海弼兴律师事务所 31283 | 代理人: | 薛琦;秦晶晶 |
地址: | 200335 上海市*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据 同步 方法 装置 电子设备 存储 介质 | ||
本发明公开了一种数据同步方法、数据同步装置、电子设备及存储介质,该方法包括:从源数据库的一张数据表中获取变化和新增的数据,并从该数据表的索引块中获取全量主键字段数据;将全量主键字段数据以及变化和新增的数据均同步至目标数据库,分别得到主键文件和第一增量文件;删除第一历史文件中的第二增量文件,得到第二历史文件;合并第一增量文件与第二历史文件,得到临时文件;等值联合主键文件与临时文件,得到全量文件。本发明通过全量方法同步一张数据表的索引块中的全量主键字段数据,保证了上下游系统数据库中数据量一致,同时用增量方法同步源数据库的该数据表中变化和新增的数据,减少了对上游系统性能的影响,提高了数据的时效性。
技术领域
本发明涉及数据处理技术领域,特别涉及一种数据同步方法、数据同步装置、电子设备及存储介质。
背景技术
目前,数据库的上游有数据删除时,一般会使用全量同步数据方法,保持上下游数据量一致,但是如果数据量变大,会影响上游系统的性能,同时数据的时效性也不能保证;另外一种方法是增量数据同步方法,用增量数据与前一天的全量数据做合并得到今当天的数据,减少了对上线系统的影响和提高了时效性,但是会出现下游数据比上游数据多的现象,不能保证上下游数据量一致。
发明内容
本发明要解决的技术问题是为了克服现有技术中使用全量同步或者增量同步方法时,会影响上游系统性能、降低数据时效性以及上下游数据量不一致的缺陷,提供一种数据同步方法、数据同步装置、电子设备及存储介质。
本发明是通过下述技术方案来解决上述技术问题:
本发明第一方面提供了一种数据同步方法,包括以下步骤:
从源数据库的一张数据表中获取变化和新增的数据,并从所述数据表的索引块中获取全量主键字段数据;
将所述全量主键字段数据同步至目标数据库,得到主键文件,并将所述变化和新增的数据同步至所述目标数据库,得到第一增量文件;
删除第一历史文件中的第二增量文件,得到第二历史文件,所述第一历史文件为与当前时间最接近的历史数据文件,所述第二增量文件为所述第一历史文件中变化和新增的数据文件;
合并所述第一增量文件与所述第二历史文件,得到临时文件;
等值联合所述主键文件与所述临时文件,得到全量文件。
较佳地,所述从源数据库的一张数据表中获取变化和新增的数据,并从所述数据表的索引块中获取全量主键字段数据的步骤包括:
根据时间戳字段从所述源数据库的一张数据表中抽取变化和新增的数据,并直接从所述数据表的索引块中读取全量主键字段数据。
较佳地,所述将所述全量主键字段数据同步至目标数据库,得到主键文件,并将所述变化和新增的数据同步至所述目标数据库,得到第一增量文件的步骤包括:
用全量方法同步所述主键字段数据,得到所述主键文件,并用增量方法同步所述变化和新增的数据,得到所述第一增量文件。
较佳地,在预设时间段内同时执行从所述源数据库的一张数据表中获取变化和新增的数据以及从所述数据表的索引块中获取全量主键字段数据的操作;
和/或,
所述第一历史文件为前一天文件,所述全量文件为当天全量文件。
本发明第二方面提供了一种数据同步装置,包括获取模块、同步模块、删除模块、合并模块和等值联合模块;
所述获取模块用于从源数据库的一张数据表中获取变化和新增的数据,并从所述数据表的索引块中获取全量主键字段数据;
所述同步模块用于将所述全量主键字段数据同步至目标数据库,得到主键文件,并将所述变化和新增的数据同步至所述目标数据库,得到第一增量文件;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于携程计算机技术(上海)有限公司,未经携程计算机技术(上海)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010382046.X/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置