• 布隆过滤器


    讲个使⽤场景,⽐如我们在使⽤新闻客户端看新闻时,它会给我们不停地推荐新的内容,它每次推荐时要去重,去掉那些已经看过的内容。问题来了,新闻客户端推荐系统如何实现推送去重的?你会想到服务器记录了⽤户看过的所有历史记录,当推荐系统推荐新闻时会从每个⽤户的历史记录⾥进⾏筛选,过滤掉那些已经存在的记录。问题是当⽤户量很⼤,每个⽤户看过的新闻⼜很多的情况下,这种⽅式,推荐系统的去重⼯作在性能上跟的上么?
    Redis 官⽅提供的布隆过滤器到了 Redis 4.0 提供了插件功能之后才正式登场。布隆过滤器作为⼀个插件加载到 Redis Server 中,给Redis 提供了强⼤的布隆去重功能。
    作为一个插件需要安装。
    布隆过滤器有⼆个基本指令,bf.add 添加元素,bf.exists 查询 元素是否存在,它的⽤法和 set 集合的 sadd 和 sismember 差不 多。注意 bf.add 只能⼀次添加⼀个元素,如果想要⼀次添加多 个,就需要⽤到 bf.madd 指令。同样如果需要⼀次查询多个元素是 否存在,就需要⽤到 bf.mexists 指令。
  • 相关阅读:
    maven加载jar包配置
    JavaScript基础博客
    angularjs1 实现地图添加自定义控件(搜索功能)及事件
    AngularJS之Directive,scope,$parse
    HTML5 File详解
    angularjs上传图片
    input上传按钮美化
    AngularJs表单验证
    作用域与闭包
    理解JavaScript中的作用域和上下文
  • 原文地址:https://www.cnblogs.com/hanmengya/p/10966737.html
Copyright © 2020-2023  润新知