用于校验数据的方法和装置制造方法及图纸

技术编号:20866635 阅读:19 留言:0更新日期:2019-04-17 09:22
本申请实施例公开了用于校验数据的。该方法的一具体实施方式包括:获取待校验的第一数据集和第二数据集,第一数据集中的数据和第二数据集中的数据一一对应;根据第一数据集和第二数据集,生成第一字符串集和第二字符串集,其中,第一字符串集中的字符串包含第一数据集中的数据,第二字符串集中的字符串包含第二数据集中的数据,且第一字符串集中的字符串与第二字符串集中的对应的字符串包含的数据一一对应且排列顺序一致;基于第一字符串集和第二字符串集,确定第一数据集和第二数据集是否相同,输出用于表示第一数据集和第二数据集是否相同的校验结果信息。该实施方式实现了对两个数据集的校验。

【技术实现步骤摘要】
用于校验数据的方法和装置
本申请实施例涉及计算机
,具体涉及用于校验数据的方法和装置。
技术介绍
随着互联网技术的快速发展,每刻都会产生大量的数据,也会涉及大量数据的传输、存储等。而在数据的产生、传输和存储等过程中,会有各种各样的影响,有的影响会导致数据出现差错。因此,数据校验是常见的一种用于保证数据的完整性、一致性等的方法。在很多情况下,同一份数据会对应有多份存储。例如,服务端的一接口返回的数据集会同时同步到多个客户端。又例如,对于同一数据集,有时需要按照不同的存储方式、或使用不同的数据存储工具等分别进行存储。这些情况下,都会出现在不同位置存储有同一数据集。此时,如何校验这些不同位置处存储的数据集中的数据是否相同是需要考虑的一个问题。目前,常用的可以用于校验不同存储位置的多个数据集的一致性的校验方法包括直接校验和校验和。其中,直接校验就是将多个数据集直接进行一一比较。校验和是利用消息摘要算法等算法对多个数据集分别进行处理,并通过判断多个数据集分别对应的散列值是否相同来校验多个数据集的一致性。
技术实现思路
本申请实施例提出了用于校验数据的方法和装置。第一方面,本申请实施例提供了一种用于校验数据的方法,该方法包括:获取待校验的第一数据集和第二数据集,其中,第一数据集中的数据和第二数据集中的数据一一对应;根据第一数据集和第二数据集,生成第一字符串集和第二字符串集,其中,第一字符串集中的字符串包含第一数据集中的数据,第二字符串集中的字符串包含第二数据集中的数据,且第一字符串集中的字符串与第二字符串集中的字符串一一对应,且对应的两个字符串包含的数据一一对应且排列顺序一致;基于第一字符串集和第二字符串集,确定第一数据集和第二数据集是否相同,以及输出用于表示第一数据集和第二数据集是否相同的校验结果信息。第二方面,本申请实施例提供了一种用于校验数据的装置,该装置包括:获取单元,被配置成获取待校验的第一数据集和第二数据集,其中,第一数据集中的数据和第二数据集中的数据一一对应;生成单元,被配置成根据第一数据集和第二数据集,生成第一字符串集和第二字符串集,其中,第一字符串集中的字符串包含第一数据集中的数据,第二字符串集中的字符串包含第二数据集中的数据,且第一字符串集中的字符串与第二字符串集中的字符串一一对应,且对应的两个字符串包含的数据一一对应且排列顺序一致;确定单元,被配置成基于第一字符串集和第二字符串集,确定第一数据集和第二数据集是否相同,以及输出用于表示第一数据集和第二数据集是否相同的校验结果信息。第三方面,本申请实施例提供了一种电子设备,该电子设备包括:一个或多个处理器;存储装置,用于存储一个或多个程序;当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现如第一方面中任一实现方式描述的方法。第四方面,本申请实施例提供了一种计算机可读介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如第一方面中任一实现方式描述的方法。本申请实施例提供的用于校验数据的方法和装置,通过获取待校验的第一数据集和第二数据集,其中,第一数据集中的数据和第二数据集中的数据一一对应;根据第一数据集和第二数据集,生成第一字符串集和第二字符串集,其中,第一字符串集中的字符串包含第一数据集中的数据,第二字符串集中的字符串包含第二数据集中的数据,且第一字符串集中的字符串与第二字符串集中的字符串一一对应,且对应的两个字符串包含的数据一一对应且排列顺序一致;基于第一字符串集和第二字符串集,确定第一数据集和第二数据集是否相同,以及输出用于表示第一数据集和第二数据集是否相同的校验结果信息,从而实现了根据两个数据集中的数据按照对应的顺序排列而生成的多个字符串来完成对两个数据集的校验。一方面,较大概率的避免了对两个数据集中的数据一一对应比较校验的情况,有助于提升校验速度。另一方面,根据每个数据集,生成多个字符串,从而之后可以分别对对应的两个字符串进行校验,也可以根据每个数据集对应的多个字符串整体进行校验,有助于提升校验方式的灵活性。附图说明通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:图1是本申请的一个实施例可以应用于其中的示例性系统架构图;图2是根据本申请的用于校验数据的方法的一个实施例的流程图;图3是根据本申请的用于校验数据的方法的又一个实施例的流程图;图4是根据本申请实施例的用于校验数据的方法的一个应用场景的示意图;图5是根据本申请的用于校验数据的装置的一个实施例的结构示意图;图6是适于用来实现本申请实施例的电子设备的计算机系统的结构示意图。具体实施方式下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关专利技术,而非对该专利技术的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关专利技术相关的部分。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。图1示出了可以应用本申请的用于校验数据的方法或用于校验数据的装置的实施例的示例性架构100。如图1所示,系统架构100可以包括服务器101和与服务器101通信连接的数据库102、103。服务器101上可以安装有数据库管理软件,用于控制数据库102、103。数据库102、103中可以用于存储同一份数据。数据库102、103中的数据的存储方式(如存储格式、存储顺序等)可以不同。服务器101可以是提供各种服务的服务器。例如,为数据库102、103存储的数据进行校验的数据处理服务器。数据处理服务器可以分别从数据库102、103中获取对应的数据集,并对两个数据集进行一致性校验,以及向用户显示校验结果。需要说明的是,服务器101上也可以直接安装数据库102、103。此时,服务器101可以直接从本地的两个数据库获取对应的数据集并进行一致性校验。服务器101也可以是为不同的两个客户端所接收并存储的同一份数据进行校验的数据处理服务器。数据处理服务器可以分别从两个客户端中获取的对应的数据集,并对两个数据集进行一致性校验。此时,可以不存在数据库102、103。需要说明的是,数据库102、103可以分别安装于两个客户端中。此时,服务器可以分别从两个客户端上安装的数据库中获取对应的数据集,并进行一致性校验。需要说明的是,服务器101可以是硬件,也可以是软件。当服务器101为硬件时,可以实现成多个服务器组成的分布式服务器集群,也可以实现成单个服务器。当服务器101为软件时,可以实现成多个软件或软件模块(例如用来提供分布式服务的多个软件或软件模块),也可以实现成单个软件或软件模块。在此不做具体限定。需要说明的是,上述客户端可以是硬件,也可以是软件。当终端设备为硬件时,可以是各种电子设备,包括但不限于智能手机、平板电脑、电子书阅读器、膝上型便携计算机和台式计算机等等。当终端设备为软件时,可以安装在上述所列举的电子设备中。其可以实现成多个软件或软件模块(例如用来提供分布式服务的多个软件或软件模块),也可以实现成单个软件或软件模块。在此不做具体限定。需要说明的是,本申请实施例所提供的用于校验数据的方法一般由服务器101执行,相应地,用于校验本文档来自技高网...

