数据处理方法及装置制造方法及图纸

技术编号:33945835 阅读:27 留言:0更新日期:2022-06-29 21:19
本申请实施例公开了一种数据处理方法,该方法应用于内存块,该内存块包括由r行和c列的存储单元组成的内存矩阵;该方法包括:获取待检查对象;通过n个映射函数将该待检查对象映射得到n个第一映射结果,并通过m个映射函数将该待检查对象映射得到m个第二映射结果,该n个第一映射结果指示该内存矩阵的行编号,该m个第二映射结果指示该内存矩阵的列编号;基于p个存储单元存储的值确定该待检查对象是否属于预设集合,该p个存储单元为该n个第一映射结果指示的行和该m个第二映射结果指示的列的交点处的存储单元。本申请能够减少内存带宽的占用,且不额外增加硬件代价。且不额外增加硬件代价。且不额外增加硬件代价。

【技术实现步骤摘要】
数据处理方法及装置


[0001]本申请涉及数据处理领域,具体涉及集合成员的检查处理技术。

技术介绍

[0002]布鲁明过滤器(Blooming Filter,BF)又称布隆过滤器(Bloom Filter,BF),是一个占用空间很小、效率很高的随机数据结构,它由一个位(bit)数组(位数组也可以称为位图(bitmap))和一组哈希(Hash)算法构成。由于布鲁明过滤器能够在大数据情况下高效判断一个元素是否在一个集合中,因此被广泛应用于拼写检查、网络领域(例如垃圾邮件判断、网页地址判断等)和数据去重等领域。
[0003]传统的布隆过滤器的bit数组的长度一般会远大于内存位宽,需要多行内存来存储。导致通过哈希算法计算选取的多个用于判断的bit位落在不同的内存行中,需要多次内存访问读出来,增加了内存带宽的占用。现有的技术方案中为了解决多次访问导致内存带宽占用增加的问题,将大块的内存划分成多个小块的内存,然后通过并发访问内存的技术来一次性读取多个位的数据来达到减少内存带宽的目的,但是并发读取操作增加了读写电路的部署,使得内存芯片的面积增加,导致本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种数据处理方法,其特征在于,所述方法应用于内存块,所述内存块包括由r行和c列的存储单元组成的内存矩阵,所述r和所述c为大于1的整数;所述方法包括:获取待检查对象;通过n个映射函数将所述待检查对象映射得到n个第一映射结果,所述n个第一映射结果指示所述内存矩阵的行编号,所述n为大于0的整数,且所述n小于或等于r;通过m个映射函数将所述待检查对象映射得到m个第二映射结果,所述m个第二映射结果指示所述内存矩阵的列编号,所述m为大于0的整数,且所述m小于或等于c,n和m不同时为1;基于p个存储单元存储的值确定所述待检查对象是否属于预设集合,所述预设集合中对象的信息映射在所述内存矩阵中,所述p个存储单元为所述n个第一映射结果指示的行和所述m个第二映射结果指示的列的交点处的存储单元,p为大于0的整数。2.根据权利要求1所述的方法,其特征在于,所述r行和c列的存储单元用于存储位数组;所述基于p个存储单元存储的值确定所述待检查对象是否属于预设集合,包括:在通过检查确定所述p个存储单元存储的值均为第一预设值的情况下,确定所述待检查对象属于所述预设集合。3.根据权利要求2所述的方法,其特征在于,所述内存块还包括第一处理模块,所述在通过检查确定所述p个存储单元存储的值均为第一预设值的情况下,确定所述待检查对象属于预设集合,包括:通过所述第一处理模块处理所述p个存储单元存储的值得到处理结果;从所述内存块中获取所述处理结果;在所述处理结果与第三预设值匹配的情况下,确定所述待检查对象属于所述预设集合,所述第三预设值指示所述p个存储单元存储的值均为所述第一预设值。4.根据权利要求3所述的方法,其特征在于,所述第一处理模块包括c个第一晶体管和c个第二晶体管,所述c个第一晶体管分别与所述c个第二晶体管一一对应串联连接得到c组串联晶体管,所述c组串联晶体管再并联连接,所述c个第二晶体管接地,且所述c列中与所述n个第一映射结果指示的行的交点处的存储单元存储的值,经处理后作为控制信号分别接入所述c组串联晶体管中的所述c个第一晶体管的栅极,m个第二晶体管的栅极输入的控制信号为导通所述m个第二晶体管的信号,m

个第二晶体管的栅极输入的控制信号为关闭所述第二晶体管的信号,所述m个第二晶体管为所述m个第二映射结果指示的列接入的m对串联晶体管中的第二晶体管,所述m

个第二晶体管为所述c个第二晶体管中除了所述m个第二晶体管之外的晶体管,所述m

