全国服务热线:400-035-8011

位置:郑州达内IT教育培训机构 > 学校动态 > 什么是布隆过滤器

什么是布隆过滤器

来源:郑州达内IT教育培训机构时间:2021/8/17 10:33:55

  什么是布隆过滤器
  1、安装(Docker)
  docker pull redislabs/rebloom
  docker run-p 6379:6379--name redis-bloom redislabs/rebloom
  docker exec-it redis-bloom bash
  2、概念
  它的存在时为了检索一个元素是否存在一个集合中,它的空间效率和时间效率都远远超过普通的算法,但数据量庞大的话会有一定的误判率。
  3、实现原理
  当一个元素加入到布隆过滤器的集合中时,通过K个hash函数将这个元素映射成为一个数组中的下标,并将数组下标所在的值设置为1。
  在检索值是否存在时,只需要通过K次hash函数找到对应的坐标,并判断这些元素的值是否为1,
  l若全部为1则有可能存在,
  l若全为0则肯定不存在。

  这里不列举布隆过滤器的数学公式,个人觉得对理解原理没有什么帮助。

什么是布隆过滤器

  4、设定错误率和预计存储数量。
  布隆过滤器是有一定误差率的,如果我们对其存数值进行估计,尽量在设定存储数量时设置得大一点,这样就可能避免误判。
  5、总结
  事实上布隆过滤器的使用场景很多,也能解决或避免很多问题,如缓存穿透等,我们在使用它时,真正了解其优缺点,才能放心地使用,并通过优化尽量避免其缺点,从而发挥其较大价值。
  6、延伸
  布隆过滤器的缺点其一是对已经增加的值无法进行删除,那么有一个过滤器可以解决这个问题,那就是布谷鸟过滤器,功能几乎与布隆过滤器一致,但是布谷鸟过滤器是可以将已增加的元素进行删除。
领取试听课
每天限量名额,先到先得

尊重原创文章,转载请注明出处与链接:http://www.peixun360.com/3849/news/396682/违者必究! 以上就是郑州达内IT教育培训机构 小编为您整理 什么是布隆过滤器的全部内容。

温馨提示:提交留言后老师会第一时间与您联系!热线电话:400-035-8011