redis布隆过滤器

引入布隆过滤器
原理
布隆过滤器误差率
本地布隆过滤器
redis单机布隆过滤器
redis分布式布隆过滤器

 

问题:
现有50亿个电话号码,现有10万个电话号码,要快速准确地判断这些号码是否存在?
-  通过数据库查询, 速度很慢
-  将数据全部放在集合中, 50亿*8字节 = 40GB 内存浪费
-  hyperloglog      准确有点难

 

原理:一个很长的二进制向量 和若干个哈希函数

 


参数:m个二进制向量,n个与本数据,k个哈希函数

构建:50亿 个预备数据走一遍上边过程

判断元素存在;走一遍上面过程,如果都是1,则表明存在,否咋不存在

误差率: (在对该Key进行哈希前,能保证二进制位为0么)

 

 

 


 


 


 

posted @ 2020-05-19 22:51  慕沁  阅读(113)  评论(0)    收藏  举报