数据相似度确定方法、装置及处理设备制造方法及图纸

技术编号:22260938 阅读:37 留言:0更新日期:2019-10-10 14:04
本申请提供了一种数据相似度确定方法、装置及处理设备,涉及数据处理领域,该方法包括:获取与多个不同的哈希函数一一对应的多个哈希表,每个哈希表包括至少一个哈希桶,每个哈希桶中记录有多个键值,该多个键值指示的元组的哈希值相同;将该多个哈希表所包括的多个哈希桶划分为至少一个集群,每个集群包括相似度大于相似度阈值的多个哈希桶;分别对每个集群包括的多个哈希桶中,属于不同数据集的键值对出现的次数进行统计,得到每个键值对所对应的统计频次,该统计频次的高低与键值对所指示的元组对的相似程度的高低正相关。本申请提供的数据相似度确定方法的运算效率较高。

Data Similarity Determination Method, Device and Processing Equipment

【技术实现步骤摘要】
数据相似度确定方法、装置及处理设备
本申请涉及数据处理领域,特别涉及一种数据相似度确定方法、装置及处理设备。
技术介绍
数据集通常采用表的形式记录数据,表中的每一行即为一个元组(也称为记录)。相似连接是一种常见的数据集操作,是指从多个数据集中确定出相似度大于指定阈值的元组(Tuple)对,并将该元组对存储在数据集中的同一行。相关技术中,一般采用局部敏感哈希(LocalitySensitiveHashing,LSH)算法来确定属于不同数据集的元组对的相似度。具体的,LSH算法可以采用多个不同的哈希函数对各个数据集中的每个元组分别进行哈希映射,得到每个元组在不同哈希映射下的哈希值;之后可以统计属于不同数据集的元组对在各个哈希函数的哈希映射下,哈希值相同的次数,从而得到每个元组对所对应的统计频次,该统计频次即可反映元组对的相似程度。但是,当数据集个数较多,或数据集中包括的元组的个数较多时,相关技术中的LSH算法的效率较低。
技术实现思路
本申请提供了一种数据相似度确定方法、装置及处理设备,可以解决相关技术中的相关技术中的LSH算法的效率较低的问题。技术方案如下:第一方面,提供了一种数据相似度确定方法,应用于处理设备,该方法可以包括:获取与多个不同的哈希函数一一对应的多个哈希表,每个该哈希表是由对应的哈希函数对多个数据集中的每个元组进行哈希映射后得到的,每个该哈希表包括至少一个哈希桶,每个该哈希桶中记录有多个键值,该多个键值指示的元组的哈希值相同;将该多个哈希表所包括的多个哈希桶划分为至少一个集群,每个该集群包括相似度大于相似度阈值的多个哈希桶;分别对每个该集群包括的多个哈希桶中,属于不同数据集的键值对出现的次数进行统计,得到每个键值对所对应的统计频次,该统计频次的高低与键值对所指示的元组对的相似程度的高低正相关。本申请提供的方法,由于每个集群中的各个哈希桶中记录的键值的相似度较高,因此在以集群为单位读取哈希桶时,可以在较短的时间内快速统计得到相似键值对的统计频次,有效提高了频次统计的效率,提升了LSH算法的性能。可选的,该处理设备分别对每个该集群包括的多个哈希桶中,属于不同数据集的键值对出现的次数进行统计,得到每个键值对所对应的统计频次的过程可以包括:分别对每个该集群包括的多个哈希桶中,属于不同数据集的键值对出现的次数进行统计,得到每个键值对在每个该集群中对应的统计频次;将每个键值对在各个集群中对应的统计频次累加,得到每个该键值对所对应的统计频次。可选的,该处理设备可以包括:存储器以及与该存储器连接的硬件处理器,该多个集群存储在该存储器中;其中,该硬件处理器可以从该存储器中依次读取每个该集群,并分别对每个该集群包括的多个哈希桶中,属于不同数据集的键值对出现的次数进行统计;该方法还可以包括:该硬件处理器将统计得到的统计频次写入该存储器;该存储器进而可以将每个键值对在各个集群中对应的统计频次累加,得到每个该键值对所对应的统计频次。由于该硬件处理器的处理速度较快,与存储器之间的数据传输带宽也较高,因此可以有效提高频次统计时的运算速度,改善LSH算法的性能;此外,由于可以减少存储器与中央处理器之间的数据传输量,从而可以有效提升系统性能,降低系统能耗。可选的,由于硬件处理器的存储空间有限,因此该硬件处理器可以在其存储空间被占满,或者完成对一个集群的统计后,将统计得到的统计频次写入该存储器,直至将每个键值对在各个集群中对应的统计频次均写入该存储器。可选的,该硬件处理器将统计得到的统计频次写入该存储器时,可以将统计得到的统计频次中,数值小于频次阈值的统计频次写入该存储器。由于统计频次较高的键值对在后续的统计过程中更新的概率较高,因此相对于将已统计得到的所有统计频次均写入存储器,只写入频次较低的键值对的统计频次可以有效减少对存储器的写操作。可选的,该硬件处理器每次写入该存储器的统计频次记录在一个表分片中;该存储器将每个键值对在各个集群中对应的统计频次累加,得到每个该键值对所对应的统计频次的过程可以包括:分别统计接收到的多个表分片中,每对表分片的相似度;按照相似度由高至低的顺序,依次对每对表分片中相同键值对所对应的统计频次进行累加,得到每个该键值对所对应的统计频次。根据相似度由高至低的顺序,每对表分片进行合并,可以有效提高表分片合并的效率,减少合并过程中所占用的存储空间,以及合并运算的时间。可选的,该硬件处理器将统计得到的统计频次写入该存储器的过程可以包括:对统计得到的统计频次进行排序;将排序后的统计频次写入该存储器。对键值对进行排序后再写入存储器,使得各个表分片中记录的键值对的排列顺序统一,从而可以进一步降低表分片合并时的计算复杂度,提高存储器对各个表分片进行合并时的效率。可选的,在分别对每个该集群包括的多个哈希桶中,属于不同数据集的键值对出现的次数进行统计之前,该方法还可以包括:依次检测每个该哈希桶中是否包含目标键值对,该目标键值对指示的元组对属于待查询数据集;将每个该集群中不包含目标键值对的哈希桶滤除。通过滤除不符合要求的哈希桶,可以有效减少该硬件处理器所需执行的读取操作,有效提高数据处理的效率。第二方面,提供了一种数据相似度确定装置,该装置可以应用于处理设备中,该装置包括至少一个模块,该至少一个模块可以用于实现上述第一方面所提供的数据相似度确定方法。第三方面,提供了一种处理设备,该处理设备可以包括:存储器、分别与该存储器连接的硬件处理器和中央处理器;该存储器、硬件处理器和中央处理器可以用于实现上述第一方面所提供的数据相似度确定方法。第四方面,提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当该计算机可读存储介质在计算机上运行时,使得计算机执行上述第一方面所提供的数据相似度确定方法。第五方面,提供了一种包含指令的计算机程序产品,当该计算机程序产品在计算机上运行时,可以使得计算机执行上述第一方面所提供的数据相似度确定方法。综上所述,本申请提供了一种数据相似度确定方法、装置及处理设备,该处理设备在获取到多个哈希表后,可以先将该多个哈希表所包括的多个哈希桶按照相似性划分为至少一个集群,使得每个集群包括的多个哈希桶的相似度大于相似度阈值,之后再分别对每个集群包括的多个哈希桶中,属于不同数据集的键值对出现的次数进行统计。由于每个集群中的哈希桶较为相似,因此以集群为单位进行统计时,可以有效提高键值对的统计频次的统计效率。并且,本申请提供的处理设备可以通过硬件处理器对存储器中存储的哈希表进行频次统计,由于该硬件处理器的处理速度较快,与存储器之间的数据传输带宽也较高,因此可以有效提高频次统计时的运算速度,改善LSH算法的性能。附图说明图1是本专利技术实施例提供的一种处理设备的结构示意图;图2是本专利技术实施例提供的一种数据相似度确定方法的流程图;图3是本专利技术实施例提供的一种集群的划分示意图;图4是本专利技术实施例提供的一种数据相似度确定算法的框图;图5是本专利技术实施例提供的另一种数据相似度确定算法的框图;图6是本专利技术实施例提供的一种记频表的示意图;图7是本专利技术实施例提供的一种存储器确定每个键值对所对应的统计频次的方法流程图;图8是本专利技术实施例提供的一种数据相似度确定装置的结构示意图;图9是本专利技术实施例提供的另一种数据相似度本文档来自技高网...

