SuRF: Practical Range Query Filtering with Fast Succinct Tries(sigmod2018 huancheng zhang)

SuRF是基于Fast Succinct Trie (FST) 的一种新型过滤器,提供近似的成员资格测试,支持单键和范围查询。与传统布隆过滤器相比,SuRF具有更高的查询效率和可调整的误报率。FST是一种空间优化的静态trie,结合了loud-dense和loud-sparse编码,实现了高性能和紧凑存储。在RocksDB中的实验表明,SuRF能显著减少I/O操作,提高范围查询速度,而对点查询性能影响较小。
摘要由CSDN通过智能技术生成

本文提出了简洁Succinct Range Filter(SuRF),一种用于近似隶属度测试的快速而紧凑的数据结构与传统的布隆过滤器不同,SuRF既支持单键查找,也支持常见的范围查询:开放范围查询、封闭范围查询和范围计数。SuRF基于一种新的数据结构——快速简洁的Trie (FastSuccinct Trie, FST),它与最新的保序索引的点和范围查询性能相匹配,而每个Trie节点只消耗10比特。SuRF算法中点查询和范围查询的误报率都是可调的,以满足不同的应用需求评估了RocksDB中的SuRF,将其作为布隆过滤器的替代,通过在访问磁盘数据结构之前过滤请求来减少I/O。在100 GB数据集上的实验表明,用surf替换RocksDB的布隆过滤器,可以将open-seek(无上界)和closed-seek(有上界)查询速度分别提高1.5倍和5倍,而由于略高的误报率,在最坏情况下(全缺失)点查询吞吐量的代价并不大。 

2 FAST SUCCINCT TRIES 

SuRF的核心数据结构是FST。它是一个节省空间的静态trie,可以回答点和范围查询。

FST的设计是基于这样的观察:trie的上层包含少量节点,但会引起许多访问。较低的层次包含了大多数节点,但相对“冷”一些。因此,我们使用快速的基于位图的编码方案(loud - dense)对上层进行编码,其中子节点搜索只需要一次数组查找,选择了性能而不是空间。我们使用空间高效

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值