数据表一致性检测的方法和装置制造方法及图纸

技术编号:39320450 阅读:13 留言:0更新日期:2023-11-12 16:01
本发明专利技术公开了一种数据表一致性检测的方法和装置,涉及计算机技术领域。该方法的一具体实施方式包括:分别获取待一致性检测的两个数据表包括的文件块个数,并根据文件块个数进行文件目录个数的一致性检测;在文件目录个数的一致性检测通过的情况下,分别获取两个数据表的表结构模式,并进行表结构模式的一致性检测;在表结构模式的一致性检测通过的情况下,分别获取两个数据表的数据行数,并进行数据行数的一致性检测;在数据行数的一致性检测通过的情况下,对两个数据表的数据进行逐行比较,直至获得一致性检测结果。该实施方式为定位数据不一致原因提供有价值的参考,避免了结果误判,具有检测结果准确、执行耗时短、检测效率高的优点。的优点。的优点。

【技术实现步骤摘要】
数据表一致性检测的方法和装置


[0001]本专利技术涉及计算机
,尤其涉及一种数据表一致性检测的方法和装置。

技术介绍

[0002]现阶段针对大数据量的数据表在进行一致性检测时,需要对比每一条数据包括的字段,以及每个字段的数据是否一致。常用的方案主要有基于数据的信息摘要算法进行检测、基于SQL集合的方式进行表数据比较、基于哈希统计的方式,等等。
[0003]在实现本专利技术过程中,专利技术人发现现有技术中至少存在如下问题:
[0004]现有的数据表一致性检测的方法,存在容易误判、检测结果不准确、执行耗时长、检测效率低等缺陷。

技术实现思路

[0005]有鉴于此,本专利技术实施例提供一种数据表一致性检测的方法和装置,能够通过多层逻辑层层比对,并得到对应的不一致信息,为定位数据不一致原因提供有价值的参考,避免了结果误判,具有检测结果准确、执行耗时短、检测效率高的优点。
[0006]为实现上述目的,根据本专利技术实施例的一个方面,提供了一种数据表一致性检测的方法。
[0007]一种数据表一致性检测的方法,包括:
[0008]分别获取待一致性检测的两个数据表包括的文件块个数,并根据所述文件块个数进行文件目录个数的一致性检测;
[0009]在所述文件目录个数的一致性检测通过的情况下,分别获取所述两个数据表的表结构模式,并进行所述表结构模式的一致性检测;
[0010]在所述表结构模式的一致性检测通过的情况下,分别获取所述两个数据表的数据行数,并进行所述数据行数的一致性检测;
[0011]在所述数据行数的一致性检测通过的情况下,对所述两个数据表的数据进行逐行比较,直至获得一致性检测结果。
[0012]可选地,对所述两个数据表的数据进行逐行比较之前,还包括:确认所述两个数据表的数据行数均不为零;以及,在所述两个数据表的数据行数均为零的情况下,进一步确认所述两个数据表是否为空表或者有将数据表清空的操作。
[0013]可选地,分别获取待一致性检测的两个数据表包括的文件块个数,包括:对待一致性检测的两个数据表中的每个数据表,获取所述数据表所在的文件目录位置路径,并统计所述文件目录位置路径下的目录个数;将所述目录个数作为所述数据表包括的文件块个数,以分别得到所述待一致性检测的两个数据表包括的文件块个数。
[0014]可选地,分别获取所述两个数据表的表结构模式,包括:对所述两个数据表中的每个数据表,通过大数据计算引擎将所述数据表读取为表结构数据,将表结构具有的模式作为所述数据表的表结构模式,以分别得到所述两个数据表的表结构模式。
[0015]可选地,进行所述表结构模式的一致性检测,包括:根据所述表结构模式检测所述两个数据表的表结构中的字段数目是否一致;将所述表结构模式转换为字符串类型数据,并在忽略字符大小写的情况下,检测所述两个数据表的表结构模式转换得到的字符串类型数据是否相同。
[0016]可选地,对所述两个数据表的数据进行逐行比较,包括:对所述两个数据表进行整合得到整合数据表;从所述整合数据表中逐行取出数据,并进行数据比较。
[0017]可选地,对所述两个数据表进行整合得到整合数据表,包括:对所述两个数据表中的每个数据表,进行数据分散处理得到分布式数据集,所述分布式数据集包括不少于一个数据分表,所述数据分表的个数与分区个数相同;对所述两个数据表对应的数据分表进行整合得到不少于一个整合数据分表,由所述不少于一个整合数据分表构成整合数据表。
[0018]可选地,所述数据分散处理包括:根据数据表中数据的数据类型将数据分为可哈希类型和可比较类型;对所述可哈希类型的数据列进行哈希运算;对哈希运算后的数据根据预设的分区个数进行重分区;对重分区后的每个分区的数据,按照可比较类型的数据进行排序。
[0019]可选地,对所述两个数据表进行整合得到整合数据表包括:使用拉链整合的方式对所述两个数据表进行整合;若无法整合,则使用拼接整合的方式对所述两个数据表进行整合得到整合数据表。
[0020]可选地,从所述整合数据表中逐行取出数据,并进行数据比较,包括:从所述整合数据表中逐行取出数据,对取出的数据行,获取所述数据行中所述两个数据表对应的列的两个数据;对获取的两个数据进行数据类型的比较和数据值的比较。
[0021]可选地,若所述数据类型为浮点类型,则获取预设的精度的绝对误差值,并根据所述绝对误差值对所述浮点类型的数据进行数据值的比较。
[0022]根据本专利技术实施例的另一方面,提供了一种数据表一致性检测的装置。
[0023]一种数据表一致性检测的装置,包括:
[0024]第一检测模块,用于分别获取待一致性检测的两个数据表包括的文件块个数,并根据所述文件块个数进行文件目录个数的一致性检测;
[0025]第二检测模块,用于在所述文件目录个数的一致性检测通过的情况下,分别获取所述两个数据表的表结构模式,并进行所述表结构模式的一致性检测;
[0026]第三检测模块,用于在所述表结构模式的一致性检测通过的情况下,分别获取所述两个数据表的数据行数,并进行所述数据行数的一致性检测;
[0027]第四检测模块,用于在所述数据行数的一致性检测通过的情况下,对所述两个数据表的数据进行逐行比较,直至获得一致性检测结果。
[0028]根据本专利技术实施例的又一方面,提供了一种数据表一致性检测的电子设备。
[0029]一种数据表一致性检测的电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本专利技术实施例所提供的数据表一致性检测的方法。
[0030]根据本专利技术实施例的再一方面,提供了一种计算机可读介质。
[0031]一种计算机可读介质,其上存储有计算机程序,所述程序被处理器执行时实现本专利技术实施例所提供的数据表一致性检测的方法。
[0032]上述专利技术中的一个实施例具有如下优点或有益效果:通过分别获取待一致性检测的两个数据表包括的文件块个数,并根据文件块个数进行文件目录个数的一致性检测;在文件目录个数的一致性检测通过的情况下,分别获取两个数据表的表结构模式,并进行表结构模式的一致性检测;在表结构模式的一致性检测通过的情况下,分别获取两个数据表的数据行数,并进行数据行数的一致性检测;在数据行数的一致性检测通过的情况下,对两个数据表的数据进行逐行比较,直至获得一致性检测结果的技术方案,通过多层逻辑层层比对,并得到对应的不一致信息,为定位数据不一致原因提供有价值的参考,避免了结果误判,具有检测结果准确、执行耗时短、检测效率高的优点。
[0033]上述的非惯用的可选方式所具有的进一步效果将在下文中结合具体实施方式加以说明。
附图说明
[0034]附图用于更好地理解本专利技术,不构成对本专利技术的不当限定。其中:
[0035]图1是根据本专利技术实施例的数据表一致性检测的方法的主要步骤示意图;
...

【技术保护点】

【技术特征摘要】
1.一种数据表一致性检测的方法,其特征在于,包括:分别获取待一致性检测的两个数据表包括的文件块个数,并根据所述文件块个数进行文件目录个数的一致性检测;在所述文件目录个数的一致性检测通过的情况下,分别获取所述两个数据表的表结构模式,并进行所述表结构模式的一致性检测;在所述表结构模式的一致性检测通过的情况下,分别获取所述两个数据表的数据行数,并进行所述数据行数的一致性检测;在所述数据行数的一致性检测通过的情况下,对所述两个数据表的数据进行逐行比较,直至获得一致性检测结果。2.根据权利要求1所述的方法,其特征在于,对所述两个数据表的数据进行逐行比较之前,还包括:确认所述两个数据表的数据行数均不为零;以及,在所述两个数据表的数据行数均为零的情况下,进一步确认所述两个数据表是否为空表或者有将数据表清空的操作。3.根据权利要求1所述的方法,其特征在于,分别获取待一致性检测的两个数据表包括的文件块个数,包括:对待一致性检测的两个数据表中的每个数据表,获取所述数据表所在的文件目录位置路径,并统计所述文件目录位置路径下的目录个数;将所述目录个数作为所述数据表包括的文件块个数,以分别得到所述待一致性检测的两个数据表包括的文件块个数。4.根据权利要求1所述的方法,其特征在于,分别获取所述两个数据表的表结构模式,包括:对所述两个数据表中的每个数据表,通过大数据计算引擎将所述数据表读取为表结构数据,将表结构具有的模式作为所述数据表的表结构模式,以分别得到所述两个数据表的表结构模式。5.根据权利要求1或4所述的方法,其特征在于,进行所述表结构模式的一致性检测,包括:根据所述表结构模式检测所述两个数据表的表结构中的字段数目是否一致;将所述表结构模式转换为字符串类型数据,并在忽略字符大小写的情况下,检测所述两个数据表的表结构模式转换得到的字符串类型数据是否相同。6.根据权利要求1所述的方法,其特征在于,对所述两个数据表的数据进行逐行比较,包括:对所述两个数据表进行整合得到整合数据表;从所述整合数据表中逐行取出数据,并进行数据比较。7.根据权利要求6所述的方法,其特征在于,对所述两个数据表进行整合得到整合数据表,包括:对所述两个数据表中的每个数据表,进行数据分散处理得到分布式数据集,所述分布式数据集包括不少于一个数据分表,所述数据分表的个数与分区个数相同;对...

【专利技术属性】
技术研发人员:任萍郑瑞峰
申请(专利权)人:北京京东世纪贸易有限公司
类型:发明
国别省市:

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

1