CN111611253B - 数据校验方法、设备和存储介质 - Google Patents
数据校验方法、设备和存储介质 Download PDFInfo
- Publication number
- CN111611253B CN111611253B CN202010252727.4A CN202010252727A CN111611253B CN 111611253 B CN111611253 B CN 111611253B CN 202010252727 A CN202010252727 A CN 202010252727A CN 111611253 B CN111611253 B CN 111611253B
- Authority
- CN
- China
- Prior art keywords
- data
- copy
- source
- result
- target
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2365—Ensuring data consistency and integrity
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Computer Security & Cryptography (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种数据校验方法、设备和存储介质,包括:按照预设的同一抽取条件,分别抽取源端中需校对源数据和复制端中需校对复制数据,并存储至校对数据库进行校对,直到所有源数据和所有复制数据被抽取完后,得到校对结果;若校对结果表示有差异,对校对结果进行迭代检验,直到满足检验停止条件后,得到检验结果;若检验结果表示校对结果为真,确定源端的所有源数据与复制端的所有复制数据不一致;若检验结果表示校对结果为假,确定源端的所有源数据与复制端的所有复制数据一致。这样可以在进行数据复制的相关设备不进入停止状态或者不必将数据进行锁定的情况下,对源端的源数据和复制端的复制数据进行精准校对,提高复制效率。
Description
技术领域
本发明属于数据同步技术领域,具体涉及一种数据校验方法、设备和存储介质。
背景技术
当前信息化建设中,信息流往往以数据表等形式分散的存放在各系统的数据库中,当要进行数据集成分析时就要进行数据复制后集成到统一数据库中。但是在利用复制软件在进行数据的复制过程中,往往由于复制软件本身的缺陷或外部因素(例如:网络传输,存储介质影响)并不能100%的保证数据的正确性,影响数据的可靠性。
现有技术中,通常采用控制数据处理系统中进行数据复制的相关设备进入停止状态或者将数据进行锁定,使源端的源数据和复制端的复制数据均处与静态下,对源数据和复制数据的进行校对,以便及时发现复制过程中出现的错误数据。
但是,源端会不间断的产生源数据,复制端不间断的对源数据进行复制,这就需要处理系统中进行数据复制的相关设备需要在一个较长时间段内不停机,不间断运行,这样,如果使源端的源数据和复制端的复制数据均处与静态后,再对源数据和复制数据的进行校对,使得数据复制过程间断,从而降低了数据复制效率。
发明内容
本发明的主要目的是提供一种数据校验方法、设备和存储介质,以解决现有技术中处理推理任务的局限性较高的问题。
针对上述问题,第一方面,本发明提供了一种数据校验方法,包括:
按照预设的同一抽取条件,分别抽取源端中需校对源数据和复制端中需校对复制数据,并存储至校对数据库进行校对,直到所述源端的所有源数据和所述复制端中的所有复制数据被抽取完后,得到校对结果;
若所述校对结果表示有差异,对所述校对结果进行迭代检验,直到满足检验停止条件后,得到检验结果;
若所述检验结果表示所述校对结果为真,确定所述源端的所有源数据与所述复制端的所有复制数据不一致;
若所述检验结果表示所述校对结果为假,确定所述源端的所有源数据与所述复制端的所有复制数据一致。
进一步地,上述所述的数据校验方法中,所述对校对结果进行迭代检验,直到满足检验停止条件后,得到检验结果,包括:
将所述校对结果对应的差异数据存储至临时数据库,进行迭代检验,直到满足检验停止条件后,得到检验结果;
在每次迭代检验过程中,分别抽取源端中与所述差异数据关联的关联源数据和所述复制端中与所述差异数据关联的关联复制数据进行检验,直到遍历所述临时数据库中所有差异数据后,得到当次检验结果;
判断当次检验结果是否有差异;
若当次检验结果表示无差异,则确定校对结果为假作为所述检验结果;
若当次检验结果表示有差异,则判断当次迭代检验对应的迭代次数是否达到预设次数;
若当次迭代检验对应的迭代次数未达到预设次数,则继续抽取临时数据库中差异数据的关联源数据和差异数据的关联复制数据,进行下一次迭代检验;
若当次迭代检验对应的迭代次数达到预设次数,确定校对结果为真作为所述检验结果。
进一步地,上述所述的数据校验方法中,所述预设次数为固定值,或,所述预设次数根据源数据的产生速度和/或源数据的复制速度确定。
进一步地,上述所述的数据校验方法中,所述校对结果和所述当次检验结果均包括相等、不等、缺少复制数据和复制数据多余中的至少一种;
若所述校对结果包括所述不等、所述缺少复制数据和所述复制数据多余中的至少一种,则表示有差异;
若所述校对结果为所述相等,则表示无差异;
若所述当次检验结果包括所述不等、所述缺少复制数据和所述复制数据多余中的至少一种,则表示有差异;
若所述当次检验结果为所述相等,则表示无差异。
进一步地,上述所述的数据校验方法中,所述相等为目标源数据的主键与目标复制数据的主键相同,且所述目标源数据的数据内容与所述目标复制数据的数据内容相同;
所述不等为目标源数据的主键与目标复制数据的主键相同,所述目标源数据的数据内容与所述目标复制数据的数据内容不相同;
所述缺少复制数据为目标源数据的主键与目标复制数据的主键不相同,且只存在所述目标源数据的数据内容;
所述复制数据多余为目标源数据的主键与目标复制数据的主键不相同,且只存在所述目标复制数据的数据内容;
其中,所述目标源数据包括所述需校对源数据或所述关联源数据;所述目标复制数据包括所述需校对复制数据或所述关联复制数据。
进一步地,上述所述的数据校验方法中,所述确定所述源端的所有源数据与所述复制端的所有复制数据不一致之后,还包括:
对所述复制端进行数据修复。
进一步地,上述所述的数据校验方法中,所述对所述复制端进行数据修复,包括:
若所述当次检验结果为不等,将当前差异数据与所述源端的源数据进行主键关联,得到修复源数据,将所述目标修复源数据覆盖与所述修复源数据对应的被修复复制数据;
若所述检验结果为缺少复制数据,将当前差异数据与所述源端的源数据进行主键关联,得到所述目标修复源数据,将所述目标修复源数据插入所述复制端;
若所述检验结果为复制数据多余,向所述复制端发出删除指令,以便将多余复制数据删除。
进一步地,上述所述的数据校验方法,还包括:
将修复后的复制数据与源端的源数据进行校对,得到修复结果;
若修复结果表示修复成功,确定源端的所有源数据与复制端的所有复制数据一致;
若修复结果表示修复失败,再次对复制端进行数据修复。
本发明还提供一种存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上任一项所述方法的步骤。
本发明还提供一种数据校验设备,其包括存储器和处理器,该存储器上存储有计算机程序,所述计算机程序被处理器执行时实现如上谷任一项所述方法的步骤。
与现有技术相比,上述方案中的一个或多个实施例可以具有如下优点或有益效果:
应用本发明的数据校验方法、设备和存储介质,按照预设的同一抽取条件,分别抽取源端中需校对源数据和复制端中需校对复制数据,并存储至校对数据库进行校对,直到源端的所有源数据和复制端中的所有复制数据被抽取完后,得到校对结果,实现了数据处理系统中进行数据复制的相关设备不必进入停止状态或者不必将数据进行锁定的情况下,对源端的源数据和复制端的复制数据进行校对;并且在得到的校对结果表示有差异时,对校对结果进行迭代检验,直到满足检验停止条件后,得到检验结果;若检验结果表示校对结果为真,确定源端的所有源数据与复制端的所有复制数据不一致;若检验结果表示校对结果为假,确定源端的所有源数据与复制端的所有复制数据一致。这样,即可保证最终校对结果的准确性。采用本发明的技术方案,能够提高校对精度和数据复制效率。
本发明的其它特征和优点将在随后的说明书中阐述,并且部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例共同用于解释本发明,并不构成对本发明的限制。在附图中:
图1为本发明的数据校验方法实施例的流程图;
图2为图1的步骤102中对校对结果进行迭代检验时单次迭代检验的流程图;
图3为本发明的数据校验装置实施例的结构示意图;
图4为本发明的数据校验设备实施例的结构示意图。
具体实施方式
以下将结合附图及实施例来详细说明本发明的实施方式,借此对本发明如何应用技术手段来解决技术问题,并达成技术效果的实现过程能充分理解并据以实施。需要说明的是,只要不构成冲突,本发明中的各个实施例以及各实施例中的各个特征可以相互结合,所形成的技术方案均在本发明的保护范围之内。
为解决现有技术中存在的上述技术问题,本发明实施例提供了一种网络数据审计方法。
图1为本发明的数据校验方法实施例的流程图,如图1所示,本实施例的数据校验方法,具体包括以下步骤:
101、按照预设的同一抽取条件,分别抽取源端中需校对源数据和复制端中需校对复制数据,并存储至校对数据库进行校对,直到所述源端的所有源数据和所述复制端中的所有复制数据被抽取完后,得到校对结果;
为了防止数据处理系统中进行数据复制的相关设备进入停止状态或者将数据进行锁定,导致处理系统不能对外工作,影响数据复制效率,本实施例中,可以从源端和复制端的数据库中抽取数据并存储至校对数据库后,再进行校对。本实施例中抽取的数据可以定义为目标源数据或目标复制数据。其中,该校对数据库优选为内存。
具体地,为了保证抽取的数据一致性,需要按照预设的同一抽取条件,分别抽取源端中需校对源数据和复制端中需校对复制数据,并存储至校对数据库进行校对。例如,源端的数据库中有三个主键构成分别为KEY1、KEY2、KEY3开始为{N001,M001,9},可以对源端的数据库的主键排序后,按照如下抽取条件依次抽取需校对源数据:
KEY1=’N001’ AND KEY2=’M001’ AND KEY3>9 OR
KEY1=’N001’ AND KEY2>’M001’ OR
KEY1>’N001
同理,按照相同的抽取条件,从源端的数据库的抽取起点位置,从复制端的数据中抽取需校对复制数据。这样,在抽取完源端的需校对源数据和复制端的需校对复制数据后,将源端的需校对源数据和复制端的需校对复制数据合并存储至内存中,按照源端的目标源数据的主键进行排序。并利用内存比较函数,对源端的需校对源数据和复制端的需校对复制数据进行校对,得到当次抽取数据的中间校对结果,并检测源端的所有源数据和所述复制端中的所有复制数据被抽取完,若是将所有中间校对结果作为最终的校对结果。
例如,中间校对结果为相等、不等、缺少复制数据或复制数据多余,这样,得到校对结果包括相等、不等、缺少复制数据和复制数据多余中的至少一种。其中,相等为目标源数据的主键与目标复制数据的主键相同,且目标源数据的数据内容与目标复制数据的数据内容相同;不等为目标源数据的主键与目标复制数据的主键相同,目标源数据的数据内容与目标复制数据的数据内容不相同;缺少复制数据为目标源数据的主键与目标复制数据的主键不相同,且只存在目标源数据的数据内容;复制数据多余为目标源数据的主键与目标复制数据的主键不相同,且只存在目标复制数据的数据内容;本实施例中,目标源数据包括需校对源数据;目标复制数据包括需校对复制数据。
本实施例中,若得到的校对结果包括不等、缺少复制数据和复制数据多余中的至少一种,则表示有差异;若得到的校对结果为相等,则表示无差异;若当次检验结果包括不等、缺少复制数据和复制数据多余中的至少一种,则表示有差异;若当次检验结果为相等,则表示无差异。
需要说明的是,本实施例中,需校对复制数据和需复制数据的数目,可以依次获取一个,也可以为同时获取的多个,在同时获取多个时,可以并行执行,以便提高校对效率。
102、若校对结果表示有差异,对校对结果进行迭代检验,直到满足检验停止条件后,得到检验结果;
具体地,由于源数据仍然可能处于被复制中,才会导致存在差异数据,但实际并不是真的存在差异,因此,本实施例中,可以将校对结果对应的差异数据存储至临时数据库,并按照预设的时间间隔,进行迭代检验,直到满足检验停止条件后,得到检验结果。其中,在每次迭代检验过程中可以按照图2所述步骤执行,图2为图1的步骤102中对校对结果进行迭代检验时单次迭代检验的流程图:
如图2所示,本实施例对校对结果进行单次迭代检验可以包括如下步骤:
1021、分别抽取源端中与当前差异数据关联的关联源数据和复制端中与当前差异数据关联的关联复制数据进行检验,直到遍历临时数据库中所有差异数据后,得到当次检验结果;
例如,本实施例中可以分别将抽取的异常数据与源端的源源数据和复制端的复制数据进行主键关联,从而从源端抽取得到与差异数据关联的关联源数据,从复制端抽取到与异数据关联的关联复制数据,并对关联源数据和关联复制数据进行检验,得到中间检验结果,直到遍历临时数据库中所有差异数据后,将所有中间检验结果作为当次检验结果。
需要说明的是,对关联源数据和关联复制数据进行检验的过程与对需校对源数据和需校对复制数据进行校对的过程相似,只是将关联源数据对校对过程中的需校对源数据进行替换,将关联复制数据对校对过程中的需校对源数据进行替换,详细过程请参考上述相关记载,在此不再赘述。对应的,本实施例中的当次检验结果也可以包括相等、不等、缺少复制数据或复制数据多余。
1022、判断当次检验结果是否有差异,若是,执行步骤1023,若否,执行步骤1024;
若当次检验结果为相等,则表示无差异,执行步骤1023;若当次检验结果包括不等、缺少复制数据和复制数据多余中的至少一种,则表示有差异,执行步骤 1024。
1023、确定校对结果为假作为检验结果;
若当次检验结果表示无差异,说明校对过程中得到的差异数据是由于同步延时造成的,所以确定校对结果为假作为检验结果。
1024、判断当次迭代检验对应的迭代次数是否达到预设次数;若是,执行步骤1025,若否,执行步骤1026;
在实际应用中,数据同步过程中,延时状况可能不同,有的延时较短,有的延时较长,因此,若当次检验结果表示有差异,也不能肯定确实存在差异数据,往往需要迭代数次在进行判断,因此,本实施例中,可以判断当次迭代检验对应的迭代次数是否达到预设次数,若当次迭代检验对应的迭代次数未达到预设次数,说明延时较严重,需要继续检验,执行步骤1025;若当次迭代检验对应的迭代次数达到预设次数,说明可以忽略同步延时造成数据差异,校对过程中得到的差异数据确实为差异数据,执行步骤1026。
1025、继续抽取临时数据库中差异数据的关联源数据和差异数据的关联复制数据,进行下一次迭代检验;
若当次迭代检验对应的迭代次数未达到预设次数,则继续抽取临时数据库中差异数据,并得到对应的关联源数据和差异数据的关联复制数据,进行下一次迭代检验。
需要说明的事,每一次迭代检验后,可以将存在的差异数据再次存储至临时数据库,也可以将当次检验结果为无差异的差异数据从临时数据库删除,本实施例不做具体限制。
1026、得到校对结果为真作为检验结果。
若当次迭代检验对应的迭代次数达到预设次数,且由于当次检验结果为有差异,说明可以忽略同步延时造成数据差异,当次需要检验的差异数据确实为差异数据,所以确定校对结果为假作为检验结果。
需要说明的是,本实施例中的预设次数为固定值,优选为3次。但是,在实际应用中,由于不同数据处理系统中源数据的产生速度、源数据的复制速度是不同的,所以本实施例中,还可以监测源数据的产生速度、源数据的复制速,并根据源数据的产生速度和/或源数据的复制速度确定预设次数,例如,产生速度和/ 或源数据的复制速度较慢的情况下,需要将预设次数设置为一个较大的数值,如 5次,而产生速度和/或源数据的复制速度较快的情况下,需要将预设次数设置为一个较小的数值,如3次。这样,可以保证检验结果的准确度。
103、判断检验结果是否为真;若是,执行总部后104,若否,执行步骤105;
本实施例中,在得到检验结果后,可以进一步判断检验结果是否为真;若是,执行总部后104,若否,执行步骤105。
104、确定源端的所有源数据与复制端的所有复制数据不一致;
若检验结果表示校对结果为真,说明确实存在差异数据,确定源端的所有源数据与复制端的所有复制数据不一致。
105、确定源端的所有源数据与复制端的所有复制数据一致。
若检验结果表示校对结果为假,说明不存在差异数据,确定源端的所有源数据与复制端的所有复制数据一致。
本实施例的数据校验方法,按照预设的同一抽取条件,分别抽取源端中需校对源数据和复制端中需校对复制数据,并存储至校对数据库进行校对,直到源端的所有源数据和复制端中的所有复制数据被抽取完后,得到校对结果,实现了数据处理系统中进行数据复制的相关设备不必进入停止状态或者不必将数据进行锁定的情况下,对源端的源数据和复制端的复制数据进行校对;并且在得到的校对结果表示有差异时,对校对结果进行迭代检验,直到满足检验停止条件后,得到检验结果;若检验结果表示校对结果为真,确定源端的所有源数据与复制端的所有复制数据不一致;若检验结果表示校对结果为假,确定源端的所有源数据与复制端的所有复制数据一致。这样,即可保证最终校对结果的准确性。采用本发明的技术方案,能够提高校对精度和数据复制效率。
进一步地,上述实施例中,若得到的校对结果表示无差异,确定源端的所有源数据与复制端的所有复制数据一致。
在实际应用中,为了保证数据的准确性,若确定源端的所有源数据与复制端的所有复制数据不一致,需要对复制端进行数据修复。
具体地,若当次检验结果为不等,将当前差异数据与源端的源数据进行主键关联,得到修复源数据,将目标修复源数据覆盖与修复源数据对应的被修复复制数据;
若检验结果为缺少复制数据,将当前差异数据与源端的源数据进行主键关联,得到目标修复源数据,将目标修复源数据插入复制端;
若检验结果为复制数据多余,向复制端发出删除指令,以便将多余复制数据删除。
在一个具体实现过程中,在对复制端进行数据修复后,还需要至少执行一次以下步骤:
a、将修复后的复制数据与源端的源数据进行校对,得到修复结果;
本实施例中将修复后的复制数据与源端的源数据进行校对的过程与上述实施例中的数据校对过程一致,在此不再赘述。
b、若修复结果表示修复成功,确定源端的所有源数据与复制端的所有复制数据一致;
c、若修复结果表示修复失败,再次对复制端进行数据修复。
需要说明的是,本发明实施例的方法可以由单个设备执行,例如一台计算机或服务器等。本实施例的方法也可以应用于分布式场景下,由多台设备相互配合来完成。在这种分布式场景的情况下,这多台设备中的一台设备可以只执行本发明实施例的方法中的某一个或多个步骤,这多台设备相互之间会进行交互以完成的方法。
为解决现有技术中存在的上述技术问题,本发明实施例还提供了一种数据校验装置。
图3为本发明的数据校验装置实施例的结构示意图,如图3所示,本实施例的数据校验装置包括校对模块30、检验模块31和确定模块32。
校对模块30,用于按照预设的同一抽取条件,分别抽取源端中需校对源数据和复制端中需校对复制数据,并存储至校对数据库进行校对,直到所述源端的所有源数据和所述复制端中的所有复制数据被抽取完后,得到校对结果;
检验模块31,用于若所述校对结果表示有差异,对所述校对结果进行迭代检验,直到满足检验停止条件后,得到检验结果;
具体地,可以将所述校对结果对应的差异数据存储至临时数据库,进行迭代检验,直到满足检验停止条件后,得到检验结果;其中,在每次迭代检验过程中,分别抽取源端中与所述差异数据关联的关联源数据和所述复制端中与所述差异数据关联的关联复制数据进行检验,直到遍历所述临时数据库中所有差异数据后,得到当次检验结果;判断当次检验结果是否有差异;若当次检验结果表示无差异,则确定校对结果为假作为所述检验结果;若当次检验结果表示有差异,则判断当次迭代检验对应的迭代次数是否达到预设次数;若当次迭代检验对应的迭代次数未达到预设次数,则继续抽取临时数据库中差异数据的关联源数据和差异数据的关联复制数据,进行下一次迭代检验;若当次迭代检验对应的迭代次数达到预设次数,确定校对结果为真作为所述检验结果。
需要说明的是,本实施例中预设次数为固定值,或,预设次数根据源数据的产生速度和/或源数据的复制速度确定。
确定模块32,用于若所述检验结果表示所述校对结果为真,确定所述源端的所有源数据与所述复制端的所有复制数据不一致;若所述检验结果表示所述校对结果为假,确定所述源端的所有源数据与所述复制端的所有复制数据一致。
本实施例的数据校验装置,按照预设的同一抽取条件,分别抽取源端中需校对源数据和复制端中需校对复制数据,并存储至校对数据库进行校对,直到源端的所有源数据和复制端中的所有复制数据被抽取完后,得到校对结果,实现了数据处理系统中进行数据复制的相关设备不必进入停止状态或者不必将数据进行锁定的情况下,对源端的源数据和复制端的复制数据进行校对;并且在得到的校对结果表示有差异时,对校对结果进行迭代检验,直到满足检验停止条件后,得到检验结果;若检验结果表示校对结果为真,确定源端的所有源数据与复制端的所有复制数据不一致;若检验结果表示校对结果为假,确定源端的所有源数据与复制端的所有复制数据一致。这样,即可保证最终校对结果的准确性。采用本发明的技术方案,能够提高校对精度和数据复制效率。
进一步地,上述实施例中,所述校对结果和所述当次检验结果均包括相等、不等、缺少复制数据和复制数据多余中的至少一种;
若所述校对结果包括所述不等、所述缺少复制数据和所述复制数据多余中的至少一种,则表示有差异;
若所述校对结果为所述相等,则表示无差异;
若所述当次检验结果包括所述不等、所述缺少复制数据和所述复制数据多余中的至少一种,则表示有差异;
若所述当次检验结果为所述相等,则表示无差异。
本实施例中,所述相等为目标源数据的主键与目标复制数据的主键相同,且所述目标源数据的数据内容与所述目标复制数据的数据内容相同;
所述不等为目标源数据的主键与目标复制数据的主键相同,所述目标源数据的数据内容与所述目标复制数据的数据内容不相同;
所述缺少复制数据为目标源数据的主键与目标复制数据的主键不相同,且只存在所述目标源数据的数据内容;
所述复制数据多余为目标源数据的主键与目标复制数据的主键不相同,且只存在所述目标复制数据的数据内容;
其中,所述目标源数据包括所述需校对源数据或所述关联源数据;所述目标复制数据包括所述需校对复制数据或所述关联复制数据。
进一步地,上述实施例中,确定模块32,还用于确定所述源端的所有源数据与所述复制端的所有复制数据不一致之后,对所述复制端进行数据修复。
具体地,若所述当次检验结果为不等,将当前差异数据与所述源端的源数据进行主键关联,得到修复源数据,将所述目标修复源数据覆盖与所述修复源数据对应的被修复复制数据;
若所述检验结果为缺少复制数据,将当前差异数据与所述源端的源数据进行主键关联,得到所述目标修复源数据,将所述目标修复源数据插入所述复制端;
若所述检验结果为复制数据多余,向所述复制端发出删除指令,以便将多余复制数据删除。
进一步地,上述实施例中,确定模块32,还用于:
将修复后的复制数据与源端的源数据进行校对,得到修复结果;
若修复结果表示修复成功,确定源端的所有源数据与复制端的所有复制数据一致;
若修复结果表示修复失败,再次对复制端进行数据修复。
需要说明的是,上述实施例的装置用于实现前述实施例中相应的方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
为解决现有技术中存在的上述技术问题,本发明实施例提供了一种推理任务的处理设备。
图4为本发明的数据校验设备实施例的结构示意图,如图4所示,本发明实施例提供的网络数据审计设备包括存储器40和处理器41,该存储器40上存储有计算机程序,计算机程序被处理器41执行时实现上述方法的步骤。
为解决现有技术中存在的上述技术问题,本发明实施例提供了一种存储介质。
本发明实施例提供的存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述方法的步骤。
可以理解的是,上述各实施例中相同或相似部分可以相互参考,在一些实施例中未详细说明的内容可以参见其他实施例中相同或相似的内容。
需要说明的是,在本发明的描述中,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本发明的描述中,除非另有说明,“多个”的含义是指至少两个。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块32中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
虽然本发明所公开的实施方式如上,但所述的内容只是为了便于理解本发明而采用的实施方式,并非用以限定本发明。任何本发明所属技术领域内的技术人员,在不脱离本发明所公开的精神和范围的前提下,可以在实施的形式上及细节上作任何的修改与变化,但本发明的保护范围,仍须以所附的权利要求书所界定的范围为准。
Claims (9)
1.一种数据校验方法,其特征在于,包括:
按照预设的同一抽取条件,分别抽取源端中需校对源数据和复制端中需校对复制数据,并存储至校对数据库进行校对,直到所述源端的所有源数据和所述复制端中的所有复制数据被抽取完后,得到校对结果;
若所述校对结果表示有差异,对所述校对结果进行迭代检验,直到满足检验停止条件后,得到检验结果;
若所述检验结果表示所述校对结果为真,确定所述源端的所有源数据与所述复制端的所有复制数据不一致;
若所述检验结果表示所述校对结果为假,确定所述源端的所有源数据与所述复制端的所有复制数据一致;
所述对校对结果进行迭代检验,直到满足检验停止条件后,得到检验结果,包括:
将所述校对结果对应的差异数据存储至临时数据库,进行迭代检验,直到满足检验停止条件后,得到检验结果;
在每次迭代检验过程中,分别抽取源端中与所述差异数据关联的关联源数据和所述复制端中与所述差异数据关联的关联复制数据进行检验,直到遍历所述临时数据库中所有差异数据后,得到当次检验结果;
判断当次检验结果是否有差异;
若当次检验结果表示无差异,则确定校对结果为假作为所述检验结果;
若当次检验结果表示有差异,则判断当次迭代检验对应的迭代次数是否达到预设次数;
若当次迭代检验对应的迭代次数未达到预设次数,则继续抽取临时数据库中差异数据的关联源数据和差异数据的关联复制数据,进行下一次迭代检验;
若当次迭代检验对应的迭代次数达到预设次数,确定校对结果为真作为所述检验结果。
2.根据权利要求1所述的数据校验方法,其特征在于,所述预设次数为固定值,或,所述预设次数根据源数据的产生速度和/或源数据的复制速度确定。
3.根据权利要求1所述的数据校验方法,其特征在于,所述校对结果和所述当次检验结果均包括相等、不等、缺少复制数据和复制数据多余中的至少一种;
若所述校对结果包括所述不等、所述缺少复制数据和所述复制数据多余中的至少一种,则表示有差异;
若所述校对结果为所述相等,则表示无差异;
若所述当次检验结果包括所述不等、所述缺少复制数据和所述复制数据多余中的至少一种,则表示有差异;
若所述当次检验结果为所述相等,则表示无差异。
4.根据权利要求3所述的数据校验方法,其特征在于,所述相等为目标源数据的主键与目标复制数据的主键相同,且所述目标源数据的数据内容与所述目标复制数据的数据内容相同;
所述不等为目标源数据的主键与目标复制数据的主键相同,所述目标源数据的数据内容与所述目标复制数据的数据内容不相同;
所述缺少复制数据为目标源数据的主键与目标复制数据的主键不相同,且只存在所述目标源数据的数据内容;
所述复制数据多余为目标源数据的主键与目标复制数据的主键不相同,且只存在所述目标复制数据的数据内容;
其中,所述目标源数据包括所述需校对源数据或所述关联源数据;所述目标复制数据包括所述需校对复制数据或所述关联复制数据。
5.根据权利要求4所述的数据校验方法,其特征在于,所述确定所述源端的所有源数据与所述复制端的所有复制数据不一致之后,还包括:
对所述复制端进行数据修复。
6.根据权利要求5所述的数据校验方法,其特征在于,所述对所述复制端进行数据修复,包括:
若所述当次检验结果为不等,将当前差异数据与所述源端的源数据进行主键关联,得到修复源数据,将所述目标修复源数据覆盖与所述修复源数据对应的被修复复制数据;
若所述检验结果为缺少复制数据,将当前差异数据与所述源端的源数据进行主键关联,得到所述目标修复源数据,将所述目标修复源数据插入所述复制端;
若所述检验结果为复制数据多余,向所述复制端发出删除指令,以便将多余复制数据删除。
7.根据权利要求5所述的数据校验方法,其特征在于,还包括:
将修复后的复制数据与源端的源数据进行校对,得到修复结果;
若修复结果表示修复成功,确定源端的所有源数据与复制端的所有复制数据一致;
若修复结果表示修复失败,再次对复制端进行数据修复。
8.一种存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7中任一项所述方法的步骤。
9.一种数据校验设备,其包括存储器和处理器,其特征在于,该存储器上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010252727.4A CN111611253B (zh) | 2020-04-01 | 2020-04-01 | 数据校验方法、设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010252727.4A CN111611253B (zh) | 2020-04-01 | 2020-04-01 | 数据校验方法、设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111611253A CN111611253A (zh) | 2020-09-01 |
CN111611253B true CN111611253B (zh) | 2023-08-08 |
Family
ID=72195616
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010252727.4A Active CN111611253B (zh) | 2020-04-01 | 2020-04-01 | 数据校验方法、设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111611253B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112612839A (zh) * | 2020-12-28 | 2021-04-06 | 中国农业银行股份有限公司 | 一种数据处理方法及装置 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005100007A (ja) * | 2003-09-24 | 2005-04-14 | Matsushita Electric Ind Co Ltd | データファイル保存システムおよびアロケーション方法 |
EP2237170A1 (en) * | 2009-03-31 | 2010-10-06 | BRITISH TELECOMMUNICATIONS public limited company | Data sorage system |
EP2610764A1 (en) * | 2011-12-30 | 2013-07-03 | BMC Software, Inc. | Systems and methods for migrating database data |
CN104504122A (zh) * | 2014-12-29 | 2015-04-08 | 浪潮(北京)电子信息产业有限公司 | 一种数据库迁移数据的验证方法及系统 |
CN108319719A (zh) * | 2018-02-12 | 2018-07-24 | 腾讯科技(深圳)有限公司 | 数据库数据校验方法、装置、计算机设备和存储介质 |
CN109634941A (zh) * | 2018-11-14 | 2019-04-16 | 金色熊猫有限公司 | 医疗数据处理方法、装置、电子设备及存储介质 |
CN110222027A (zh) * | 2019-04-24 | 2019-09-10 | 福建天泉教育科技有限公司 | 数据迁移的数量校验方法及计算机可读存储介质 |
CN110727691A (zh) * | 2019-10-22 | 2020-01-24 | 北京明略软件系统有限公司 | 一种数据解析校验方法及装置 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3778009B2 (ja) * | 2001-06-13 | 2006-05-24 | ソニー株式会社 | データ転送システム、データ転送装置、データ記録装置、データ管理方法 |
US7421551B2 (en) * | 2006-02-03 | 2008-09-02 | Emc Corporation | Fast verification of computer backup data |
US7895501B2 (en) * | 2007-02-06 | 2011-02-22 | Vision Solutions, Inc. | Method for auditing data integrity in a high availability database |
JP5284905B2 (ja) * | 2009-08-12 | 2013-09-11 | 富士通株式会社 | データ移行方法、及びプログラム |
US20160063050A1 (en) * | 2014-08-28 | 2016-03-03 | Joerg Schoen | Database Migration Consistency Checker |
US11308125B2 (en) * | 2018-03-27 | 2022-04-19 | EMC IP Holding Company LLC | Storage system with fast recovery and resumption of previously-terminated synchronous replication |
-
2020
- 2020-04-01 CN CN202010252727.4A patent/CN111611253B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005100007A (ja) * | 2003-09-24 | 2005-04-14 | Matsushita Electric Ind Co Ltd | データファイル保存システムおよびアロケーション方法 |
EP2237170A1 (en) * | 2009-03-31 | 2010-10-06 | BRITISH TELECOMMUNICATIONS public limited company | Data sorage system |
EP2610764A1 (en) * | 2011-12-30 | 2013-07-03 | BMC Software, Inc. | Systems and methods for migrating database data |
CN104504122A (zh) * | 2014-12-29 | 2015-04-08 | 浪潮(北京)电子信息产业有限公司 | 一种数据库迁移数据的验证方法及系统 |
CN108319719A (zh) * | 2018-02-12 | 2018-07-24 | 腾讯科技(深圳)有限公司 | 数据库数据校验方法、装置、计算机设备和存储介质 |
CN109634941A (zh) * | 2018-11-14 | 2019-04-16 | 金色熊猫有限公司 | 医疗数据处理方法、装置、电子设备及存储介质 |
CN110222027A (zh) * | 2019-04-24 | 2019-09-10 | 福建天泉教育科技有限公司 | 数据迁移的数量校验方法及计算机可读存储介质 |
CN110727691A (zh) * | 2019-10-22 | 2020-01-24 | 北京明略软件系统有限公司 | 一种数据解析校验方法及装置 |
Non-Patent Citations (1)
Title |
---|
黄怀毅 ; 杨路明 ; .一种轻量级架构的ETL系统设计与实现.计算机技术与发展.2008,(第06期),全文. * |
Also Published As
Publication number | Publication date |
---|---|
CN111611253A (zh) | 2020-09-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR20060049879A (ko) | 최적화된 복원 계획을 생성하는 방법 | |
JP2023507301A (ja) | データフローグラフのコンポーネントのユニットテスト | |
CN110928891B (zh) | 数据一致性检测方法、装置、计算设备以及介质 | |
CN111611253B (zh) | 数据校验方法、设备和存储介质 | |
US11467824B2 (en) | Method and system for fast building and testing software | |
CN114880220A (zh) | 车辆自动驾驶软件的开发系统和方法 | |
CN115237444A (zh) | 基于版本号的并发控制方法、装置、设备及存储介质 | |
US11023368B1 (en) | Reduction of testing space for system testing infrastructure using combinatorics | |
KR101291817B1 (ko) | 요구사항 모델 기반 테스트 케이스 자동 생성 시스템 및 방법 | |
Fedasyuk et al. | Method of developing the behavior models in form of states diagram for complex information systems | |
KR101334806B1 (ko) | 테스트 케이스 자동 생성 시스템에서 테스트 케이스를 구성하는 입력값의 집합을 자동으로 산출하는 방법 | |
US7689604B2 (en) | Complex datastore with bitmap checking | |
CN105630625A (zh) | 检测数据副本之间的一致性的方法和装置 | |
Voas et al. | Reducing uncertainty about common-mode failures | |
AU2021227739B2 (en) | Executing tests in deterministic order | |
Flemström et al. | Exploring test overlap in system integration: An industrial case study | |
CN115129704A (zh) | 迁移数据校验方法及其系统、电子设备、存储介质 | |
CN111898165B (zh) | Pdm系统中技术参数变更溯源方法及系统 | |
US20220207386A1 (en) | Best outcome aiops modeling with data confidence fabrics | |
JP3157047B2 (ja) | 電子機器の故障モジュール判別方法 | |
CN112181844B (zh) | 一种验证分布式协议活性属性容错机制的检测方法及装置 | |
JP6652914B2 (ja) | リリース順序チェック装置およびリリース順序チェック方法 | |
CN117724900A (zh) | 一种基于海量文件备份恢复的数据一致性验证方法及系统 | |
JP3072985B2 (ja) | 論理シミュレーション方法 | |
CN116150175A (zh) | 一种面向异构数据源的数据一致性校验方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |