布隆过滤器原理及应用
可以采用如下几种方案:
1、将访问过的URL保存到数据库
每次需要过滤网页就需要启用一个数据库select查询,且当数据量变得非常庞大后,关系型数据库查询的效率会变得很低。
2、用HashSet将访问过的URL保存起来
那只需接近O(1)的代价就可以查到一个URL是否被访问过了。但是内存消耗太大。
3、URL经过MD5或SHA-1等单向哈希后再保存到HashSet或数据库
字符串经过MD5散列处理后的信息摘要长度只有128Bit,SHA-1处理后也只有160Bit,因此方法3比方法2节省了好几倍的内存。
4、BitMap方法
建立一个BitSet,将每个URL经过一个哈希函数映射到某一位。消耗内存是相对较少的,但缺点是单一哈希函数发生冲突的概率太高。
布隆过滤器的优势在于,利用很少的空间可以做到精确率较高。
哈希表与布隆过滤器:
哈希表也能用于判断元素是否在集合中,但是Bloom Filter只需要哈希表的1/8或1/4的空间复杂度就能完成同样的问题。Bloom Filter可以插入元素,但是不可以删除已有元素。集合中的元素越多,误报率越大,但是不会漏报。
可以利用Bitmap:只要检查对应点是不是1就可以知道集合中有没有这个数。Bloom filter可以看做是对bitmap的扩展。只是使用多个hash映射函数,从而减低hash发生冲突的概率。
算法如下:
1、创建m(m=28)位的bitset,初始化为0,选中k(k=3)个不同的哈希函数;
2、第 i 个hash函数对字符串str哈希的结果记为 h(i,str),范围是(0,m-1);
3、将字符串记录到bitset的过程(即插入):对于一个字符串str,分别记录h(1,str),h(2,str)…,h(k,str),然后将bitset的h(1,str),h(2,str)…,h(k,str)位置1,也就是将一个a映射到bitset的k个二进制位;
4、检查字符串是否存在(即查找):对于字符串astr,分别计算h(1,str)、h(2,str),…,h(k,str),然后检查bitset的第h(1,str),h(2,str),…,h(k,str) 位是否为1:
若其中任何一位不为1则可以判定str一定没有被记录过;
若全部位都是1,则“认为”字符串str存在;
但是若一个字符串对应的Bit全为1,实际上是不能100%的肯定该字符串被Bloom Filter记录过的(因为有可能该字符串的所有位都刚好是被其他字符串所对应)这种将该字符串划分错的情况,称为false positive ;
5、删除字符串(删除):字符串加入了就被不能删除了,因为删除会影响到其他字符串。
Bloom Filter使用了k个哈希函数,每个字符串跟k个bit对应。从而降低了冲突的概率。
布隆过滤器相比较于传统数组、链表等数据结构,在空间和时间方面都有巨大的优势。
速度快,布隆过滤器插入/查询时间都是常数O(k)。
各个散列函数相互之间没有关系,方便由硬件并行实现。
布隆过滤器不需要存储元素本身,只是存储其存在与否的标志位,在某些对保密要求非常严格的场合有优势。
4.2 缺点误算率是其中之一。随着存入的元素数量增加,误算率随之增加。
一般情况下不能从布隆过滤器中删除元素,如果需要删除,操作耗时且复杂。
1、网页爬虫对URL的去重,避免爬取相同的URL地址;
2、反垃圾邮件,从数十亿个垃圾邮件列表中判断某邮箱是否垃圾邮箱;
3、缓存击穿,将已存在的缓存放到布隆过滤器中,当黑客访问不存在的缓存时迅速返回避免缓存及DB挂掉。
推荐文档
- 11.往年大连中考满分是多少
- 12.为什么说学播音毁一生,原因有哪些
- 13.淘宝店铺的优质好评语大全
- 14.考研可改变第一学历吗、专科考研可以改变第一学历吗
- 15.民学网查出的学历国家承认吗(民学网查出的学历国家承认吗是真的吗)
- 16.往年轻薄商务笔记本电脑推荐-商务轻薄本性价比排行
- 17.承德护理职业学院(承德护理职业学院2023年招生计划)
- 18.wreak是什么意思wreak的翻译(wake,area是什么意思中文翻译)
- 19.电子科技大学A+类学科名单有哪些(含A、B、C类学科名单)
- 20.systematic是什么意思systematic的翻译(systematically是什么意思中文翻译)
- 21.leant是什么意思leant的翻译(lean,on什么意思中文意思)
- 22.华南农业大学是几本大学,华南农业大学是一本还是二本
- 23.包头中考考试科目时间预测安排,包头中考考哪几门考哪些课程
- 24.高考430分能上什么大学,430分高考能报啥学校
- 25.朱自清的散文代表作有什么(朱自清的散文代表作有什么散文集有什么散文诗集有什么)
- 26.浙江有几所大学是985和211,全国985和211大学名单汇总
- 27.i5,1155G7和R5,5600U哪款好-对比评测
- 28.荷兰什么叫-荷兰弟为什么叫荷兰弟,出演蜘蛛侠原因曝光
- 29.警察警衔工资改革新政策及新方案【全文】解读
- 30.电大专科(电大专科毕业论文)
- 31.广东省高级技工学校官网
- 32.广州大学专科
- 33.大连陆军学院,原大连陆军学院校址现在什么是什么学校
- 34.亲们,谁给一份南京大学的研究生招生简章?(河海大学
- 35.他日若遂凌云志全诗及出处
- 36.铜绿的化学式是什么有哪些性质
- 37.「佛山市顺德养正西山学校初中部」往年录取分数线
- 38.公办本科(公办本科和民办本科有什么区别)
- 39.外交学院是名牌大学吗
- 40.往年湖南高考成绩排名一分一段表
- 41.全国有8所烟草院校是哪些(这4所大学门槛低)
- 42.私人垄断资本主义基本概念是私人垄断资本主义
- 43.难以启齿,这8部影片可以一看(性教育适合看的影片)
- 44.美国独立战争的性质爆发战争的原因是什么
- 45.往年东莞市高中排名前十最新
- 46.大朗网络教育(大朗教育)
- 47.往年甘肃省高中排名最好的高中
- 48.逻辑思维训练有哪些方法优秀训练方法推荐
- 49.浙江大学教务管理系统
- 50.人类的动物老师有哪些这属于什么学科
- 51.往年山西高考状元榜_山西历届高考理科状元和文科状元
- 52.往年北京舞蹈学院艺术类招生简章招生人数及专业
- 53.航空最好的5个专业就业前景如何
- 54.太原科技大学怎么样及评价好不好太原科技大学口碑如何
- 55.满招损谦受益这句话的意思是什么出自哪
- 56.舍本逐末发生在什么时期含义是什么
- 57.女孩子首选十大专业什么专业适合女生
- 58.国防生是什么意思指的是什么
- 59.河南省三本学院有哪些2018最新三本院校名单
- 60.往年龙岩高中学校排名榜单龙岩十大优秀高中
- 51.a510croot,HTC野火A510C解锁及ROOT
- 52.《海贼王女帝本子h里番,海贼王h本子
- 53.[国内汉堡排行榜]中国汉堡店排名前十名,中国人的汉堡店叫什么
- 54.巴特辛普森效应是什么,辛普森巴特喜好是什么
- 55.上海打捞局,上海打捞局属于什么性质的单位啊
- 56.快拿去当铃声和壁纸,手机铃声梁祝高潮版
- 57.三星chromebook,如何将三星新款,Chromebook,切换到开发模式
- 58.小产权房转正不了,怎么不提小产权了
- 59.努比亚z18屏幕材质,一图了解努比亚Z18
- 60.兰州市城关区红星巷什么时候改造,今年城关区拟改造232处老旧小区
- 61.哪里可以买丙醛,都有可能暗藏隐患
- 62.荆门电力检修公司在哪里,国网湖北检修公司
- 63.往年良种补贴什么能给,良种补贴之政策重点
- 64.容声冰箱bcd168gq工作电流是多少,往年容声冰箱选购攻略
- 65.地下室交易怎么处理,买二手房原房主不交地下室
- 66.六圈路叫什么路,周边3条路都没修好
- 67.创强路在哪里,增城明天有现场招聘会在这里举办
- 68.雷锋科技城什么时候动工,跑出产城融合雷锋速度
- 69.太原哪里卖婴儿营养包,「锦绣太原品牌行」宏艺珠宝
- 70.最后成交放什么音乐,南都往年文化观察之九

