【redis】布隆过滤器BloomFitter
文章目录
- 【redis】布隆过滤器BloomFitter
- 前言
- 一、面试题
- 二、是什么
- 1、设计思想: 本质就是判断具体数据是否存在于一个大的集合当中
 
- 三、布隆过滤器特点
- 1、重点 有,是可能有,无是一定无
- 2、小总结
 
- 四、原理
- 1、原理
- 2、添加、查询key
- 3、hash碰撞导致数据不精准
- 4、hash碰撞
- 5、过滤器误判,为什么不删除?
- 6、小总结
 
- 五、使用场景
- 1、解决缓存穿透
- 2、黑名单校验,识别垃圾邮件
 
- 六、尝试手写布隆过滤器,结合bitmap自研一下体会思想
- 1、整体架构
- 2、设计步骤
- 3、java端 的插入 读取操作
- 插入mysql+redis
- 读取redis+mysql
- 二进制数组构建过程 理论
- 布隆过滤器初始化加载工具,即上一步的具体化操作
- 检查性工具 检查是否在布隆过滤器中存在
- 重新修改最开始的 读写操作
- 测试说明
 
 
- 七、布隆过滤器优缺点
- 优点
- 缺点
- 布谷鸟过滤器(了解)
 
前言

一、面试题

二、是什么

1、设计思想: 本质就是判断具体数据是否存在于一个大的集合当中

 
 
三、布隆过滤器特点

1、重点 有,是可能有,无是一定无

2、小总结

四、原理

1、原理

2、添加、查询key

3、hash碰撞导致数据不精准

 
4、hash碰撞

5、过滤器误判,为什么不删除?

6、小总结

五、使用场景

1、解决缓存穿透

 
2、黑名单校验,识别垃圾邮件

六、尝试手写布隆过滤器,结合bitmap自研一下体会思想

1、整体架构

2、设计步骤

3、java端 的插入 读取操作
插入mysql+redis

读取redis+mysql

二进制数组构建过程 理论

布隆过滤器初始化加载工具,即上一步的具体化操作

检查性工具 检查是否在布隆过滤器中存在

重新修改最开始的 读写操作
读取时判断是否在 白名单中
 
测试说明

七、布隆过滤器优缺点
优点

缺点

布谷鸟过滤器(了解)
主流还是布隆过滤器,没有升级换代的需求。。。



















