当前位置: 首页 > 专利查询>湖南大学专利>正文

动态存储键值对的布鲁姆过滤器树结构及键值对存储方法技术

技术编号:16529059 阅读:198 留言:0更新日期:2017-11-09 20:50
本发明专利技术公开了一种动态存储键值对的布鲁姆过滤器树结构及键值对存储方法,布鲁姆过滤器树结构包括完全d叉树;其特征在于,每一棵完全d叉树的每一个节点都是一个布鲁姆过滤器;每一棵完全d叉树的每个叶子节点表示一个值value;每一个节点的存储单元大小是该节点的父节点的存储单元大小的一半,根节点包括d×k个不相同的哈希函数,即根节点包括d个哈希组,每组中包含k个哈希函数。本发明专利技术在数据库交互查询、高速网络中资源定位、计算机网络监控等产生大量数据、需要进行键值对查询的应用领域,可以大大减少集合查询的时间,降低资源消耗,处理动态到达的数据,适应网络环境。

【技术实现步骤摘要】
动态存储键值对的布鲁姆过滤器树结构及键值对存储方法
本专利技术涉及计算机网络领域和计算机系统存储领域,特别是高性能、高吞吐量的交互查询的应用领域,具体是一种可扩展的布鲁姆树对于键值对的存储结构及方法。
技术介绍
近年来,随着计算机的飞速发展,数据库,网络和其他应用中的集合规模呈几何增长。存储和查询键值对(key,value)是计算机系统中常见的任务,这就需要设计对应的键值对存储数据结构,支持快速的键值对查询。键值对操作经常出现在网络和存储系统中,如key-value数据库MongoDB,CouchDB。每个放入到键值对存储系统中的唯一键key都对应一个value,例如(3,5)是一个键key为3,值value为5的键值对,将(3,5)存储到键值对存储系统后,可以通过查询键(key)为3,得到值(value)为5。设计高效的键值对存储及查询结构带来了巨大的挑战。在一个2层交换机中,一个MAC地址关联一个唯一的端口。当要转发一帧时,搜索引擎会查询这一帧要转发的目的地址的MAC表,因此,将一个MAC地址映射到一个端口的问题就转换成了一个键值对查询问题,这个时候,MAC地址就被看成了key,本文档来自技高网...
动态存储键值对的布鲁姆过滤器树结构及键值对存储方法

【技术保护点】
一种动态存储键值对的布鲁姆过滤器树结构,包括完全d叉树;其特征在于,每一棵完全d叉树的每一个节点都是一个布鲁姆过滤器;每一棵完全d叉树的每个叶子节点表示一个值value;每一个节点的存储单元大小是该节点的父节点的存储单元大小的一半,根节点包括d×k个不相同的哈希函数,即根节点包括d个哈希组,每组中包含k个哈希函数。

【技术特征摘要】
1.一种动态存储键值对的布鲁姆过滤器树结构,包括完全d叉树;其特征在于,每一棵完全d叉树的每一个节点都是一个布鲁姆过滤器;每一棵完全d叉树的每个叶子节点表示一个值value;每一个节点的存储单元大小是该节点的父节点的存储单元大小的一半,根节点包括d×k个不相同的哈希函数,即根节点包括d个哈希组,每组中包含k个哈希函数。2.一种利用权利要求1所述的布鲁姆过滤器树结构进行键值对存储的方法,其特征在于,包括:插入操作:当需要插入一个键值对(key,value)时,首先查看value是否已经插入到布鲁姆过滤器中,如果未插入,则需要进行后续的增加新value操作;如果value已经存在于布鲁姆过滤器树中,则直接进行键值对插入,根据value查找该value对应的叶节点,得到此叶节点位置编码,确定一条从根节点到此叶节点的唯一路径,计算根节点的两组哈希函数,即对key使用k个哈希函数h(i,1),h(i,2),...,h(i,k),计算h(i,1)(key),h(i,2)(key),...,h(i,k)(key),;其中i表示选取哈希函数的组号,i=1或2;将i=1计算的哈希值保存在数组A中,将i=2计算的哈希值保存在数组B中;接着,根据叶节点的第一位编码,在根节点选取A、B数组中的一组值进行插入,即对A或B数组进行右移零位操作,然后根据叶节点的第一位编码,得到下一个需要进行插入操作的布鲁姆过滤器,再根据叶节点的第二位编码,选取A、B数组中的一组值进行右移一位操作,得到插入位置,进行插入;继续进行上述操作,对每一层布鲁姆过滤器插入key,直到插到value对应的叶节点为止;查询操作:需要查询一个键值key对应的value时,首先,计算根节点的两组哈希函数h(i,1)(key),...

【专利技术属性】
技术研发人员:潘海娜凌纯清谢鲲
申请(专利权)人:湖南大学
类型:发明
国别省市:湖南,43

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

1