[发明专利]一种基于多级布谷鸟过滤器的低存储开销计数器方法在审
申请号: | 202111297874.4 | 申请日: | 2021-11-04 |
公开(公告)号: | CN116089201A | 公开(公告)日: | 2023-05-09 |
发明(设计)人: | 李勇;顾春华;罗飞;丁炜超 | 申请(专利权)人: | 华东理工大学 |
主分类号: | G06F11/30 | 分类号: | G06F11/30;G06N3/006 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 200237 *** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 多级 布谷鸟 过滤器 存储 开销 计数器 方法 | ||
1.一种基于多级布谷鸟过滤器的低存储开销计数器方法,其特征在于,采用多级布谷鸟过滤器实现一种类似数值进位的计数方法,扩大了单布谷鸟过滤器计数器的范围。每一级的布谷鸟过滤器的计数器长度都固定长度的比特数表示小范围的计数器,存储在指纹信息的后面。布谷鸟过滤器基于布谷鸟哈希表存储数据。为了提高存储效率,布谷鸟过滤器只存储数据项的指纹信息。将数据项进行哈希计算得到指纹信息,其长度只有32比特,大幅减少了数据项的存储空间。特别是,布谷鸟过滤器数据查询时间复杂度并不会随着数据量的增加而增加,其查询复杂度是O(1)级别,即使是最坏情况下也只需要2次查找。同时,布谷鸟过滤器高并发读操作、数据删除操作仍具有较高的效率。同时,还支持动态增加和删除数据项。
2.如权利要求1所述的一种基于多级布谷鸟过滤器的低存储开销计数器方法,其特征在于,所述多级布谷鸟过滤器计数增加操作,具体包括以下步骤:
步骤1,根据数据项计算其指纹信息,并从第一级开始查找。如果第一级布谷鸟中不存在该指纹,那么该数值第一次为第一次插入,将其计数器设置为1,并随指纹一起插入到布谷鸟过滤器中,并结束操作;否则,进入到步骤2增加计数;
步骤2,在第一级布谷鸟过滤器中找到数据项对应的指纹存储位置,获取其计数器。如果计数器的数值小于2c,c为每个数据项为计数存储的比特数。那么直接将计数器加1,并结束操作。否则,将计数器清零,再进入步骤3执行进位操作;
步骤3,根据步骤1中计算的指纹在下一级布谷鸟过滤器找到数据项的存储位置,并取出计数器。接着判断计数器是否超过2c,如果没有超过,则将计数器加1,结束操作。如果该级的计数器也超过2c,则将该计数器清零,重复执行步骤3执行进位操作。如果已经达到最后一级,那么进入步骤4创建新一级的布谷鸟过滤器;
步骤4,为超过当前最大计数的数值创建新一级的布谷鸟过滤器,并且标记该级布谷鸟的层次,然后将该数据的指纹插入到新创建的布谷鸟过滤器中。同时,将上级对应的计数器清零,再将本级的计数器加1。
3.如权利要求2所述的一种基于多级布谷鸟过滤器的低存储开销计数器方法,其特征在于,所述多级布谷鸟过滤器计数器减少操作,工作流程具体包括以下步骤:
步骤1,根据数据项计算其指纹信息,并从第一级开始查找。如果第一级布谷鸟中不存在该指纹,那么数据项不存在,直接返回错误,并结束操作;否则,进行步骤2继续执行减少操作;
步骤2,根据指纹信息在第一级布谷鸟过滤器中找到数据项的存储位置,获取其计数器。如果计数器的数值大于0,那么直接将计数器减1,并结束操作。否则,进入步骤3执行退位操作;
步骤3,根据步骤1中计算的指纹在下一级布谷鸟过滤器找到数据项的存储位置,并取出计数器。如果该计数器仍等于0,那么继续步骤3进行再下一级的退位操作;否则进入步骤4;
步骤4,将该级的计数器减1。然后再根据之前的查找顺序,逐级回退,根据指纹信息查找到数据项的计数器,将其设置为2c。
4.如权利要求3所述的一种基于多级布谷鸟过滤器的低存储开销计数器方法,其特征在于,所述多级布谷鸟过滤器数据项查找模块,工作流程具体包括以下步骤:
步骤1,根据数据项计算其指纹信息;
步骤2,根据步骤1计算得到的指纹值在第一级布谷鸟过滤器进行查找,如果找到那么返回数据项存在;否则,返回数据项不存在。
5.如权利要求4所述的一种多级基于布谷鸟过滤器的低存储开销计数器方法,其特征在于,所述多级布谷鸟过滤器重哈希模块,工作流程具体包括以下步骤:
步骤1,新生成一个布谷鸟过滤器,其大小是原来该级布谷鸟过滤器的两倍;
步骤2,遍历所有的数据项,计算其指纹值。然后根据指纹值从第一级布谷鸟过滤器中查找该数据项。如果没有找到,表示并不存在,重复步骤2继续查找下一个数据项。否则进行步骤3;
步骤3,如果新生成的布谷鸟过滤器就在第一级,那么将查询到的指纹和计数器存入到新的布谷鸟过滤器;如果布谷鸟过滤器在其他级,则继续在下一级查找,直到找到新布谷鸟过滤器所在的层级为止。只要中间有任何一级查询不到,就表示数据项不存在,则跳回步骤2继续查找下一个数据项。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华东理工大学,未经华东理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111297874.4/1.html,转载请声明来源钻瓜专利网。