[发明专利]动态布隆过滤器和基于动态布隆过滤器的元素操作方法有效
申请号: | 201410231110.9 | 申请日: | 2014-05-28 |
公开(公告)号: | CN105320654B | 公开(公告)日: | 2018-08-31 |
发明(设计)人: | 刘屹;黄晓霞;葛雄资;吕婧;沈昀 | 申请(专利权)人: | 中国科学院深圳先进技术研究院 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 深圳中一专利商标事务所 44237 | 代理人: | 张全文 |
地址: | 518000 广东省深圳*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 动态 过滤器 基于 元素 操作方法 | ||
本发明公开了一种动态布隆过滤器,以根据实际应用场景设计布隆过滤器,减小内存空间的消耗和计算元素哈希映射的代价。所述动态布隆过滤器包含sm个同构子布隆过滤器BF,以se为锚点,sm个同构子BF被分为组子链表,组子链表中每组子链表被指派一个索引线程以对组子链表进行并行操作,se为每个子链表的期望长度;根据键‑值存储系统的性能需求,动态布隆过滤器的相关参数被初始化为定值。一方面,键‑值存储系统可以支持不同集合的并行多线程索引查询,提升了索引整体吞吐率;另一方面,支持并行查询优化和BF之间的位向量操作,有利于资源管理;第三方面,能够估算性能和索引空间的最佳平衡点。
技术领域
本发明涉及数据存储领域,具体涉及动态布隆过滤器和基于动态布隆过滤器的元素操作方法。
背景技术
对于当今大规模、高性能的数据密集型应用,基于键-值(Key-Value,K-V)的存储系统是影响应用性能的至关重要的构件。因此,无论在商业领域还是学术范畴,例如,重复数据删除系统、电子商务平台、数据库字典和网络对象缓存技术等,高性能的K-V存储系统设计都得到了广泛的关注。
为了实现低延迟和高吞吐率的性能需求,并充分利用有限的I/O资源,K-V存储系统需要高效、紧凑的内存索引方案来快速确定请求的数据是不是特定集合的成员。一方面,基于内存K-V存储系统,例如,memcached、RAMCloud、Redis等,将索引全部存入内存从而避免磁盘查找导致的性能瓶颈,目前高性能的K-V存储需要每秒能支持数万甚至是数十万的查询请求,然而,内存容量随着存储规模地递增而成倍地增长将导致购买价格和功耗呈指数型增长,因此,索引的空间开销成为影响K-V存储系统可伸缩性和整体成本效益的最重要的要素之一;另一方面,基于磁盘的索引查询效率太低,一般而言,磁盘的查询代价在毫秒级别,因此,每秒吞吐率在千次以下,特别是,当某个请求索引未匹配时将导致磁盘的一次空查找,从而极大地影响了整个K-V系统的吞吐率。
布隆过滤器(Bloom Filter,BF)是一个基于位向量的支持数据高效查询的空间紧凑型数据结构。每个元素查询是基于一组基于key的随机哈希(Hash)函数,若由哈希函数生成的每个在位向量映射的位置的值都非0,则该元素被判定为属于存储集合,若任意一个映射位的值为0,则该元素不属于该存储集合。但是,由于不同key的映射函数可能映射到位向量的同一位置,因此,当插入位向量的元素达到一定规模时,可能存在某个元素不属于某个存储集合但该元素的所有映射位被其它已存储的元素置为非0,从而被误认为属于该存储集合,即假阳性错误(False Postive),只要假阳性错误概率(False Postive Probablity,FPP)在能容忍的合理范围内,由于其哈希映射的常数时间和紧凑的存储空间开销,使得它在K-V存储系统设计中得到了广泛地应用。
现有的一种布隆过滤器即可扩展布隆过滤器(Scalable Bloom Filter,SBF)是支持元素动态扩展的主要方案,其基本原理是将BF的空间分配以粒度更小的子BF为单位,若当前所有子BF存储的元素已满,那么将分配一个新的子BF来支持元素的插入,每个新分配的子BF加入到一个链表的队首。当对元素进行查询操作时,将从链表的队首即最新插入的子BF起遍历查询(保证空间局部性原理,最近访问的数据可能会被再次访问)。若存在某个子BF确实包含了该元素,则遍历结束返回查找成功的信息,若当前子BF并没有包含该元素(包括发生假阳性错误),则继续查找下一个子BF,若所有子BF均遍历但未查找到该元素,则返回元素查找失败的信息。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院深圳先进技术研究院,未经中国科学院深圳先进技术研究院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410231110.9/2.html,转载请声明来源钻瓜专利网。