个为大于或等于0的整数。5.根据权利要求1至4任一项所述的方法,其特征在于,所述方法还包括:获取所述预设集合中的第一对象;通过n个映射函数将所述第一对象映射得到n个第三映射结果,所述n个第三映射结果指示所述内存矩阵的行编号,所述n为大于0的整数,且所述n小于或等于r;通过m个映射函数将所述第一对象映射得到m个第四映射结果,所述m个第四映射结果指示所述内存矩阵的列编号,所述m为大于0的整数,且所述m小于或等于c;将所述p个存储单元存储的值均调整为第一预设值,所述p个存储单元为所述n个第三映射结果指示的行和所述m个第四映射结果指示的列的交点处的存储单元。
6.根据权利要求1所述的方法,其特征在于,所述r行和c列的存储单元用于存储计数器;所述基于p个存储单元存储的值确定所述待检查对象是否属于预设集合,包括:通过比较确定所述p个存储单元各自存储的计数器中的计数值均大于或等于第一阈值,确定所述待检查对象属于所述预设集合;或者,通过比较确定所述p个存储单元各自存储的计数器中的计数值中最小的值大于或等于所述第一阈值,确定所述待检查对象属于所述预设集合;或者,通过比较确定所述p个存储单元各自存储的计数器的计数值中,大于或等于所述第一阈值的值的个数大于或等于第二阈值,确定所述待检查对象属于所述预设集合。7.根据权利要求6所述的方法,其特征在于,所述内存块还包括第二处理模块;所述通过比较确定所述p个存储单元各自存储的计数器中的计数值均大于或等于第一阈值,包括:通过所述第二处理模块将所述p个存储单元存储的计数值与所述第一阈值比较,并输出第一比较结果,所述第一结果指示所述p个存储单元存储的计数值均大于或等于所述第一阈值;或者,所述通过比较确定所述p个存储单元各自存储的计数器中的计数值中最小的值大于或等于所述第一阈值,包括:通过所述第二处理模块筛选出所述p个存储单元存储的计数值中的最小计数值,并将所述最小计数值与所述第一阈值比较,并输出第二比较结果,所述第二比较结果指示所述最小计数值大于或等于所述第一阈值;或者,所述通过比较确定所述p个存储单元各自存储的计数器的计数值中,大于或等于所述第一阈值的值的个数大于或等于第二阈值,包括:通过所述第二处理模块将所述p个存储单元存储的计数值与所述第一阈值比较,并输出第三比较结果,所述第三比较结果指示所述p个存储单元存储的计数值中大于或等于所述第一阈值的值的个数大于或等于所述第二阈值。8.根据权利要求6或7所述的方法,其特征在于,所述方法还包括:获取所述预设集合中的第二对象;通过n个映射函数将所述第二对象映射得到n个第三映射结果,所述n个第三映射结果为所述内存矩阵的n个行编号,所述n为大于0的整数,且所述n小于或等于r;通过m个映射函数将所述第二对象映射得到m个第四映射结果,所述m个第四映射结果为所述内存矩阵的m个列编号,所述m为大于1的整数,且所述m小于或等于c;调整p个存储单元中一个或多个存储单元存储的计数器的值,所述p个存储单元为所述n个第三映射结果指示的行和所述m个第四映射结果指示的列的交点处的存储单元。9.根据权利要求8所述的方法,其特征在于,所述调整p个存储单元中一个或多个存储单元存储的计数器的值,包括:将所述p个存储单元各自存储的计数器中的一个或多个计数值增加第二预设值。10.根据权利要求1至9任一项所述的方法,其特征在于,所述n个第一映射结果指示的所述行编号为两个不同的行编号,所述m个第二映射结果指示的所述列编号为两个不同的列编号;或者,所述n个第一映射结果指示的所述行编号为一个行编号,所述m个第二映射结果
指示的所述列编号为四个不同的列编号。11.一种数据处理方法,其特征在于,所述方法应用于内存块,所述内存块包括由r行和c列的存储单元组成的内存矩阵,所述r和所述c为大于1的整数;所述方法包括:获取预设集合中的第一对象;通过n个映射函数将所述第一对象映射得到n个映射结果,所述n个映射结果指示所述内存矩阵的行编号,所述n为大于0的整数,且所述n小于或等于r;通过m个映射函数将所述第一对象映射得到m个映射结果,所述m个映射结果指示所述内存矩阵的列编号,所述m为大于1的整数,且所述m小于或等于c,n和m不同时为1;调整p个存储单元中一个或多个存储单元存储的值将所述第一对象的信息映射到所述内存矩阵中,所述p个存储单元为所述n个映射结果指示的行和所述m个映射结果指示的列的交点处的存储单元。12.根据权利要求11所述的方法,其特征在于,所述r行和c列的存储单元用于存储位数组;所述调整p个存储单元中一个或多个存储单元存储的值,包括:将所述p个存储单元存储的值均调整为第一预设值。13.根据权利要求11所述的方法,其特征在于,所述r行和c列的存储单元用于存储计数器;所述调整p个存储单元中一个或多个存储单元存储的值,包括:将所述p个存储单元各自存储的计数器中的一个或多个计数值增加第二预设值。14.根据权利要求11至13任一项所述的方法,其特征在于,所述n个映射结果指示的所述行编号为两个不同的行编号,所述m个映射结果指示的所述列编号为两个不同的列编号;或者,所述n个映射结果指示的所述行编号为一个行编号,所述m个映射结果指示的所述列编号为四个不同的列编号。15.一种装置,其特征在于,所述装置包括处理器和存储器,所述存储器包括第一内存块和第二内存块,所述第一内存块包括由r行和c列的存储单元组成的内存矩阵,所述r和所述c为大于1的整数,所述第二内存块用于存储计算机程序,所述处理器用于执行所述第二内存块中存储的所述计算机程序,使得所述装置执行如下操作:获取待检查对象;通过n个映射函数将所述待检查对象映射得到n个第一映射结果,所...

【专利技术属性】
技术研发人员:喻径舟张正义杨斐然王正波景蔚亮
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:

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

1