小的的的小的的

 

Bloom Filter学习

参考文献:

 Bloom Filters - the math    http://pages.cs.wisc.edu/~cao/papers/summary-cache/node8.html

   Bloom Filter概念和原理    http://blog.csdn.net/jiaomeng/article/details/1495500

   BloomFilter——大规模数据处理利器    http://www.cnblogs.com/heaad/archive/2011/01/02/1924195.html

一、简介

    一种多哈希函数映射的快速查找算法,发表人:Bloom,年份:1970。

二、使用场景

    快速判断某个元素是否属于某个集合(集合数据量庞大),不严格要求100%正确。

三、核心思想

    Bloom Filter在时间空间这两个因素之外又引入了另一个因素:错误率。在使用Bloom Filter判断一个元素是否属于某个集合时,会有一定的错误率。也就是说,有可能把不属于这个集合的元素误认为属于这个集合(False Positive),但不会把属于这个集合的元素误认为不属于这个集合(False Negative)。在增加了错误率这个因素之后,Bloom Filter通过允许少量的错误来节省大量的存储空间。

四、原理

    

五、参数选定

   m位的位数组

    n个元素的集合 :S={x1, x2,…,xn}

 

    k个相互独立的哈希函数,将每个元素映射到{1...m}的范围

    结论:对于给定的m、n,当 k = ln(2)* m/n 时出错的概率是最小的。

 

posted on 2017-01-05 09:06  小的的的小的的  阅读(124)  评论(0编辑  收藏  举报

导航