【技术保护点】
1.一种用于校验数据的方法,包括:获取待校验的第一数据集和第二数据集,其中,所述第一数据集中的数据和所述第二数据集中的数据一一对应;根据所述第一数据集和第二数据集,生成第一字符串集和第二字符串集,其中,所述第一字符串集中的字符串包含所述第一数据集中的数据,所述第二字符串集中的字符串包含所述第二数据集中的数据,且所述第一字符串集中的字符串与所述第二字符串集中的字符串一一对应,且对应的两个字符串包含的数据一一对应且排列顺序一致;基于所述第一字符串集和所述第二字符串集,确定所述第一数据集和所述第二数据集是否相同,以及输出用于表示所述第一数据集和所述第二数据集是否相同的校验结果信息。

【技术特征摘要】
1.一种用于校验数据的方法,包括:获取待校验的第一数据集和第二数据集,其中,所述第一数据集中的数据和所述第二数据集中的数据一一对应;根据所述第一数据集和第二数据集,生成第一字符串集和第二字符串集,其中,所述第一字符串集中的字符串包含所述第一数据集中的数据,所述第二字符串集中的字符串包含所述第二数据集中的数据,且所述第一字符串集中的字符串与所述第二字符串集中的字符串一一对应,且对应的两个字符串包含的数据一一对应且排列顺序一致;基于所述第一字符串集和所述第二字符串集,确定所述第一数据集和所述第二数据集是否相同,以及输出用于表示所述第一数据集和所述第二数据集是否相同的校验结果信息。2.根据权利要求1所述的方法,其中,所述第一数据集和第二数据集通过如下步骤确定:根据预设的查询条件,在第一目标数据库中进行查询,得到返回的第一记录集,以及根据所述查询条件,在第二目标数据库中进行查询,得到返回的第二记录集;响应于确定所述第一记录集包含的记录的数目和所述第二记录集包含的记录的数目相同,确定所述第一记录集作为所述第一数据集,以及确定所述第二记录集作为所述第二数据集。3.根据权利要求1所述的方法,其中,所述根据所述第一数据集和第二数据集,生成第一字符串集和第二字符串集,包括:将所述第一数据集中的数据按照预设的排列顺序依次拼接得到第一字符串,以及确定所述第一字符串作为所述第一字符串集;将所述第二数据集中的数据按照与所述排列顺序对应的排列顺序依次拼接得到第二字符串,以及确定所述第二字符串作为所述第二字符串集。4.根据权利要求1所述的方法,其中,所述根据所述第一数据集和第二数据集,生成第一字符串集和第二字符串集,包括:将所述第一数据集中的数据按照预设的排列顺序依次拼接得到第一字符串,以及将所述第二数据集中的数据按照与所述排列顺序对应的排列顺序依次拼接得到第二字符串;在所述第一字符串包含的每两个数据之间插入预设字符,以及将得到的新的第一字符串确定为所述第一字符串集;在所述第二字符串包含的每两个数据之间插入所述预设字符,以及将得到的新的第二字符串确定为所述第二字符串集。5.根据权利要求1所述的方法,其中,所述根据所述第一数据集和第二数据集,生成第一字符串集和第二字符串集,包括:将所述第一数据集和所述第二数据集分别拆分为至少两个数据子集,其中,所述第一数据集的至少两个数据子集中的数据子集与所述第二数据集的至少两个数据子集中的数据子集一一对应,且对应的两个数据子集包含的数据一一对应;对于所述第一数据集的至少两个数据子集中的数据子集,根据该数据子集,生成该数据子集的第一字符串;对于所述第二数据集的至少两个数据子集中的数据子集,根据该数据子集,生成该数据子集的第二字符串;利用所述第一数据集的至少两个数据子集中的数据子集分别对应的第一字符串,组成所述第一字符串集,以及利用所述第二数据集的至少两个数据子集中的数据子集分别对应的第二字符串,组成所述第二字符串集。6.根据权利要...

【专利技术属性】
技术研发人员:徐飞
申请(专利权)人:上海掌门科技有限公司
类型:发明
国别省市:上海,31

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

1