[发明专利]一种基于多级布谷鸟过滤器的低存储开销计数器方法在审
申请号: | 202111297874.4 | 申请日: | 2021-11-04 |
公开(公告)号: | CN116089201A | 公开(公告)日: | 2023-05-09 |
发明(设计)人: | 李勇;顾春华;罗飞;丁炜超 | 申请(专利权)人: | 华东理工大学 |
主分类号: | G06F11/30 | 分类号: | G06F11/30;G06N3/006 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 200237 *** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 多级 布谷鸟 过滤器 存储 开销 计数器 方法 | ||
本发明基于布谷鸟过滤器实现一种低存储开销的计数器方法,同时具有较高读写性能。本发明采用多级布谷鸟过滤器,通过类似数值进位的方式扩大计数器的范围。每一级的布谷鸟过滤器的计数器长度都固定长度的比特数表示小范围的计数器,存储在指纹信息的后面。布谷鸟过滤器基于布谷鸟哈希表存储数据。为了提高存储效率,布谷鸟过滤器只存储数据项的指纹信息。将数据项进行哈希计算得到指纹信息,其长度只有32比特,大幅减少了数据项的存储空间。特别是,布谷鸟过滤器数据查询时间复杂度并不会随着数据量的增加而增加,其查询复杂度是O(1)级别,即使是最坏情况下也只需要2次查找。同时,布谷鸟过滤器高并发读操作、数据删除操作下仍具有较高的效率。因此,本发明的计数器方法整体上不仅具有低开销的存储空间,而且具有高性能的数据读写性能,并且支持动态增加和删除数据项。
技术领域
本发明属于计算机系统数据存储领域,设计一种基于多级布谷鸟过滤器的低存储开销计数器方法。
背景技术
计数器广泛应用在计算机系统的各个领域,比如网络流量监控中需要统计不同链接的流量信息、缓存中需要通过计数器实现热点数据抓取、存储系统中的温冷热数据识别也需要计数器的支持。但是,无论是网络领域、存储领域、或者数据库领域,其数据量都是非常庞大,并且随着系统规模的扩大还会进一步增加。传统方法通常为每个数据块配备固定比特数的计数器,在数据量较少的时候,其存储开销尚不明显。但是随着数据量的增加其存储空间开销会迅速增加,难以适应海量数据的应用场景。
发明内容
为了解决现有技术中存在的上述问题,本发明基于多级布谷鸟过滤器实现一种低存储开销的计数器方法,同时具有较高读写性能。其具体技术方案如下:
布谷鸟过滤器是一种支持高并发读的数据结构,能够快速检测某个元素是否存在集合内,同时还支持数据项的动态增加和删除。布谷鸟过滤器基于布谷鸟哈希表存储数据。为了提高存储效率,布谷鸟过滤器只存储数据项的指纹信息。将数据项进行哈希计算得到指纹信息,其长度只有32比特,大幅减少了数据项的存储空间。特别是,布谷鸟过滤器数据查询时间复杂度并不会随着数据量的增加而增加,其查询复杂度是O(1)级别,即使是最坏情况下也只需要2次查找。同时,布谷鸟过滤器高并发读操作、数据删除操作仍具有较高的效率。因此,本发明的计数器方法整体上不仅具有低开销的存储空间,而且具有高性能的数据读写性能,并且支持动态增加和删除数据项。作为低存储开销的代价,布谷鸟过滤器因为哈希冲突的原因,对于哈希冲突的数据项会出现叠加计数。但是哈希冲突的概率非常低(指纹长度为12比特时,其误判率为0.19%),在实际应用中甚至可以忽略其影响。
本发明采用多级布谷鸟过滤器,通过类似数值进位的方式扩大计数器的范围。具体实现如下:每一级的布谷鸟过滤器的计数器长度都固定为c比特,存储在指纹信息的后面,单数据项的最大数值为2c;在第一级布谷鸟过滤器中,计数器中的数值V1不超过2c;第二级中数值V2,其真实大小是V2×2c+V1;其他级别依次类推。本发明有4个主要操作:计数增加操作、计数减少操作、数据项查找操作和重哈希操作。计数增加操作是增加布谷鸟过滤器中数据项的计数。计数减少操作是减少布谷鸟过滤器中数据项的计数。数据项查找操作是判断一个数据项是否在布谷鸟过滤器中,因为第一级布谷鸟过滤器存储所有的数据,所以查找数据项是否存在时只需要查找第一级布谷鸟过滤器。为了进一步减少计数器的整体存储空间,每一级的布谷鸟过滤器初始大小小于上一级布谷鸟过滤器的大小(默认值为四分之一,可根据实际需要进行调整),当该级布谷鸟过滤器存储空间满了或者因为哈希冲突写入失败时,就将该布谷鸟过滤器扩大一倍,并进行重哈希操作。重哈希操作即将所有该级别的数据重新插入到新生成的布谷鸟过滤器中。
优选的,所述多级布谷鸟过滤器计数增加操作,工作流程具体包括以下步骤:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华东理工大学,未经华东理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111297874.4/2.html,转载请声明来源钻瓜专利网。