中文

迈向流中的“智能压缩”:一种基于偏置水库采样的布隆过滤器方法

信息检索 2015-03-19 v1 数据结构与算法

摘要

随着全球存储信息的爆炸式增长,数据密集型计算已成为研究的核心领域。高效管理和处理来自电信通话记录、在线交易记录等多样源的海量指数级数据已成为必然需求。从此类巨大(数十亿条记录)数据集中去除冗余,从而实现下游处理的资源和计算效率,构成了一个重要的研究领域。在流式场景中,“智能压缩”或去重,即从无限数据流中精确识别并消除重复项,鉴于数据到达的实时性,是一个更大的挑战。稳定布隆过滤器(Stable Bloom Filters, SBF)在一定程度上解决了这个问题。然而,SBF 具有较高的假阴性率(FNR)和较慢的收敛速度,因此对于低 FNR 容忍度的应用而言效率低下。在本文中,我们提出了一种新颖的基于水库采样的布隆过滤器(Reservoir Sampling based Bloom Filter, RSBF)数据结构,它结合了水库采样和布隆过滤器的概念,用于数据流中重复项的近似检测。通过详细的理论分析,我们证明了其在低内存需求下的假阳性率(FPR)、假阴性率(FNR)和收敛速度的解析界。我们表明,RSBF 提供了目前最低的 FN 和收敛速度,且在使用相同内存的情况下优于 SBF。通过对真实世界数据集(300 万条记录)和合成数据集(约 10 亿条记录)的实证分析,我们展示了与 SBF 相比,FNR 提高了高达 2 倍,收敛速度更快,同时表现出可比的 FPR。据我们所知,这是首次尝试将水库采样方法与布隆过滤器集成,以用于流式场景中的去重。

关键词

引用

@article{arxiv.1111.0753,
  title  = {Towards "Intelligent Compression" in Streams: A Biased Reservoir Sampling based Bloom Filter Approach},
  author = {Sourav Dutta and Souvik Bhattacherjee and Ankur Narang},
  journal= {arXiv preprint arXiv:1111.0753},
  year   = {2015}
}

备注

11 pages, 8 figures, 5 tables