当前位置: X-MOL 学术arXiv.cs.DB › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
bloomRF: On Performing Range-Queries with Bloom-Filters based on Piecewise-Monotone Hash Functions and Dyadic Trace-Trees
arXiv - CS - Databases Pub Date : 2020-12-31 , DOI: arxiv-2012.15596
Christian Riegger, Arthur Bernhardt, Bernhard Moessner, Ilia Petrov

We introduce bloomRF as a unified method for approximate membership testing that supports both point- and range-queries on a single data structure. bloomRF extends Bloom-Filters with range query support and may replace them. The core idea is to employ a dyadic interval scheme to determine the set of dyadic intervals covering a data point, which are then encoded and inserted. bloomRF introduces Dyadic Trace-Trees as novel data structure that represents those covering intervals implicitly. A Trace-Tree encoding scheme represents the set of covering intervals efficiently, in a compact bit representation. Furthermore, bloomRF introduces novel piecewise-monotone hash functions that are locally order-preserving and thus support range querying. We present an efficient membership computation method for range-queries. Although, bloomRF is designed for integers it also supports string and floating-point data types. It can also handle multiple attributes and serve as multi-attribute filter. We evaluate bloomRF in RocksDB and in a standalone library. bloomRF is more efficient and outperforms existing point-range-filters by up to 4x across a range of settings.

中文翻译:

bloomRF:使用基于分段单调哈希函数和二元跟踪树的布隆过滤器执行范围查询

我们将bloomRF引入为近似成员资格测试的统一方法,该方法支持在单个数据结构上同时进行点查询和范围查询。bloomRF使用范围查询支持扩展了Bloom-Filters,并且可以替换它们。核心思想是采用二进间隔方案来确定覆盖数据点的二进间隔集,然后对它们进行编码和插入。bloomRF引入了Dyadic跟踪树作为新颖的数据结构,该结构隐式表示间隔。跟踪树编码方案以紧凑的位表示形式有效地表示了覆盖间隔的集合。此外,bloomRF引入了新颖的分段单调哈希函数,这些函数在本地保留顺序,因此支持范围查询。我们提出了一种有效的范围查询成员计算方法。虽然,bloomRF是为整数设计的,它还支持字符串和浮点数据类型。它还可以处理多个属性并用作多属性过滤器。我们在RocksDB和独立库中评估BloomRF。bloomRF效率更高,并且在一系列设置中的性能比现有的点范围滤波器高出4倍。
更新日期:2021-01-01
down
wechat
bug