布隆过滤器


说明

布隆过滤器是一个二进制数组加多个hash函数来完成数据的查询和存储。 将输入的key通过多个hash函数,算出一个值, 然后将这个值与数组
对应的位置置为0。如果一个key,经过多个hash函数得到的值,在数组中查不到,那么一定可以确定这个key不存储。如果查到,只能说明这个key可能存在。因为当数据量变得很大的时候,多个hash函数得到的值可能重复,这种现象为hash碰撞。

优点

  1. 由于是二进制数组,占用空间少。
  2. 查询和插入的效率非常高

    缺点

  3. 牺牲了准确率
  4. 删除非常的困难

    优化方式

  5. 适当增大数组长度
  6. 增加hash函数

使用场景

  1. 号码,url地址去重
  2. 邮箱过滤

文章作者:
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 !
评论
  目录