Skip to main content
QUICK REVIEW

[论文解读] RobustBF: A High Accuracy and Memory Efficient 2D Bloom Filter

Nayak, Sabuzima, Patgiri, Ripon|arXiv (Cornell University)|Jun 6, 2021
Caching and Content Delivery参考文献 16被引用 4
一句话总结

该论文提出 robustBF,一种新型的二维布隆过滤器,通过优化穆尔哈希函数并采用质数维度的二维位数组结构,在不牺牲性能的前提下,将误报率降至接近零,与计数布隆过滤器相比内存使用量降低最多达44倍,与标准布隆过滤器相比降低10倍。

ABSTRACT

Bloom Filter is an important probabilistic data structure to reduce memory consumption for membership filters. It is applied in diverse domains such as Computer Networking, Network Security and Privacy, IoT, Edge Computing, Cloud Computing, Big Data, and Biometrics. But Bloom Filter has an issue of the false positive probability. To address this issue, we propose a novel robust Bloom Filter, robustBF for short. robustBF is a 2D Bloom Filter, capable of filtering millions of data with high accuracy without compromising the performance. Our proposed system is presented in two-fold. Firstly, we modify the murmur hash function, and test all modified hash functions for improvements and select the best-modified hash function experimentally. Secondly, we embed the modified hash functions in 2D Bloom Filter. Our experimental results show that robustBF is better than standard Bloom Filter and counting Bloom Filter in every aspect. robustBF exhibits nearly zero false positive probability with more than $10 imes$ and $44 imes$ lower memory consumption than standard Bloom filter and counting Bloom Filter, respectively.

研究动机与目标

  • 解决传统布隆过滤器中高误报率的长期问题,同时最小化内存使用量。
  • 在不降低插入或查询性能的前提下,提升成员过滤器的准确率与内存效率。
  • 设计一种二维布隆过滤器变体,在目标误报率0.001下将误报率降至几乎为零。
  • 针对二维过滤结构优化穆尔哈希函数,以实现更优的分布特性与更低的冲突率。
  • 证明 robustBF 在内存消耗、速度与准确率方面均优于标准布隆过滤器与计数布隆过滤器。

提出的方法

  • 作者通过实验评估对穆尔哈希函数进行修改,选择在位分布与冲突减少方面表现最佳的变体。
  • 采用两个质数维度(X 和 Y)实现二维布隆过滤器结构,以最小化误报率并确保置位位的均匀分布。
  • 二维数组的构建方式为 X = P_{i+3} 且 Y = P_{i-3},其中 P_i 为预计算的质数列表,以确保最优的数组维度。
  • 过滤器使用理论公式推导出的最优哈希函数数量的一半,并通过对 X 和 Y 取模运算进行索引计算。
  • 内存分配为无符号长整型的二维数组,每个单元格包含 β 位,总内存为 X × Y × β 位。
  • 系统采用混合方法:使用优化的哈希函数进行输入映射,结合二维数组结构以减少误报率,同时保持快速的插入与查询性能。

实验结果

研究问题

  • RQ1通过优化哈希函数的二维布隆过滤器能否在显著降低内存使用量的同时实现接近零的误报概率?
  • RQ2哈希函数的选择如何影响二维布隆过滤器中的误报率与性能表现?
  • RQ3采用质数维度的二维布隆过滤器能否在内存效率与准确率方面优于标准与计数布隆过滤器?
  • RQ4在不损害查询或插入速度的前提下,内存消耗最多可降低多少?
  • RQ5是否可能通过新型二维结构实现接近100%的准确率,同时保持极低的内存开销?

主要发现

  • robustBF 平均相比标准布隆过滤器(SBF)内存消耗降低 10.40 倍,相比计数布隆过滤器(CBF)降低 44.01 倍。
  • robustBF 在所有测试集(包括不相交集与随机集)中的误报概率几乎为零(0),而 CBF 在此类情况下表现出极高的误报率(最高达 0.995)。
  • 在插入一千万个条目时,robustBF 比 SBF 快 2.038 倍,比 CBF 快 2.48 倍。
  • 对于一千万个条目,robustBF 仅使用 1.55MB 内存,而 CBF 使用 24MB,展现出 15.5 倍的内存减少。
  • 采用质数维度(X 与 Y)的二维结构显著降低了误报率,尤其在最坏情况数据模式(如不相交集与随机集)下效果明显。
  • 该过滤器在目标误报率 0.001 下实现了接近 100% 的准确率,是首个将高准确率与极低内存占用相结合的布隆过滤器变体。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。