布隆过滤器、一致性哈希算法总结
来源:互联网 发布:互网络出版许可证 编辑:程序博客网 时间:2024/06/03 19:36
认识布隆过滤器
不安全网页的黑名单包含 100 亿个黑名单网页,每个网页的 URL 最多占用 64B。 现在想要实现一种网页过滤系统,可以根据网页的 URL 判断该网页是否在黑名单上,请设计该系统。
1.该系统允许有万分之一以下的判断失误率。
2.使用的额外空间不要超过 30GB。
哈希离散函数性质:
①输入域无穷大
②输出域有限
③当输入同样的参数,一定有相同的输出值
④在不同输入值的情况下,对于结果域中的不同输出值出现概率相等
结果结果分布越离散,该函数性能越好
一般这种题,应该问是否可以有失误的情况
预期样本量,预期失误率,选择多少个哈希函数,输入域无限制,十分省空间
一致性哈希算法的基本原理
工程师常使用服务器集群来设计和实现数据缓存,以下是常见的策略:
1.无论是添加、查询还是删除数据,都先将数据的 id 通过哈希函数转换成一个 哈希值,记为 key。
2.如果目前机器有N台,则计算key%N的值,这个值就是该数据所属的机器编号,无论是添加、删除还是查询操作,都只在这台机器上进行。
请分析这种缓存策略可能带来的问题,并提出改进的方案。
解决数据迁移的压力,便于扩容
若真实机器数量不足以体现离散的优势,则主要思路是添加很大数量的虚拟机,并维持一个路由表,以实现一致性哈希算法的优势
不安全网页的黑名单包含 100 亿个黑名单网页,每个网页的 URL 最多占用 64B。 现在想要实现一种网页过滤系统,可以根据网页的 URL 判断该网页是否在黑名单上,请设计该系统。
1.该系统允许有万分之一以下的判断失误率。
2.使用的额外空间不要超过 30GB。
哈希离散函数性质:
①输入域无穷大
②输出域有限
③当输入同样的参数,一定有相同的输出值
④在不同输入值的情况下,对于结果域中的不同输出值出现概率相等
结果结果分布越离散,该函数性能越好
一般这种题,应该问是否可以有失误的情况
预期样本量,预期失误率,选择多少个哈希函数,输入域无限制,十分省空间
一致性哈希算法的基本原理
工程师常使用服务器集群来设计和实现数据缓存,以下是常见的策略:
1.无论是添加、查询还是删除数据,都先将数据的 id 通过哈希函数转换成一个 哈希值,记为 key。
2.如果目前机器有N台,则计算key%N的值,这个值就是该数据所属的机器编号,无论是添加、删除还是查询操作,都只在这台机器上进行。
请分析这种缓存策略可能带来的问题,并提出改进的方案。
解决数据迁移的压力,便于扩容
若真实机器数量不足以体现离散的优势,则主要思路是添加很大数量的虚拟机,并维持一个路由表,以实现一致性哈希算法的优势
阅读全文
0 0
- 布隆过滤器、一致性哈希算法总结
- 【总结】一致性哈希算法(Memcached)
- memcache中一致性哈希算法总结
- 一致性哈希算法
- 一致性哈希算法
- 一致性哈希算法
- 一致性哈希算法
- 一致性哈希算法
- 一致性哈希算法
- 一致性哈希算法
- 一致性哈希算法
- 一致性哈希算法
- 一致性哈希算法
- 一致性哈希算法
- 一致性哈希算法
- 一致性哈希算法
- 一致性哈希算法
- 一致性哈希算法
- 左神课堂开始
- zoj 3471 Most Powerful(状态压缩DP)
- B树
- Spring AOP之动态代理原理解析
- J-link V8在win7 64位系统下刷固件方法
- 布隆过滤器、一致性哈希算法总结
- word仿宋GB2312被其他字体替换的解决方案
- 隐藏系统自带的标题栏
- Java集群优化——dubbo+zookeeper构建高可用分布式集群
- java.lang.ClassNotFoundException:org.apache.ws.commons.schema.resolver.URIResolver错误
- nginx.conf
- html中的src与href的区别
- Oracle字符拼接函数中文乱码问题
- 常见面试题整理--数据库篇(每位开发者必备)