【技术保护点】
1.一种数据相似度确定方法,其特征在于,应用于处理设备,所述方法包括:获取与多个不同的哈希函数一一对应的多个哈希表,每个所述哈希表是由对应的哈希函数对多个数据集中的每个元组进行哈希映射后得到的,每个所述哈希表包括至少一个哈希桶,每个所述哈希桶中记录有多个键值,所述多个键值指示的元组的哈希值相同;将所述多个哈希表所包括的多个哈希桶划分为至少一个集群,每个所述集群包括相似度大于相似度阈值的多个哈希桶;分别对每个所述集群包括的多个哈希桶中,属于不同数据集的键值对出现的次数进行统计,得到每个键值对所对应的统计频次,所述统计频次的高低与键值对所指示的元组对的相似程度的高低正相关。

【技术特征摘要】
1.一种数据相似度确定方法,其特征在于,应用于处理设备,所述方法包括:获取与多个不同的哈希函数一一对应的多个哈希表,每个所述哈希表是由对应的哈希函数对多个数据集中的每个元组进行哈希映射后得到的,每个所述哈希表包括至少一个哈希桶,每个所述哈希桶中记录有多个键值,所述多个键值指示的元组的哈希值相同;将所述多个哈希表所包括的多个哈希桶划分为至少一个集群,每个所述集群包括相似度大于相似度阈值的多个哈希桶;分别对每个所述集群包括的多个哈希桶中,属于不同数据集的键值对出现的次数进行统计,得到每个键值对所对应的统计频次,所述统计频次的高低与键值对所指示的元组对的相似程度的高低正相关。2.根据权利要求1所述的方法,其特征在于,所述分别对每个所述集群包括的多个哈希桶中,属于不同数据集的键值对出现的次数进行统计,得到每个键值对所对应的统计频次,包括:分别对每个所述集群包括的多个哈希桶中,属于不同数据集的键值对出现的次数进行统计,得到每个键值对在每个所述集群中对应的统计频次;将每个键值对在各个集群中对应的统计频次累加,得到每个所述键值对所对应的统计频次。3.根据权利要求2所述的方法,其特征在于,所述处理设备包括:存储器以及与所述存储器连接的硬件处理器,所述多个集群存储在所述存储器中;所述分别对每个所述集群包括的多个哈希桶中,属于不同数据集的键值对出现的次数进行统计,包括:所述硬件处理器从所述存储器中依次读取每个所述集群,并分别对每个所述集群包括的多个哈希桶中,属于不同数据集的键值对出现的次数进行统计;所述方法还包括:所述硬件处理器将统计得到的统计频次写入所述存储器;所述将每个键值对在各个集群中对应的统计频次累加,包括:所述存储器将每个键值对在各个集群中对应的统计频次累加,得到每个所述键值对所对应的统计频次。4.根据权利要求3所述的方法,其特征在于,所述硬件处理器将统计得到的统计频次写入所述存储器,包括:当所述硬件处理器的存储空间被占满,或者所述硬件处理器完成对一个集群的统计后,将统计得到的统计频次写入所述存储器,直至将每个键值对在各个集群中对应的统计频次均写入所述存储器。5.根据权利要求4所述的方法,其特征在于,所述硬件处理器将统计得到的统计频次写入所述存储器,包括:将统计得到的统计频次中,数值小于频次阈值的统计频次写入所述存储器。6.根据权利要求4或5所述的方法,其特征在于,所述硬件处理器每次写入所述存储器的统计频次记录在一个表分片中;所述存储器将每个键值对在各个集群中对应的统计频次累加,得到每个所述键值对所对应的统计频次,包括:分别统计接收到的多个表分片中,每对表分片的相似度;按照相似度由高至低的顺序,依次对每对表分片中相同键值对所对应的统计频次进行累加,得到每个所述键值对所对应的统计频次。7.根据权利要求4或5所述的方法,其特征在于,所述硬件处理器将统计得到的统计频次写入所述存储器,包括:对统计得到的统计频次进行排序;将排序后的统计频次写入所述存储器。8.根据权利要求1至5任一所述的方法,其特征在于,在分别对每个所述集群包括的多个哈希桶中,属于不同数据集的键值对出现的次数进行统计之前,所述方法还包括:依次检测每个所述哈希桶中是否包含目标键值对,所述目标键值对指示的元组对属于待查询数据集;将每个所述集群中不包含目标键值对的哈希桶滤除。9.一种数据相似度确定装置,其特征在于,应用于处理设备,所述装置包括:获取模块,用于获取与多个不同的哈希函数一一对应的多个哈希表,每个所述哈希表是由对应的哈希函数对多个数据集中的每个元组进行哈希映射后得到的,每个所述哈希表包括至少一个哈希桶,每个所述哈希桶中记录有多个键值,所述多个键值指示的元组的哈希值相同;划分模块,用于将所述多个哈希表所包括的多个哈希桶划分为至少一个集群,每个所述集群包括相似度大于相似度阈值的多个哈希桶;统计模块,用于分别对每个所述集群包括的多个哈希桶中,属于不同数据集的键值对出现的次数进行统...

【专利技术属性】
技术研发人员:傅忱忱薛春李建华王元钢郭鑫
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东,44

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

1