判断给定数据是否存在:比如判断一个数字是否在包含大量数字的数字集中、 防止缓存穿透(判断请求的数据是否有效避免直接绕过缓存请求数据库)等等、邮箱的垃圾邮件过滤、黑名单功能等等;
去重:比如爬给定网址的时候对已经爬取过的 URL 去重。
下面,我们再来看看如果想要手动实现一个的话,那么需要以下几步:
- 合适大小的位数组保存数据
- 几个不同的哈希函数
- 添加元素到位数组(布隆过滤器)的方法实现
- 判断给定元素是否存在于位数组(布隆过滤器)的方法实现。
判断给定数据是否存在:比如判断一个数字是否在包含大量数字的数字集中、 防止缓存穿透(判断请求的数据是否有效避免直接绕过缓存请求数据库)等等、邮箱的垃圾邮件过滤、黑名单功能等等;
去重:比如爬给定网址的时候对已经爬取过的 URL 去重。
下面,我们再来看看如果想要手动实现一个的话,那么需要以下几步: