CN116701367A - 基于布隆过滤器的数据重复性校验方法、装置及设备 - Google Patents
基于布隆过滤器的数据重复性校验方法、装置及设备 Download PDFInfo
- Publication number
- CN116701367A CN116701367A CN202310621623.XA CN202310621623A CN116701367A CN 116701367 A CN116701367 A CN 116701367A CN 202310621623 A CN202310621623 A CN 202310621623A CN 116701367 A CN116701367 A CN 116701367A
- Authority
- CN
- China
- Prior art keywords
- data
- verified
- checked
- verification
- determining
- 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.)
- Pending
Links
- 238000012795 verification Methods 0.000 title claims abstract description 125
- 238000000034 method Methods 0.000 title claims abstract description 75
- 238000013507 mapping Methods 0.000 claims abstract description 91
- 238000012545 processing Methods 0.000 claims abstract description 52
- 238000013524 data verification Methods 0.000 claims abstract description 33
- 230000004044 response Effects 0.000 claims abstract description 12
- 230000006870 function Effects 0.000 claims description 98
- 238000013506 data mapping Methods 0.000 claims description 16
- 238000012360 testing method Methods 0.000 claims description 16
- 238000006243 chemical reaction Methods 0.000 claims description 11
- 238000013522 software testing Methods 0.000 claims description 6
- 238000010586 diagram Methods 0.000 description 8
- 230000009286 beneficial effect Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 238000004590 computer program Methods 0.000 description 4
- 238000003491 array Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000005070 sampling Methods 0.000 description 3
- 238000012217 deletion Methods 0.000 description 2
- 230000037430 deletion Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000007689 inspection Methods 0.000 description 2
- 239000002699 waste material Substances 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
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/21—Design, administration or maintenance of databases
- G06F16/215—Improving data quality; Data cleansing, e.g. de-duplication, removing invalid entries or correcting typographical errors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/5038—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
-
- 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)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Quality & Reliability (AREA)
- Data Mining & Analysis (AREA)
- Human Computer Interaction (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请提供一种基于布隆过滤器的数据重复性校验方法、装置及设备,可用于大数据领域;该方法应用于多核中央处理器,该方法包括:响应于数据校验请求,确定至少一个映射函数;根据映射函数,确定待比对数据对应的第一二进制数组;第一二进制数组表征待比对数据;待比对数据为待校验集合中除待校验数据以外的其余全部待校验数据;确定预设线程池中的空闲的线程组,并基于空闲的线程组中的第一线程,根据映射函数确待校验数据对应的第二二进制数组;基于空闲的线程组中的第二线程,根据第一二进制数组和第二二进制数组,确定校验结果。本申请提供的方法,可以提高数据重复性校验的效率,以及准确率。
Description
技术领域
本申请涉及大数据领域,尤其涉及一种基于布隆过滤器的数据重复性校验方法、装置及设备。
背景技术
随着数据规模不断的扩大,在软件测试过程中,通常需要对测试数据进行重复性校验,以避免对相同的数据进行多次不必要的测试。
相关技术中,在对数据进行重复性检查时,通常采用人工抽样检查的方式进行校验。然而,上述人工抽样检查的方式,容易导致校验结果不准确,并且需要耗费较多的时间。
发明内容
本申请提供一种基于布隆过滤器的数据重复性校验方法、装置及设备,用以解决相关技术中重复性校验耗时较长的问题。
第一方面,本申请提供一种基于布隆过滤器的数据重复性校验方法,应用于多核中央处理器,所述方法包括:
响应于数据校验请求,确定至少一个映射函数,其中,所述数据校验请求用于请求确定待校验集合中是否存在重复的数据;所述待校验集合中存在多条待校验数据;所述映射函数为用于对所述待校验数据进行数据转化处理的函数;
根据所述映射函数,对待比对数据进行数据映射处理,确定所述待比对数据对应的第一二进制数组;所述第一二进制数组表征所述待比对数据;所述待比对数据为所述待校验集合中除所述待校验数据以外的其余全部待校验数据;
确定预设线程池中的空闲的线程组,并基于所述空闲的线程组中的第一线程,根据所述映射函数对所述待校验数据进行数据映射处理,得到第二二进制数组;所述预设线程池包括多组线程组,所述线程组包括两个线程;
基于所述空闲的线程组中的第二线程,根据所述第一二进制数组和所述第二二进制数组,确定校验结果,所述校验结果用于表征所述待校验数据是否存在于所述待比对数据中。
第二方面,本申请提供一种基于布隆过滤器的数据重复性校验装置,应用于多核中央处理器,所述装置包括:
第一确定单元,用于响应于数据校验请求,确定至少一个映射函数,其中,所述数据校验请求用于请求确定待校验集合中是否存在重复的数据;所述待校验集合中存在多条待校验数据;所述映射函数为用于对所述待校验数据进行数据转化处理的函数;
第二确定单元,用于根据所述映射函数,对待比对数据进行数据映射处理,确定所述待比对数据对应的第一二进制数组;所述第一二进制数组表征所述待比对数据;所述待比对数据为所述待校验集合中除所述待校验数据以外的其余全部待校验数据;
第三确定单元,用于确定预设线程池中的空闲的线程组;
处理单元,用于基于所述空闲的线程组中的第一线程,根据所述映射函数对所述待校验数据进行数据映射处理,得到第二二进制数组;所述预设线程池包括多组线程组,所述线程组包括两个线程;
第四确定单元,用于基于所述空闲的线程组中的第二线程,根据所述第一二进制数组和所述第二二进制数组,确定校验结果,所述校验结果用于表征所述待校验数据是否存在于所述待比对数据中。
第三方面,本申请提供一种电子设备,包括:处理器,以及与所述处理器通信连接的存储器;
所述存储器存储计算机执行指令;
所述处理器执行所述存储器存储的计算机执行指令,以实现如第一方面中任一项所述的方法。
第四方面,本申请提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如如第一方面中任一项所述的方法。
第五方面,本申请提供一种计算机程序产品,所述计算机程序产品包括计算机程序,该计算机程序被处理器执行时实现第一方面中任一项所述的方法。
本申请提供的基于布隆过滤器的数据重复性校验方法、装置及设备,应用于多核中央处理器,通过预设线程池中的多个线程组并行的进程数据重复性校验,有利于提高数据重复性校验的效率。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
图1为本申请实施例提供的一种基于布隆过滤器的数据重复性校验方法的流程示意图;
图2为本申请实施例提供的又一种基于布隆过滤器的数据重复性校验方法的流程示意图;
图3为本申请实施例提供的一种界面示意图;
图4为本申请实施例提供的一种基于布隆过滤器的数据重复性校验装置的结构示意图;
图5为本申请实施例提供的又一种基于布隆过滤器的数据重复性校验装置的结构示意图;
图6为本申请实施例中提供的一种电子设备的结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,并且相关数据的收集、使用和处理需要遵守相关法律法规和标准,并提供有相应的操作入口,供用户选择授权或者拒绝。
需要说明的是,本申请基于布隆过滤器的数据重复性校验方法、装置及设备可用于大数据领域,也可用于除大数据领域之外的任意领域,本申请基于布隆过滤器的数据重复性校验方法、装置及设备的应用领域不做限定。
随着数据规模的不断扩大,在多个应用场景中通常都需要对数据的重复性进行校验。举例来说,当需要进行软件测试时,可以通过对多个需要测试的数据进行重复性的校验,以便减少不必要的测试耗时。
相关技术中通常采用人工抽样检查的方式进行数据的重复性校验,上述方式耗时较长,且无法确保校验结果的准确性。
本申请中,通过结合相关技术中所提供的布隆过滤器,实现待校验数据的映射以及待比对数据的映射,之后,将映射后的结果进行比对,有利于提高数据比对的准确性。并且,在比对映射后的结果时,还会结合多核处理器中的多线程处理技术,并行执行多个比对过程,以提高数据检测效率,进而确保后续软件测试的准确性以及高效性。
本申请提供的基于布隆过滤器的数据重复性校验方法、装置及设备,旨在解决现有技术的如上技术问题。
下面以具体地实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本申请的实施例进行描述。
图1为本申请实施例提供的一种基于布隆过滤器的数据重复性校验方法的流程示意图,如图1所示,该方法包括以下步骤:
S101、响应于数据校验请求,确定至少一个映射函数,其中,数据校验请求用于请求确定待校验集合中是否存在重复的数据;待校验集合中存在多条待校验数据;映射函数为用于对待校验数据进行数据转化处理的函数。
示例性地,需要说明的是布隆过滤器为相关技术中用于实现对数据进行重复性校验的工具,在布隆过滤器中包括至少一个映射函数以及一个初始的二进制数组(即,本实施例中的第一二进制数组)。通过将需要校验的数据转换为二进制数组,并将需要和校验的数据进行比对的数据转换为二进制数组(即,第一二进制数组),再通过比对两个转换后得到的二维数组来确定校验的数据是否存在于上述比对的数据中。
本实施例中所提供的方法的执行主体为多核处理器。当接收到表征用于对待校验集合中所包含的多条待校验数据进行数据重复性校验的数据校验请求时,此时,确定至少一个映射函数。
一个示例中,在确定映射函数时,可以采用预设的默认的映射函数,作为本次数据校验请求所对应的映射函数。或者,将数据校验请求中所携带的映射函数标识所对应的映射函数作为本次数据校验请求所对应的映射函数。在实际应用过程中,映射函数的可以为各种类型的哈希函数,例如,加法哈希函数、位运算哈希函数、乘法哈希函数的等。
一个示例中,在多核处理器获取数据校验请求所指示的待校验数据集合时,待校验数据集合可以包括存储在多个文件中的多条数据,若确定待校验数据集合中所包含的数据所对应的格式不同时,则此时,可以将多条数据的数据格式进行转换处理,以便得到数据格式统一的待校验数据集合,进而,通过上述格式转换处理,以便确保数据重复性校验的准确性。
需要说明的是,本实施例中对于映射函数的数量以及映射函数的种类不做具体限制。
S102、根据映射函数,对待比对数据进行数据映射处理,确定待校验数据对应的第一二进制数组;第一二进制数组用于指示待比对数据;待比对数据为待校验集合中除待校验数据以外的其余全部待校验数据。
示例性地,当获取到数据校验请求所指示的待校验集合之后,为了确定待校验集合中的多条待校验数据中是否存在重复数据,针对每一条待校验数据,可以将待校验集合中除该待校验数据以外的其余全部待校验数据作为该待校验数据所对应的待比对数据。
之后,基于映射函数,对待比对数据中所包含的每一待校验数据进行数据映射处理,进而得到待比对数据所对应的第一二进制数组。需要说明的是,第一二进制数组由多位二进制数组成,当根据映射函数确定第一二进制数组时,可以根据映射函数,将每一待校验数据进行数据转换,并根据转换后的数值将第一二进制数组中该数值所对应的那位二进制数设置为1,其中,根据映射函数和待比对数据确定第一二进制数组的具体原理可以参见布隆过滤器的相关描述,此处不再赘述。
S103、确定预设线程池中的空闲的线程组,并基于空闲的线程组中的第一线程,根据映射函数对待校验数据进行数据映射处理,得到第二二进制数组;预设线程池包括多组线程组,线程组包括两个线程。
示例性地,本实施例中,在多核中央处理器中设置有用于进行数据重复校验的预设线程池,线程池中包括有多组线程组,且每一线程组中由两个线程组成。
当获取到待校验数据对应的待比对数据的第一二进制数组之后,进一步的,可以在预设线程池中查找空闲的线程组,并基于空闲的线程组,根据待校验数据和待校验数据所对应的第一二进制向量,进行待校验数据的重复性校验。
具体地,本实施例中的空闲的线程组表征两个线程均处于空闲状态所组成的线程组。需要说明的是,本实施例中,预设线程池中的线程组的划分是不固定的,即,只要存在两个空闲的线程,且未被两个线程当前未被划分至任一线程组中,这两个线程就可以组成一个线程组。
当确定出空闲的线程组之后,可以基于空闲的线程组中所包含的第一线程,根据之前所确定的映射函数,将待校验数据进行数据映射转换,进而得到待校验数据所对应的第二二进制数组。同样地,第二二进制数组也有多位二进制数组成,且第二二进制数组的获取方式与第一二进制数组的获取方式相同,此处不再赘述。
S104、基于空闲的线程组中的第二线程,根据第一二进制数组和第二二进制数组,确定校验结果,校验结果用于表征待校验数据是否存在于待比对数据中。
示例性地,当基于空闲线程组中的第一线程确定出待校验数据所对应的第二二进制数组之后,可以基于空闲线程组中的第二线程,对该待校验数据对应的第二二进制数组,和该待校验数据所对应的待比对数据的第一二进制数组进行比对,以便确定待校验数据是否与待比对数据所包含的数据重复。
具体地,在比对第一二进制数组和第二二进制数组时,此时,可以通过两个数据中被置为1的位数是否一致。首先,确定第二二进制数组中被置为1的目标位数,若在第一二进制数组中,目标位数处的二进制数均为被置为1,则确定待校验数据和待比对数据重复。否则,则表征待校验数据和待比对数据不重复。
可以理解的是,本实施例中,在进行数据重复性校验时,基于多核中央处理器中的预设线程池中的多个线程组,并行的对多个待校验数据进行重复性校验,以提高数据重复性校验的效率。并且,本实施例中,以线程组的粒度来对多个线程进行划分,并以线程组为单位进行第二二进制数组的生成,以及两个数组的比对,进而,可以确保能够及时获取到单条待校验数据所对应的执行结果的效率,且校验通过的(即,未重复的)待校验数据可直接用于软件测试流程,提高了整个测试效率,避免多个线程都在执行第二二进制数组生成的步骤,需要等待全部第二二进制数组生成之后,才能得到单条待校验数据的校验结果的现象。此外,在进行数据比对时,采用将数据转换为二进制数组的方式进行比对,有利于确保数据的安全性。
图2为本申请实施例提供的又一种基于布隆过滤器的数据重复性校验方法的流程示意图,如图2所示,该方法包括以下步骤:
S201、响应于数据校验请求,根据校验误码率和校验要求时长,确定映射函数的数量;其中,数据校验请求用于请求确定待校验集合中是否存在重复的数据;待校验集合中存在多条待校验数据;映射函数为用于对待校验数据进行数据转化处理的函数;数据校验请求中包括:校验要求时长以及校验误码率;校验要求时长为对待校验集合进行重复性校验所要求的时长;校验误码率表征所能接受的校验结果不准确的概率。
示例性地,本实施例中所提供的方法应用于多核中央处理器。并且,本实施例中所提供的多核中央处理器所接收到的数据校验请求中携带有本次校验所要求的校验要求时长,以及本次校验所能够接受的校验误码率,其中,校验误码率可以理解为校验结果为不准确的数量和全部校验结果的数量的比值,即校验结果不准确的概率。
在获取到上述校验误码率和校验要求时长之后,可以根据校验误码率、校验要求时长和映射函数三者之间的对应关系,确定本次所选择的映射函数的数量。可以理解的是,映射函数的数量越多,则所对应的校验耗时时长越长,但相应的得到的校验结果的实际误码率也就越低。一个示例中,上述对应关系可以为预先经过多次重复性校验实验所得到的。
S202、根据映射函数的数量,在预设函数集合中选择映射函数,预设函数集合中包括多个映射函数。
示例性地,在确定出映射函数的数量之后,可以在预先设置的预设函数集合中选择指定数量的映射函数。需要说明的是,预设函数集合中可以设置多个不同类型的映射函数,且同一类型的映射函数的数量可以为多个,本实施例中对于预设函数集合不做具体限制。在实际应用过程中,为了避免基于映射函数将数据转换为二进制数组时计算较为复杂,耗时较长的问题,预设函数集合中的映射函数的函数类型可以均采用加法哈希函数,不同加法哈希函数中所携带的参数不同。
可以理解的是,本实施例中,可以结合校验要求时长以及校验误码率,确定映射函数的数量,以避免映射函数数量较多时,无法满足校验要求时长的要求的现象,以及映射函数数量较少时,校验结果的不准确率较高的问题。
S203、根据各待校验数据的时间信息,确定映射顺序;映射顺序指示生成各待校验数据对应的待比对数据的第一二进制数组的次序,待校验数据具有时间信息;时间信息表征待校验数据用作软件测试过程中的测试数据的时间
示例性地,本实施例中,待校验数据中的每一待校验数据都具有各自的时间信息,其中,时间信息用于表征该待校验数据所对应的被作为软件测试过程中所需要的测试数据执行软件测试的时间。例如,待校验数据需要在第一时刻作为测试数据执行测试流程,则第一时刻可以作为该待校验数据的时间信息。
之后,可以根据时间信息,确定用于表征确定待校验数据所对应的第一二进制数组的次序的映射顺序。例如,待校验数据的时间信息越小,则确定该待校验数据所对应的第一二进制数组的次序在映射顺序中越靠前。
S204、根据映射顺序以及映射函数,依次确定各待校验数据对应待比对数据的第一二进制数组。第一二进制数组用于指示待比对数据;待比对数据为待校验集合中除待校验数据以外的其余全部待校验数据。
示例性地,当确定出映射顺序之后,可以按照映射顺序所指示的次序,依次确定各待校验数据所对应的待比对数据的第一二进制数据。
可以理解的是,本实施例中,可以通过各待校验数据所对应的时间信息,依次确定各待校验数据所对应的第一二进制数组。通过上述方式,可以确保时间信息越小的待校验数据能够尽快的确定出其对应的二进制数组,以便可以尽早确定出该待校验数据的校验结果,提高后续的测试效率。
S205、响应于数据校验请求,根据数据校验请求中包括的校验要求时长、待校验集合的数据量、多核中央处理器的最大并发线程数以及历史校验记录信息,建立预设线程池;其中,历史校验记录信息中包括历史时段中进行重复性校验时所对应的历史校验集合的数据量、历史校验耗时信息以及使用的线程池中的线程数量。
示例性地,本实施例中,多核中央处理器在接收到数据校验请求时,才会进行申请预设线程池。其中,在确定预设线程池中所包含的线程的数量时,此时,可以根据数据校验请求中所携带的校验要求时长(即,本次对待校验集合所要求的校验时长)、多核处理器所对应的最大并发线程数,以及历史时刻下进行数据重复性校验所对应的校验记录(即,历史校验记录信息)来确定。
具体地,本实施例中的历史校验记录信息中包括有历史校验过程中每次进行校验时所对应的需要校验的历史校验集合的数据量、历史校验集合所对应的历史校验耗时信息(即,消耗了多长时间进行对历史校验集合完成了重复性校验)、以及完成上述历史校验集合的校验时所使用的线程池中的线程数量。
在确定本次所申请的预设线程池中的线程数量时,可以根据当前时刻下需要比对的待校验集合的数据量、所要求的校验要求时长,和历史校验记录信息进行比对,查找相同数据量下的历史时刻中的耗时以及线程数,对应的设置当前时刻下的线程池数量,已确保在校验要求时长内完成校验。需要说明的是,步骤S205的执行顺序不做具体限制,例如,可以和步骤S201同时执行,也可以位于步骤S201之前执行。
可以理解的是,本实施例中,可以结合历史校验记录信息、本次校验所对应的校验要求时长以及本次校验的待校验集合的数据量构建预设线程池,合理确定预设线程池中的数量,以确保本次重复性校验可以在校验要求时长内完成,避免线程池资源的浪费,有利于提高多核中央处理器的资源利用率。
S206、确定预设线程池中的空闲的线程组,并基于空闲的线程组中的第一线程,根据映射函数对待校验数据进行数据映射处理,得到第二二进制数组;预设线程池包括多组线程组,线程组包括两个线程。
S207、基于空闲的线程组中的第二线程,根据第一二进制数组和第二二进制数组,确定校验结果,校验结果用于表征待校验数据是否存在于待比对数据中。
示例性地,步骤S206和步骤S207的具体原理可以参见步骤S103和步骤S104,此处不再赘述。
S208、若校验结果表征待校验数据存在于待比对数据中,则确定待校验数据的位置信息,位置信息用于表征待校验数据的存储位置。
示例性地,本实施例中,若校验结果表征待校验数据和待比对数据重复,即,待校验数据存在于待比对数据中时,此时,可以确定该待校验数据所对应的存储位置。举例来说,该待校验数据的存储位置具体的可以用待校验数据所处的文档的文件名称以及在该文档中的行号来表征,以便后续可以快速定位到该待校验数据。
S209、向用户发送第一提示信息,第一提示信息包括待校验数据的位置信息;第一提示信息用于表征位置信息处的数据为重复数据。
示例性地,在确定出待校验数据所对应的位置信息之后,可以将携带有待校验数据的位置信息的第一提示信息发送至用户,以便用户可以及时获知重复的待校验数据所处的位置。
此外,在确定出待校验数据不位于待比对数据中,即待校验数据和待比对数据不重复时,此时,可以向用户发送第二提示信息,以便提示用户该条待校验数据不会与任意一条其余待校验数据重复。
需要说明的是,本实施例中,当确定出重复的待校验数据之后,可以向用户返回该待校验数据所对应的位置信息,以便用户可及时确定出重复的待校验数据的位置,方便用户进行重复数据的复核或者删除处理。
一个示例中,在步骤S208之后,还包括以下步骤:
第一步骤:控制与多核中央处理器连接的显示装置在预设显示界面中显示待校验数据的位置信息和位置信息对应的第一组件。
第二步骤:响应于针对第一组件的控制操作,删除位置信息所对应的待校验数据。
示例性地,本实施例中,当确定出存在待校验数据和对应的待比对数据之间重复,且确定出待校验数据的位置信息之后,可以在和该多核中央处理器连接的显示装置的显示界面上显示每一重复的待校验数据所对应位置信息,且每一位置信息对应一个第一组件。举例来说,图3为本申请实施例提供的一种界面示意图。如图3所示,多个位置信息采用列表的形式排列,且,每一位置信息的起始字符之前,还设置有与该位置信息一一对应的第一组件(图中用圆形图标表征)。可以通过对第一组件执行相关的控制操作,以便实现对第一组件所对应的位置信息处的控制操作。当检测到针对于第一组件的控制操作之后,会将该第一组件所对应的位置信息处的待校验数据进行删除处理。需要说明的是,本实施例中,对于第一组件的控制操作方式不做具体限制。此外,在一种可能的实现方式中,显示界面中的位置信息为超链接文本的格式类型,当检测到对位置信息进行点击等的控制操作或者检测到鼠标指针落在位置信息所处的区域时,可以显示该位置信息处的待校验数据,例如,在当前显示界面上顶层图层中显示该待校验数据,或者,切换至另一显示界面进行数据的显示,或者,直接跳转至待校验数据所处的文档,并在文档中突出显示该待校验数据。
可以理解的是,本实施例中,在确定出重复的待校验数据的位置信息之后,可以在显示界面上显示确定出的各个位置信息,并显示每一位置信息所对应的第一组件,以便可以通过对第一组件进行相关控制操作实现对位置信息所对应的待校验数据的删除处理。
一个示例中,在步骤S207之后,还包括以下步骤:
第一步、若确定已获取到待校验集合中所包含的各待校验数据的校验结果,则基于各校验结果,确定待校验数据集合的重复率信息;其中,重复率信息表征第一数量和第二数量二者的比值;第一数量为表征待校验数据存在于待比对数据中的校验结果的数量;第二数量为待校验集合中包含的待校验数据的总数量。
第二步、控制与多核中央处理器连接的显示装置在预设显示界面中显示重复率信息和提示框,提示框中包括第二组件、第三组件以及第四组件;其中,第二组件表征直接删除全部重复的待校验数据;第三组件指示显示重复的待校验数据;第四组件表征无需删除待校验数据,并基于待校验集合继续执行软件测试过程。
示例性地,本实施例中,当获取到各个待校验数据所对应的校验结果之后,可以根据校验结果,确定出待校验集合中所包含的校验结果表征重复的待校验数据的数量,即上述第一数量。并将待校验集合中所包含的全部的待校验数据的数量确定为第二数量。之后,可以向用户反馈上述第一数量和第二数量之间的比值(即,上述重复率信息)。具体地,反馈上述重复率信息时,可以在多核中央处理器所关联的显示装置的显示界面中显示上述重复率信息,并显示预设的提示框。提示框中包括有第二组件、第三组件以及第四组件。
当检测到对第二组件的控制操作之后,多核中央处理器会在待校验集合中,删除全部的重复的待校验数据,即,多条相同的待校验数据中,仅保留一条待校验数据,以确保执行上述操作之后,待校验集合中所包含的待校验数据不会出现重复的现象。
当检测到对第三组件的控制操作时,多核中央处理器控制相关的显示装置在显示界面中显示各个重复的待校验数据,以便确定上述数据是否需要进一步进行删除。此处,待校验数据的显示方式可以参照上述示例中的显示方式,即,第一组件、位置信息以及位置信息设置为超链接文本的格式类型的方式进行显示。
当检测到针对第四组件的控制操作之后,多核中央处理器可以基于该待校验数据集合中的待校验数据执行软件测试流程,即将上述待校集合作为软件测试过程中的测试数据,执行相关的测试操作。
需要说明的是,本实施例中对于重复率信息的显示位置不做具体限制,重复率信息的所处的显示区域和提示框的显示区域可以为显示界面中不同的显示区域,也可以位于同一显示区域,例如,重复率信息可以显示在提示框所处的区域中。
可以理解的是,本实施例中,在确定出各待校验数据对应的校验结果之后,可以向显示基于校验结果所得到的重复率信息以及提示框。之后,可以通过重复率信息取值的大小,或者,结合重复率信息和其余因素(例如,待校验数据用作后续软件测试的测试时间、测试准确性要求等),确定选择提示框中的哪一组件,进而执行不同的流程,提高用户在使用上述方法进行重复校验时的使用满意度。
本实施例中,可以结合校验要求时长以及校验误码率,确定映射函数的数量,以避免映射函数数量较多时,无法满足校验要求时长的要求的现象,以及映射函数数量较少时,校验结果的不准确率较高的问题。此外,可以通过各待校验数据所对应的时间信息,依次确定各待校验数据所对应的第一二进制数组。通过上述方式,可以确保时间信息越小的待校验数据能够尽快的确定出其对应的二进制数组,以便可以尽早确定出该待校验数据的校验结果,提高后续的测试效率。并且,在确定预设线程池时,可以结合历史校验记录信息、本次校验所对应的校验要求时长以及本次校验的待校验集合的数据量构建预设线程池,合理确定预设线程池中的数量,以确保本次重复性校验可以在校验要求时长内完成,避免线程池资源的浪费,有利于提高多核中央处理器的资源利用率。
图4为本申请实施例提供的一种基于布隆过滤器的数据重复性校验装置的结构示意图,该装置应用于多核中央处理器,如图4所示,该装置包括:
第一确定单元401,用于响应于数据校验请求,确定至少一个映射函数,其中,数据校验请求用于请求确定待校验集合中是否存在重复的数据;待校验集合中存在多条待校验数据;映射函数为用于对待校验数据进行数据转化处理的函数。
第二确定单元402,用于根据映射函数,对待比对数据进行数据映射处理,确定待比对数据对应的第一二进制数组;第一二进制数组表征待比对数据;待比对数据为待校验集合中除待校验数据以外的其余全部待校验数据。
第三确定单元403,用于确定预设线程池中的空闲的线程组。
处理单元404,用于基于空闲的线程组中的第一线程,根据映射函数对待校验数据进行数据映射处理,得到第二二进制数组;预设线程池包括多组线程组,线程组包括两个线程。
第四确定单元405,用于基于空闲的线程组中的第二线程,根据第一二进制数组和第二二进制数组,确定校验结果,校验结果用于表征待校验数据是否存在于待比对数据中。
本实施例提供的装置,用于实现上述方法提供的技术方案,其实现原理和技术效果类似,不再赘述。
图5为本申请实施例提供的又一种基于布隆过滤器的数据重复性校验装置的结构示意图,在图4所示的装置结构的基础上,本实施例中,待校验数据具有时间信息;时间信息表征待校验数据用作软件测试过程中的测试数据的时间;第二确定单元402,包括:
第一确定模块4021,用于根据各待校验数据的时间信息,确定映射顺序;映射顺序指示生成各待校验数据对应的待比对数据的第一二进制数组的次序。
第二确定模块4022,用于根据映射顺序以及映射函数,依次确定各待校验数据对应待比对数据的第一二进制数组。
一个示例中,数据校验请求中包括:校验要求时长以及校验误码率;校验要求时长为对待校验集合进行重复性校验所要求的时长;校验误码率表征所能接受的校验结果不准确的概率;第一确定单元401,包括:
第三确定模块4011,用于响应于数据校验请求,根据校验误码率和校验要求时长,确定映射函数的数量。
选择模块4012,用于根据映射函数的数量,在预设函数集合中选择映射函数,预设函数集合中包括多个映射函数。
一个示例中,装置还包括:
第五确定单元406,用于若校验结果表征待校验数据存在于待比对数据中,则确定待校验数据的位置信息,位置信息用于表征待校验数据的存储位置。
发送单元407,用于向用户发送第一提示信息,第一提示信息包括待校验数据的位置信息;第一提示信息用于表征位置信息处的数据为重复数据。
一个示例中,装置还包括:
第一控制单元408,用于在第五确定单元406用于若校验结果表征待校验数据存在于待比对数据中则确定待校验数据的位置信息之后,控制与多核中央处理器连接的显示装置在预设显示界面中显示待校验数据的位置信息和位置信息对应的第一组件。
删除单元409,用于响应于针对第一组件的控制操作,删除位置信息所对应的待校验数据。
一个示例中,装置还包括:
第六确定单元410,用于若确定已获取到待校验集合中所包含的各待校验数据的校验结果,则基于各校验结果,确定待校验数据集合的重复率信息;其中,重复率信息表征第一数量和第二数量二者的比值;第一数量为表征待校验数据存在于待比对数据中的校验结果的数量;第二数量为待校验集合中包含的待校验数据的总数量。
第二控制单元411,用于控制与多核中央处理器连接的显示装置在预设显示界面中显示重复率信息和提示框,提示框中包括第二组件、第三组件以及第四组件;其中,第二组件表征直接删除全部重复的待校验数据;第三组件指示显示重复的待校验数据;第四组件表征无需删除待校验数据,并基于待校验集合继续执行软件测试过程。
一个示例中,数据校验请求中包括:校验要求时长;装置还包括:
建立单元412,用于响应于数据校验请求,根据校验要求时长、待校验集合的数据量、多核中央处理器的最大并发线程数以及历史校验记录信息,建立预设线程池;其中,历史校验记录信息中包括历史时段中进行重复性校验时所对应的历史校验集合的数据量、历史校验耗时信息以及使用的线程池中的线程数量。
本实施例提供的装置,用于实现上述方法提供的技术方案,其实现原理和技术效果类似,不再赘述。
本申请提供一种电子设备,包括:存储器,处理器;
存储器;用于存储处理器可执行指令的存储器;
其中,处理器,用于根据可执行指令执行方法。
图6为本申请实施例中提供的一种电子设备的结构示意图,如图6所示,该电子设备包括:
处理器(processor)291,电子设备还包括了存储器(memory)292;还可以包括通信接口(Communication Interface)293和总线294。其中,处理器291、存储器292、通信接口293、可以通过总线294完成相互间的通信。通信接口293可以用于信息传输。处理器291可以调用存储器292中的逻辑指令,以执行上述实施例的方法。
此外,上述的存储器292中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。
存储器292作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序,如本申请实施例中的方法对应的程序指令/模块。处理器291通过运行存储在存储器292中的软件程序、指令以及模块,从而执行功能应用以及数据处理,即实现上述方法实施例中的方法。
存储器292可包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端设备的使用所创建的数据等。此外,存储器292可以包括高速随机存取存储器,还可以包括非易失性存储器。
本申请提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机执行指令,计算机执行指令被处理器执行时用于实现任一项的方法。
本申请提供一种计算机程序产品,计算机程序产品包括计算机程序,该计算机程序被处理器执行时实现任一项的方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求书指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求书来限制。
Claims (10)
1.一种基于布隆过滤器的数据重复性校验方法,其特征在于,应用于多核中央处理器,所述方法包括:
响应于数据校验请求,确定至少一个映射函数,其中,所述数据校验请求用于请求确定待校验集合中是否存在重复的数据;所述待校验集合中存在多条待校验数据;所述映射函数为用于对所述待校验数据进行数据转化处理的函数;
根据所述映射函数,对待比对数据进行数据映射处理,确定所述待比对数据对应的第一二进制数组;所述第一二进制数组表征所述待比对数据;所述待比对数据为所述待校验集合中除所述待校验数据以外的其余全部待校验数据;
确定预设线程池中的空闲的线程组,并基于所述空闲的线程组中的第一线程,根据所述映射函数对所述待校验数据进行数据映射处理,得到第二二进制数组;所述预设线程池包括多组线程组,所述线程组包括两个线程;
基于所述空闲的线程组中的第二线程,根据所述第一二进制数组和所述第二二进制数组,确定校验结果,所述校验结果用于表征所述待校验数据是否存在于所述待比对数据中。
2.根据权利要求1所述的方法,其特征在于,所述待校验数据具有时间信息;所述时间信息表征所述待校验数据用作软件测试过程中的测试数据的时间;
根据所述映射函数,对待比对数据进行数据映射处理,确定所述待比对数据对应的第一二进制数组,包括:
根据各所述待校验数据的时间信息,确定映射顺序;所述映射顺序指示生成各所述待校验数据对应的待比对数据的第一二进制数组的次序;
根据所述映射顺序以及所述映射函数,依次确定各所述待校验数据对应待比对数据的第一二进制数组。
3.根据权利要求1所述的方法,其特征在于,所述数据校验请求中包括:校验要求时长以及校验误码率;所述校验要求时长为对所述待校验集合进行重复性校验所要求的时长;所述校验误码率表征所能接受的校验结果不准确的概率;
确定至少一个映射函数,包括:
根据所述校验误码率和所述校验要求时长,确定映射函数的数量;
根据所述映射函数的数量,在预设函数集合中选择映射函数,所述预设函数集合中包括多个映射函数。
4.根据权利要求1-3中任一项所述的方法,其特征在于,所述方法还包括:
若所述校验结果表征所述待校验数据存在于所述待比对数据中,则确定所述待校验数据的位置信息,所述位置信息用于表征所述待校验数据的存储位置;
向用户发送第一提示信息,所述第一提示信息包括所述待校验数据的位置信息;所述第一提示信息用于表征所述位置信息处的数据为重复数据。
5.根据权利要求4所述的方法,其特征在于,在确定所述待校验数据的位置信息之后,所述方法还包括:
控制与所述多核中央处理器连接的显示装置在预设显示界面中显示所述待校验数据的位置信息和所述位置信息对应的第一组件;
响应于针对所述第一组件的控制操作,删除所述位置信息所对应的待校验数据。
6.根据权利要求4所述的方法,其特征在于,所述方法还包括:
若确定已获取到所述待校验集合中所包含的各待校验数据的校验结果,则基于各所述校验结果,确定所述待校验数据集合的重复率信息;其中,所述重复率信息表征第一数量和第二数量二者的比值;所述第一数量为表征待校验数据存在于待比对数据中的校验结果的数量;所述第二数量为所述待校验集合中包含的待校验数据的总数量;
控制与所述多核中央处理器连接的显示装置在预设显示界面中显示所述重复率信息和提示框,所述提示框中包括第二组件、第三组件以及第四组件;其中,所述第二组件表征直接删除全部重复的待校验数据;所述第三组件指示显示重复的待校验数据;所述第四组件表征无需删除待校验数据,并基于所述待校验集合继续执行软件测试过程。
7.根据权利要求4所述的方法,其特征在于,所述数据校验请求中包括:校验要求时长;所述方法还包括:
响应于所述数据校验请求,根据所述校验要求时长、所述待校验集合的数据量、所述多核中央处理器的最大并发线程数以及历史校验记录信息,建立预设线程池;其中,所述历史校验记录信息中包括历史时段中进行重复性校验时所对应的历史校验集合的数据量、历史校验耗时信息以及使用的线程池中的线程数量。
8.一种基于布隆过滤器的数据重复性校验装置,其特征在于,应用于多核中央处理器,所述装置包括:
第一确定单元,用于响应于数据校验请求,确定至少一个映射函数,其中,所述数据校验请求用于请求确定待校验集合中是否存在重复的数据;所述待校验集合中存在多条待校验数据;所述映射函数为用于对所述待校验数据进行数据转化处理的函数;
第二确定单元,用于根据所述映射函数,对待比对数据进行数据映射处理,确定所述待比对数据对应的第一二进制数组;所述第一二进制数组表征所述待比对数据;所述待比对数据为所述待校验集合中除所述待校验数据以外的其余全部待校验数据;
第三确定单元,用于确定预设线程池中的空闲的线程组;
处理单元,用于基于所述空闲的线程组中的第一线程,根据所述映射函数对所述待校验数据进行数据映射处理,得到第二二进制数组;所述预设线程池包括多组线程组,所述线程组包括两个线程;
第四确定单元,用于基于所述空闲的线程组中的第二线程,根据所述第一二进制数组和所述第二二进制数组,确定校验结果,所述校验结果用于表征所述待校验数据是否存在于所述待比对数据中。
9.一种电子设备,其特征在于,包括:处理器,以及与所述处理器通信连接的存储器;
所述存储器存储计算机执行指令;
所述处理器执行所述存储器存储的计算机执行指令,以实现如权利要求1至7中任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如权利要求1至7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310621623.XA CN116701367A (zh) | 2023-05-29 | 2023-05-29 | 基于布隆过滤器的数据重复性校验方法、装置及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310621623.XA CN116701367A (zh) | 2023-05-29 | 2023-05-29 | 基于布隆过滤器的数据重复性校验方法、装置及设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116701367A true CN116701367A (zh) | 2023-09-05 |
Family
ID=87835074
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310621623.XA Pending CN116701367A (zh) | 2023-05-29 | 2023-05-29 | 基于布隆过滤器的数据重复性校验方法、装置及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116701367A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117492405A (zh) * | 2024-01-02 | 2024-02-02 | 东方电气风电股份有限公司 | 一种基于现场总线的风电机组控制系统校验方法 |
-
2023
- 2023-05-29 CN CN202310621623.XA patent/CN116701367A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117492405A (zh) * | 2024-01-02 | 2024-02-02 | 东方电气风电股份有限公司 | 一种基于现场总线的风电机组控制系统校验方法 |
CN117492405B (zh) * | 2024-01-02 | 2024-03-08 | 东方电气风电股份有限公司 | 一种基于现场总线的风电机组控制系统校验方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110727587A (zh) | 测试数据的获取方法、装置、存储介质及计算机设备 | |
CN107659455B (zh) | 一种iOS端Mock数据的方法、存储介质、设备及系统 | |
CN116701367A (zh) | 基于布隆过滤器的数据重复性校验方法、装置及设备 | |
CN109344066B (zh) | 一种浏览器页面的测试方法、系统及终端 | |
CN110750443B (zh) | 网页测试的方法、装置、计算机设备及存储介质 | |
CN108347356A (zh) | 一种多协议单元测试方法、装置、电子设备和存储介质 | |
CN110147327B (zh) | 一种基于多粒度的web自动化测试管理方法 | |
CN111176918A (zh) | 一种服务器测试方法、系统、设备及计算机可读存储介质 | |
CN107276842A (zh) | 接口测试方法、装置及电子设备 | |
CN104156305A (zh) | 一种应用程序测试方法及装置 | |
CN109558328A (zh) | 一种代码覆盖率的测试方法、系统、装置及可读存储介质 | |
CN105279061A (zh) | 服务器接口并发测试的方法和装置 | |
CN110334385B (zh) | 综合能源系统中央控制器的测试方法、装置及设备 | |
KR102167776B1 (ko) | 수소충전소의 위험성을 평가하기 위한 장치, 이를 위한 방법 및 이 방법을 수행하기 위한 프로그램이 기록된 컴퓨터 판독 가능한 기록매체 | |
CN112666389B (zh) | 双芯智能电表双芯交互方法、装置、双芯智能电表和介质 | |
CN114924479A (zh) | 一种风电机组的参数优化方法及装置 | |
CN113641628A (zh) | 数据质量检测方法、装置、设备及存储介质 | |
CN112001617A (zh) | 一种报表生成进度方法、装置、设备及可读存储介质 | |
CN111507869A (zh) | 译文质检抽取方法、装置、计算机设备和存储介质 | |
CN109446103A (zh) | 一种CIM Provider测试方法及装置 | |
CN113051145B (zh) | 一种线上验证系统的性能检测方法 | |
CN117783839B (zh) | 芯片测试方法、装置、计算机设备及存储介质 | |
CN115520122B (zh) | 一种燃料电池车辆储氢系统的检测系统、方法及存储介质 | |
CN116561010A (zh) | 接口测试方法、装置、计算机设备和存储介质 | |
CN115827480A (zh) | 用于船舶性能预报app的自动化测试方法、装置及系统 |
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 |