Adaptive Range Filters for Cold Data: Avoiding Trips to Siberia
布隆过滤器是一种很好的技术,可以用来测试一个键是否不在一组键中。本文提出了一种新的数据结构ARF。简而言之,ARFs用于范围查询,就像布隆过滤器用于点查询一样。也就是说,ARF可以确定一组键是否不包含任何属于特定范围的键。本文描述了高效实现ARFs的原理和方法,并给出了对ARFs的精度、空间和延迟进行评估的实验结果。此外,本文还展示了如何将ARFs应用于一个商业数据库系统,该系统将数据划分为热区域和冷区域,以优化只涉及热数据的查询。
一贡献:
主要贡献是提出了一种新的基于trie树的自适应范围过滤器(ARF)。简而言之,ARF是用于范围查询的布隆过滤器。也就是说,ARF可以用于索引任何有序的域(例如,日期、工资等),并且可以探测该域上的任何范围查询是否有潜在的匹配。就像布隆过滤器一样,arf快速、紧凑(即空间高效),并且可以优雅地降级
ARFs的一个特殊特性是它们是自适应的。ARFs动态地学习查询和数据分布,并据此调整它们的结构。可以在开头使用一个空的ARF。随着处理的查询越来越多,ARFs会根据查询反馈(误报)以细粒度的方式进行自调优。具体来说,ARFs通过以细粒度方式索引域的重要区域(例如,热和波动区域)和以粗粒度方式索引不太重要的区域来