写点什么

布隆过滤器

0 人感兴趣 · 25 次引用

  • 最新
  • 推荐
https://static001.geekbang.org/infoq/ac/acc90d2dbedf0e316ce1924241680483.webp?x-oss-process=image%2Fresize%2Cw_416%2Ch_234

布隆过滤器(Space/Time Trade-offsin Hash Coding with Allowable Errors)

用户头像
乐只
01-07

布隆过滤器起源于1970年发表的一篇Space/Time Trade-offsin Hash Coding with Allowable Errors的论文,该论文主要就可容错哈希编码的时间复杂度和空间复杂度进行了探讨,本文对该论文中提到的两个方法做了简单的说明,抛砖引玉。

https://static001.geekbang.org/infoq/d8/d856c279d6b8033a64e0134c60b2f5fd.jpeg?x-oss-process=image%2Fresize%2Cw_416%2Ch_234

再也不怕面试官问缓存雪崩、缓存击穿、缓存穿透了

用户头像
程序员花卷
2023-12-03

在日常使用缓存来提高系统性能的过程中,我们除了会遇到缓存不一致的问题,还会遇到缓存雪崩、缓存击穿、缓存穿透等可能引起数据库崩溃甚至整个系统瘫痪的问题,同时这几个问题也是面试官必问的问题,今天这篇文章带你彻底搞懂!吊打面试官!

如何利用 java 实现一个布隆过滤器?

布隆过滤器(Bloom Filter)是1970年由布隆提出来的。它实际上是由一个很长的二进制数组+一系列hash算法映射函数,用于判断一个元素是否存在于集合中。布隆过滤器可以用于检索一个元素是否在一个集合中。它的优点是空间效率和查询时间都比一般的算法要好的多

Redis 布隆过滤器的原理和应用场景,解决缓存穿透

布隆过滤器BloomFilter是一种专门用来解决去重问题的高级数据结果。

java 实现布隆过滤器

用户头像
小小怪下士
2023-03-30

布隆过滤器(Bloom Filter)是1970年由布隆提出来的。 它实际上是由一个很长的二进制数组+一系列hash算法映射函数,用于判断一个元素是否存在于集合中。布隆过滤器可以用于检索一个元素是否在一个集合中。它的优点是空间效率和查询时间都比一般的算法要好的多

布隆过滤器(Bloom Filters)的原理及代码实现(Java)

布隆过滤器是一个高效的数据结构,用于集合成员查询,具有非常低的空间复杂度。

https://static001.geekbang.org/infoq/1f/1faf64a62a0d82f61186c07527802c95.png?x-oss-process=image%2Fresize%2Cw_416%2Ch_234

布隆过滤器是否好用,得看哈希函数写成啥样

用户头像
小傅哥
2022-10-12

布隆过滤器是一个基于数组和哈希函数散列元素的结构,很像HashMap的哈希桶。布隆过滤器可以用于检测一个元素是否在集合中。它的优点是空间效率和查询时间比一般算法要好很多,但也有一定概率的误判性。

https://static001.geekbang.org/infoq/c2/c2fcbbf5565bb81fd34d0b7e49352c1e.png?x-oss-process=image%2Fresize%2Cw_416%2Ch_234

缓存穿透利器之「布隆过滤器」

用户头像
Ayue、
2022-06-22

现代计算机用二进制(bit,位)作为信息的基础单位,1 个字节等于 8 位,例如big字符串是由 3 个字节组成,但实际在计算机存储时将其用二进制表示,big分别对应的 ASCII 码分别是 98、105、103,对应的二进制分别是 01100010、01101001 和 01100111。

https://static001.geekbang.org/infoq/f3/f37a87e215c49222d5fa68a8b1b9932a.webp?x-oss-process=image%2Fresize%2Cw_416%2Ch_234

全网最细的短网址系统设计与实战

用户头像
星牛君
2022-04-27

今天介绍一个短网址系统的设计与实现。所谓的短链接就是不管你的链接有多么长,最终它都会生成一个固定长度的短链接。虽然说义务很简单,但是里面会涉及很多的细节。保证短链接唯一和访问速度成为一个核心的问题,接下来就开始表演。短链接的应用场景:

https://static001.geekbang.org/infoq/f8/f8506b884cd46aa00582f0cf87dca6a7.png?x-oss-process=image%2Fresize%2Cw_416%2Ch_234

vivo 短视频推荐去重服务的设计实践

vivo短视频在视频推荐时需要对用户已经看过的视频进行过滤去重,避免给用户重复推荐同一个视频影响体验。在一次推荐请求处理流程中,会基于用户兴趣进行视频召回,大约召回2000~10000条不等的视频,然后进行视频去重,过滤用户已经看过的视频,仅保留用户未观

https://static001.geekbang.org/infoq/45/451300cd0fac0493967d2ceb2c605abe.webp?x-oss-process=image%2Fresize%2Cw_416%2Ch_234

Redis 布隆(Bloom Filter)过滤器原理与实战讲解

用户头像
码哥字节
2022-04-02

布隆过滤器 (Bloom Filter)是由 Burton Howard Bloom 于 1970 年提出,它是一种 space efficient 的概率型数据结构,用于判断一个元素是否在集合中。 某个数据存在时,这个数据可能不存在;当布隆过滤器说,某个数据不存在时,那么这个数据一定不存在。

