Bloom Filter

先来看下哈希函数的作用,利用哈希函数将keys映射到一个地址上来

再来看下布隆过滤器的构成
由映射函数映射keys到二进制向量的某些位置上
优点在于速度非常非常的快,如果判断元素不在集合里面,那么肯定不在,如果判断在,那么有一定的几率不在

举例
x, y, z分别映射到二进制的位置上,如下图所示,那么查询w时,w的映射位置没有1,那么w肯定不在集合中

同理,A E插入进去之后,判断A在,正确,C不在,正确,B在,错误,那么B就是判断错误的例子

案例,用途

在比特币网络中


在数据库之前放置Bloom Filter,排除掉没有交易记录的查询,这样可以减少数据库查询的数量。注意布隆过滤器一定要跟有数据库,不能单独作为查询系统使用。