2022_SummerBlog_002

日常记录

今天早上五点多起来绕着西湖跑了25km的玫瑰线,太热了导致配速很慢。不过总体还是很舒服的,也是完成了一次半马。回来收拾完现在躺在床上不想动,就躺在床上学习了(捂脸)。在看Bloom Filter原理与实战的时候,我就理解了为啥我B站首页推荐为什么不会给我推荐已经看过的视频了。他会先查询准备给我推荐的视频在不在我的历史记录里,如果不在那么肯定不在;如果在也有几率不在,但是他直接不推荐,所以主观上是感受不到重复视频的(貌似是这样)。晚上在看论文。


学习记录

总结昨天问题

见昨天的blog链接: 2022_SummerBlog_001

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

参考链接: 硬核 | Redis 布隆(Bloom Filter)过滤器原理与实战

  1. 布隆过滤器可以插入元素,但不可以删除已有元素。
删除意味着需要将对应的 k 个 bits 位置设置为 0,其中有可能是其他元素对应的位。

因此 remove 会引入 false negative,这是绝对不被允许的。
  1. 当布隆过滤器说,某个数据存在时,这个数据可能不存在;当布隆过滤器说,某个数据不存在时,那么这个数据一定不存在。

写作猫

  1. 降重
  2. 语法

阅读论文

Cuckoo Filter: Practically Better Than Bloom
看到了2.2 Cuckoo Hash Tables


问题记录

布隆过滤器原理与实战

  1. 想去复现文章里展示的,但是对Redis不是很了解。轩哥建议了解一下就行,不用复现。

Cuckoo Filter

  1. 不是很理解指纹和键值对的联系与区别。可以简单理解为指纹的空间复杂度是键值对的一半吗?
    在这里插入图片描述

  2. 这个对应关系是怎么来的? k = log2(1/),还有1.44这个值。需要理解吗?
    在这里插入图片描述

  3. 如果计数器由4位组成,那么能表示的范围不是16(1111B)嘛?那为什么是4倍呢?
    在这里插入图片描述

  4. 没搞懂为什么最多一次
    在这里插入图片描述

  5. 弄明白第一点的指纹和键值对应该就能理解这个
    在这里插入图片描述


问题解决

  1. 指纹就是一种数据,然后去查键值对啥意思,再康康文章啥的,这问题明显你没看懂文章
  2. 这俩数值有必要看一看的,后文有详细推导
  3. 你没理解CBF的定义,这一段如果没看懂你可以自己找一点中文的资料
  4. 可以思考一下为什么叫Blocked,这个和底层的存储关系比较大一些
  5. d-left你也没搞懂

总结:都正常,基本都是你没看懂文章,然后如果文章里有些东西讲的比较简单 是有必要你自己找一些额外的你能够看得懂的资料的。我当时也在这些概念上花了不少时间的,刚入门概念分析挺重要的


反思

今天开始看论文了,感觉进度有点慢啊(头秃)。看了一晚上才看了不到三分之一吧,不知道是不是因为刚开始看的原因。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值