[发明专利]基于插入位置选择的数据近似集合表示方法及系统有效
申请号: | 201910419541.0 | 申请日: | 2019-05-20 |
公开(公告)号: | CN110222088B | 公开(公告)日: | 2021-08-31 |
发明(设计)人: | 陈汉华;金海;王飞越;张凡 | 申请(专利权)人: | 华中科技大学 |
主分类号: | G06F16/2458 | 分类号: | G06F16/2458;G06N3/00 |
代理公司: | 华中科技大学专利中心 42201 | 代理人: | 曹葆青;李智 |
地址: | 430074 湖北*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 插入 位置 选择 数据 近似 集合 表示 方法 系统 | ||
1.一种基于插入位置选择的数据近似集合表示方法,其特征在于,包括:
预先建立用于存储集合成员指纹信息的布谷鸟过滤器,并分别为其中的每一个哈希桶维护一个重定位计数;所述重定位计数用于记录成员插入对应的哈希桶中所需要的最大重定位次数;
对于每一个待插入的成员x,执行如下步骤:
(1)分别获得所述成员x的指纹信息ξx和对应的两个候选哈希桶;
(2)若两个候选哈希桶中均未存储所述指纹信息ξx,则转入步骤(3);否则,插入操作结束;
(3)若只有一个候选哈希桶中存在空槽,则转入步骤(4);若两个候选哈希桶中均不存在空槽,则转入步骤(5);若两个候选哈希桶中均存在空槽,则转入步骤(6);
(4)将所述指纹信息ξx插入到存在空槽的候选哈希桶中,插入操作结束;
(5)通过重定位操作将所述指纹信息ξx插入到两个候选哈希桶中重定位计数较小的候选哈希桶中,并相应更新该重定位操作所涉及到的哈希桶的重定位次数,插入操作结束;
(6)分别估计两个候选哈希桶的全局插入数目后,将所述指纹信息ξx插入到两个候选哈希桶中全局插入数目较小的候选哈希桶中,插入操作结束;
其中,哈希桶的全局插入数目为所有集合成员均插入完成后,插入到该哈希桶中的指纹总数;
所述步骤(5)包括:
(51)将所述指纹信息ξx作为待重定位指纹,将两个候选哈希桶中重定位次数较小的候选哈希桶作为目标哈希桶,并初始化计数变量为Counter=1;
(52)若所述计数变量CounterMNK,则重定位操作结束;否则,转入步骤(53);
(53)若所述目标哈希桶中存在空槽,则将待重定位指纹插入所述目标哈希桶的空槽中,并转入步骤(54);否则,转入步骤(55);
(54)若所述目标哈希桶的重定位计数RC[r]Counter,则更新所述目标哈希桶的重定位计数为RC[r]=Counter,重定位操作结束;否则,所述目标哈希桶的重定位计数RC[r]保持不变,重定位操作结束;
(55)从所述目标哈希桶中随机选择一个槽,将其中原本存储的指纹信息踢出,并将待重定位指纹插入该槽;
(56)若所述目标哈希桶的重定位计数RC[r]Counter,则更新所述目标哈希桶的重定位计数为RC[r]=Counter,并转入步骤(57);否则,所述目标哈希桶的重定位计数RC[r]保持不变,转入步骤(57);
(57)将被踢出的指纹信息作为新的待重定位指纹,将被踢出的指纹信息所对应的另外一个哈希桶作为新的目标哈希桶,并将所述计数变量Counter的值加1后,转入步骤(52);
其中,MNK为预设的最大重定位次数。
2.如权利要求1所述的基于插入位置选择的数据近似集合表示方法,其特征在于,估计任意一个候选哈希桶的全局插入数目,其方法包括:
计算所述布谷鸟过滤器当前的负载因子为:
根据所述负载因子α和该候选哈希桶当前的重定位计数RC估计后续集合成员插入到该候选哈希桶中的概率为:
获得当前该候选哈希桶中的指纹数目n,以根据所述指纹数目n和所述概率p估计该候选哈希桶的全局插入数目为:
其中,m为所述布谷鸟过滤器的总容量,f为所述布谷鸟过滤器中当前的指纹数目,b为每个哈希桶所包含的槽数。
3.如权利要求2所述基于插入位置选择的数据近似集合表示方法,其特征在于,估计任意一个候选哈希桶的全局插入数目,其方法还包括:
对所述全局插入数目S进行简化,以得到该候选哈希桶最终的全局插入数目为:S′=n+b(1-α)×RC。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华中科技大学,未经华中科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910419541.0/1.html,转载请声明来源钻瓜专利网。