一种高效率的动态集合管理方法和系统技术方案

技术编号:34035501 阅读:30 留言:0更新日期:2022-07-06 12:11
本发明专利技术涉及一种高效率的动态集合管理方法和系统,其中动态集合具有多个数据块,每个数据块中具有多个数据桶,每个数据桶中具有多个数据槽,数据槽用于存储元素的指纹信息,管理方法包括:响应于接收到插入元素的命令,获取待插入元素及其的指纹信息;获取第一哈希函数,并根据第一哈希函数、偏移量和数据块的总数量得到插入候选数据块;采用布谷鸟哈希算法,根据待插入元素和其指纹信息,从所述插入候选数据块中确定出插入候选数据桶;获取第二哈希函数,并根据第二哈希函数、偏移量和各数据块中数据桶的数量,得到插入候选数据槽;将待插入元素插入到候选数据槽中。本发明专利技术的技术方案能够提高动态集合的空间效率并降低其假阳性概率。阳性概率。阳性概率。

【技术实现步骤摘要】
一种高效率的动态集合管理方法和系统


[0001]本专利技术涉及动态集合管理方法的
,具体涉及一种高效率的动态集合管理方法和 系统。

技术介绍

[0002]在计算机
,数据集合是一种常用的数据插入工具,而动态集合是一种可以根据 需求对其进行更新的数据集合。对于动态集合来说,其常见的操作包括数据的插入、删除和 查询,其中常见的数据查询操作包括三种类型,分别为成员查询、关联查询和多重性查询, 下面分别对各种查询的方式做详细的介绍。
[0003]成员查询是用于查询某个元素是否在集合中的查询方式,这种查询方式被广泛应用在许 多网络和分布式系统中的缓存、路由器和存储系统上,以及各种IP地址查找和网络包分类的 网络应用中,例如,采用这种成员查询方式查询某个IP地址是否在某个局域网内,或者某个 数据是否存储在某个存储系统中等。
[0004]关联查询是用于查询两个给定集合之间是否存在关联关系的查询方式,这种查询方式是 通过判断两个给定集合中是否存在交集,以及交集种元素数量的多少来确定其关联关系的。 关联查询广泛应用在无线传感器网络、内本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种高效率的动态集合管理方法,其特征在于,所述动态集合具有多个数据块,每个数据块中具有多个数据桶,每个数据桶中具有多个数据槽,所述数据槽用于存储元素的指纹信息,所述管理方法包括:响应于接收到插入元素的命令,获取待插入元素,然后获取所述待插入元素的指纹信息;获取第一哈希函数、与所述待插入元素的辅助信息相关联的偏移量和所述数据块的总数量,并根据所述第一哈希函数、偏移量和所述数据块的总数量得到插入候选数据块;采用布谷鸟哈希算法,根据所述待插入元素和其指纹信息,从所述插入候选数据块中确定出插入候选数据桶;获取第二哈希函数,并根据所述第二哈希函数、偏移量和各数据块中数据桶的数量,得到插入候选数据槽;将所述待插入元素插入到所述候选数据槽中。2.根据权利要求1所述的高效率的动态集合管理方法,其特征在于,所述将所述待插入元素插入到所述插入候选数据槽中包括:响应于所述插入候选数据槽没有被占用,将所述待插入元素的指纹信息存储到所述插入候选数据槽中;响应于所述插入候选数据槽被占用,首先将所述插入候选数据槽中的数据迁移,然后将所述待插入元素的指纹信息存储到所述插入候选数据槽中。3.根据权利要求2所述的高效率的动态集合管理方法,其特征在于,所述将所述待用数据槽中的数据迁移包括:获取所述待用数据槽的备用数据槽,所述备用数据槽为另一插入候选数据桶中与所述待用数据槽相对应的数据槽;响应于所述备用数据槽为空,将所述待用数据槽中的数据迁移到该备用数据槽中,并对所述待用数据槽中的数据重新进行定位;响应于所述备用数据槽不为空,则判断为所述动态集合中无法存储所述待插入元素。4.根据权利要求1所述的基高效率的动态集合管理方法,其特征在于,还包括:响应于接收到元素查询命令,获取待查询元素;获取所述待查询元素的指纹信息,并根据待查询元素的指纹信息得到查询候选数据块;响应于待查询元素的指纹信息存储在所述查询候选数据块中,获取所述待查询元素的指纹信息所在数据桶的位置;根据所述待查询元素的指纹信息所在数据桶的位置和布谷鸟哈希算法,得到与所述待查询元素的辅助信息相关联的偏移量。5.根据权利要求1所述的高效率的动态集合管理方法,其特征在于,还包括:响应于接收到数据删除命令,获取待删除元素;获取所述待删除元素的指纹,得到删除候选数据块;采用布谷鸟哈希算法,根据所述待删除元素和其指纹信息,从所述删除候选数据块中确定出删除候选数据桶;从所述删除候选数据桶中查找出存储所述删除元素指纹信息的数据槽,并将该数据槽
中的数据删除。6.一种高效率的动态集合管理系统,其特征在于,包括处理器和插入器,所述插入器上插入...

【专利技术属性】
技术研发人员:罗来龙符鹏涛郭得科
申请(专利权)人:中国人民解放军国防科技大学
类型:发明
国别省市:

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

1