数据校验方法、装置、计算机设备和存储介质制造方法及图纸

技术编号:26342525 阅读:23 留言:0更新日期:2020-11-13 20:34
本申请涉及数据存储与日志领域,具体一种数据校验方法、装置、计算机设备和存储介质。方法获取数据校验请求,查找数据校验请求对应源库以及目的库,并查找源库的操作记录日志,源库内的待校验数据进行校验获得第一校验结果,将第一校验结果保存至源库内的第一对比临时数据集合,并更新操作记录日志。同时通过预设钩子函数对目的库内的复制结果数据进行校验获得第二校验结果。通过对比第一校验结果与第二校验结果来保证主从之间数据复制的一致性。基于本申请,用户可以随时对数据复制发起一致性校验,判断源库与目的库内的主从数据是否一致。

【技术实现步骤摘要】
数据校验方法、装置、计算机设备和存储介质
本申请涉及计算机
,特别是涉及一种数据校验方法、装置、计算机设备和存储介质。
技术介绍
随着计算机技术与数据库技术的发展,出现了MongoDB数据库技术,MongoDB是一个基于分布式文件存储数据库。旨在为WEB(WorldWideWeb,全球广域网)应用提供可扩展的高性能数据存储解决方案。它支持的数据结构非常松散,是类似json的bson格式,因此可以存储比较复杂的数据类型。MongoDB最大的特点是它支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。目前对于MongoDB数据库内的数据复制,一般通过操作记录日志来进行,复制集的任何数据变更都会在数据库内的主节点的相应集合下记操作记录日志,从属节点从主节点持续拉取操作记录日志并在本地回放,实现主从节点的数据实时同步。然而,目前的操作记录日志并不能完全保证数据复制的一致性,如用户不小心在复制目标库的某个文档中加入了一个字段,这个时候虽然数据复制仍然本文档来自技高网...

【技术保护点】
1.一种数据校验方法,其特征在于,所述方法包括:/n获取数据校验请求,查找所述数据校验请求对应源库以及目的库,并查找所述源库的操作记录日志,所述数据校验请求用于对所述源库与所述目的库主从之间数据复制的一致性进行校验;/n获取所述源库内待校验数据对应的第一校验结果,将所述第一校验结果保存至所述源库内的第一对比临时数据集合,并更新所述操作记录日志;/n根据更新后的所述操作记录日志同步在所述目的库内的第二对比临时数据集合中插入所述第一校验结果,通过预设钩子函数对所述目的库中与所述待校验数据对应的复制结果数据进行数据校验,获取第二校验结果,将所述第二校验结果保存至所述第二对比临时数据集合;/n对比所述...

【技术特征摘要】
1.一种数据校验方法,其特征在于,所述方法包括:
获取数据校验请求,查找所述数据校验请求对应源库以及目的库,并查找所述源库的操作记录日志,所述数据校验请求用于对所述源库与所述目的库主从之间数据复制的一致性进行校验;
获取所述源库内待校验数据对应的第一校验结果,将所述第一校验结果保存至所述源库内的第一对比临时数据集合,并更新所述操作记录日志;
根据更新后的所述操作记录日志同步在所述目的库内的第二对比临时数据集合中插入所述第一校验结果,通过预设钩子函数对所述目的库中与所述待校验数据对应的复制结果数据进行数据校验,获取第二校验结果,将所述第二校验结果保存至所述第二对比临时数据集合;
对比所述第二对比临时数据集合内的所述第一校验结果与所述第二校验结果,获取数据校验结果。


2.根据权利要求1所述的方法,其特征在于,所述获取所述源库内待校验数据对应的第一校验结果,将所述第一校验结果保存至所述源库内的第一对比临时数据集合,并更新所述操作记录日志之前,还包括:
在数据校验请求对应的源库创建第一对比临时数据集合;
通过所述源库的操作记录日志在目的库创建第二对比临时数据集合。


3.根据权利要求2所述的方法,其特征在于,所述获取所述源库内待校验数据对应的第一校验结果,将所述第一校验结果保存至所述源库内的第一对比临时数据集合,并更新所述操作记录日志之前,还包括:
删除第一对比临时数据集合内的历史校验结果;
通过所述源库的操作记录日志,在目的库中删除所述第二对比临时数据集合内的历史校验结果。


4.根据权利要求1所述的方法,其特征在于,所述获取所述源库内待校验数据对应的第一校验结果,将所述第一校验结果保存至所述源库内的第一对比临时数据集合,并更新所述操作记录日志之前,还包括:
查找所述待校验数据中各数据表的主键;
根据所述主键将所述数据表拆分为数据块,得到数据块格式的所述待校验数据。


5.根据权利要求4所述的方法,其特征在于,所述获取所述源库内待校验数据对应的第一校验结果,将所述第一校验结果保存至所述源库内的第一对比临时数据集合,并更新所述操作记录日志包括:
通过CRC校验,依次计算所述待校验数据内单个数据块的第一校验结果,将第一校验结果保存至所述源库内的第一对比临时数据集合,并更新所述操作记录日志;
所述根据更新后的所述操作记录日志同步在所述目的库内的第二对比临时数据集合中插入所述第一校验结果,通过预设钩子函数对所述目的库中与所述待校验数据对应的复制结果数据进行数据校验,获取第二校验结果,将所述第二校验结果保存至所述第二对比临时数据集合包括:
根据更新后的所述...

【专利技术属性】
技术研发人员:吴双桥
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:广东;44

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

1