[发明专利]动态布隆过滤器和基于动态布隆过滤器的元素操作方法有效
申请号: | 201410231110.9 | 申请日: | 2014-05-28 |
公开(公告)号: | CN105320654B | 公开(公告)日: | 2018-08-31 |
发明(设计)人: | 刘屹;黄晓霞;葛雄资;吕婧;沈昀 | 申请(专利权)人: | 中国科学院深圳先进技术研究院 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 深圳中一专利商标事务所 44237 | 代理人: | 张全文 |
地址: | 518000 广东省深圳*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 动态 过滤器 基于 元素 操作方法 | ||
1.一种动态布隆过滤器,其特征在于,所述动态布隆过滤器包含sm个同构子布隆过滤器BF,以se为锚点,所述sm个同构子布隆过滤器BF被分为组子链表,所述组子链表中每组子链表被指派一个索引线程以对所述组子链表进行并行操作,所述se为每个子链表的期望长度;
根据键-值存储系统的性能需求,所述动态布隆过滤器的相关参数被初始化为定值,所述相关参数包括元素查询的最坏时间代价Qw、动态布隆过滤器的假阳性错误概率的上限期望值Fmax、每个所述同构子布隆过滤器BF的假阳性错误概率的期望值fppe、每个所述同构子布隆过滤器BF最多索引元素个数n、每个所述同构子布隆过滤器BF的内存消耗空间大小m、所述sm个同构子布隆过滤器BF总的内存消耗空间大小M和所述每个子链表的期望长度se。
2.根据权利要求1所述的动态布隆过滤器,其特征在于,所述sm个同构子布隆过滤器BF中每个同构子布隆过滤器BF分别对应负责键-值存储系统中每个独立键-值存储容器。
3.根据权利要求1所述的动态布隆过滤器,其特征在于,所述键-值存储系统的性能需求包括键-值存储系统的读写代价CA、每个所述同构子布隆过滤器BF的平均查询代价Sb、键-值存储系统确定元素是否存在的平均查询代价Sq、从键-值存储系统读取一个元素的平均代价sr和将一个元素写入键-值存储系统的平均代价sw。
4.一种基于动态布隆过滤器的元素操作方法,其特征在于,所述动态布隆过滤器为权利要求1至3任意一项所述的动态布隆过滤器,所述方法包括个索引线程并行查询组子链表,每个所述索引线程递归查询所述组子链表对应的一组子链表,所述一组子链表对应se个同构子布隆过滤器BF,所述|Xt|为当前索引空间的存储规模,所述sm为所述动态布隆过滤器中同构子布隆过滤器BF的个数,所述se为每个子链表的期望长度;
所述每个索引线程递归查询所述组子链表对应的一组子链表包括:
所述个索引线程中的任意一个索引线程Pi查询所述组子链表中任意一组子链表Li下的任意一个同构子布隆过滤器BF;
若子链表Li下的任意一个同构子布隆过滤器BF没有匹配到待查找元素x,则遍历所述子链表Li下的另一个同构子布隆过滤器BF;
若任意一个同构子布隆过滤器BF匹配到所述待查找元素x,则返回匹配到所述待查找元素x的同构子布隆过滤器BF;
若遍历所述组子链表中所有子链表Li下的同构子布隆过滤器BF均没有匹配到所述待查找元素x,则返回所述待查找元素x未被存储的消息。
5.根据权利要求4所述的方法,其特征在于,所述若任意一个同构子布隆过滤器BF匹配到所述待查找元素x,则所述方法还包括:
进一步查找所述匹配到所述待查找元素x的任意一个同构子布隆过滤器BF对应的键-值存储容器是否真正存在所述待查找元素x。
6.根据权利要求5所述的方法,其特征在于,若所述匹配到所述待查找元素x的任意一个同构子布隆过滤器BF对应的键-值存储容器真正存在所述待查找元素x,则向所述个索引线程中的其他索引线程发送信号以结束查找过程。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院深圳先进技术研究院,未经中国科学院深圳先进技术研究院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410231110.9/1.html,转载请声明来源钻瓜专利网。