https://static001.geekbang.org/infoq/02/0288d7c4b4b09822d8f389977be5fb0e.jpeg?x-oss-process=image%2Fresize%2Cw_416%2Ch_234

数据同步与缓存一致性问题

用户头像
Mars
2022-02-21

1、如何保持数据同步中间件(如canal)的高可用?

https://static001.geekbang.org/infoq/7e/7e64c9c201d92ddff65e12cf070f4594.png?x-oss-process=image%2Fresize%2Cw_416%2Ch_234

Guava 的布隆过滤器

程序世界的算法都要在时间,资源占用甚至正确率等多种因素间进行平衡。同样的问题,所属的量级或场景不同,所用算法也会不同,其中也会涉及很多的trade-off。

详解布隆过滤器的原理和实现

用户头像
万俊峰Kevin
2021-12-07

当一个元素被加入集合时,通过K个散列函数将这个元素映射成一个位数组中的K个点,把它们置为1。检索时,我们只要看看这些点是不是都是1就(大约)知道集合中有没有它了:如果这些点有任何一个0,则被检元素一定不在;如果都是1,则被检元素很可能在。

https://static001.geekbang.org/infoq/bf/bf5903c26b51fdbeb53ba47a112e1b84.png?x-oss-process=image%2Fresize%2Cw_416%2Ch_234

听说你的服务经常被打崩?试试布隆过滤器(Bloom Filter)

用户头像
李子捌
2021-11-27

布隆过滤器(Bloom Filter)是1970年由布隆提出的。它实际上是一个很长的二进制向量和一系列随机映射函数。布隆过滤器可以用于检索一个元素是否在一个集合中。它的优点是空间效率和查询时间都比一般的算法要好的多,缺点是有一定的误识别率和删除困难。​

【实战问题】-- 布隆过滤器的三种实践:手写,Redission 以及 Guava(2)

用户头像
秦怀杂货店
2021-05-13

前面我们已经讲过布隆过滤器的原理【实战问题】-- 缓存穿透之布隆过滤器(1),都理解是这么运行的,那么一般我们使用布隆过滤器,是怎么去使用呢?如果自己去实现,又是怎么实现呢?

【实战问题】-- 缓存穿透之布隆过滤器(1)

用户头像
秦怀杂货店
2021-03-27

前面我们提到,在防止缓存穿透的情况(缓存穿透是指,缓存和数据库都没有的数据,被大量请求,比如订单号不可能为-1,但是用户请求了大量订单号为-1的数据,由于数据不存在,缓存就也不会存在该数据,所有的请求都会直接穿透到数据库。),我们可以考虑使用布

https://static001.geekbang.org/infoq/6e/6eae9fdddf82adc32b5c62b16763c5e7.jpeg?x-oss-process=image%2Fresize%2Cw_416%2Ch_234

可恶的爬虫直接把生产机器全部爬挂了!

用户头像
root
2021-01-19

正在午睡,突然收到线上疯狂报警的邮件,查看这个邮件发现这个报警的应用最近半个月都没有发布,应该不至于会有报警,但是还是打开邮件通过监控发现是由于某个接口某个接口流量暴增,CPU暴涨。为了先解决问题只能先暂时扩容机器了,把机器扩容了一倍,问题得

https://static001.geekbang.org/infoq/d0/d00cfc6c7da59da3cceb78c8eabb1650.png?x-oss-process=image%2Fresize%2Cw_416%2Ch_234

一文讲透布隆过滤器

主要介绍布隆过滤器是什么,以及它的应用场景、实现原理,简单操作以及使用场景等等

https://static001.geekbang.org/infoq/2f/2fe5d21cf04e812cc38bea85ec0787ff.png?x-oss-process=image%2Fresize%2Cw_416%2Ch_234

布隆过滤器是个啥!

用户头像
诸葛小猿
2020-07-20

Bloom Filter是一个占用空间很小、效率很高的随机数据结构,它由一个bit数组和一组Hash算法构成。

https://static001.geekbang.org/infoq/bb/bb4438abce29a1cea73d96c663ec2127.jpeg?x-oss-process=image%2Fresize%2Cw_416%2Ch_234

布隆过滤器你值得拥有的开发利器

用户头像
阿宝哥
2020-07-16

在程序的世界中,布隆过滤器是程序员的一把利器,利用它可以快速地解决项目中一些比较棘手的问题。如网页 URL 去重、垃圾邮件识别、大集合中重复元素的判断和缓存穿透等问题。

https://static001.geekbang.org/infoq/f9/f9f6fa3fb6b6ab82e1d378fe2ac2de3b.jpeg?x-oss-process=image%2Fresize%2Cw_416%2Ch_234

漫画:15 张图,帮你看懂布隆算法

用户头像
Java小咖秀
2020-06-30

在轻松的漫画氛围中,读懂布隆算法,开心~

https://static001.geekbang.org/infoq/70/70e94bf9ed52e2e6156a41a208091851.jpeg?x-oss-process=image%2Fresize%2Cw_416%2Ch_234

从位图到布隆过滤器

用户头像
王坤祥
2020-05-29

位图法就是bitmap的缩写,所谓bitmap,就是用每一位来存放某种状态,适用于大规模数据,但数据状态又不是很多的情况。通常是用来判断大数据量级下某个数据存不存在的。

布隆过滤器_布隆过滤器技术文章_InfoQ写作社区