c2c商城网站开发,Python爬取wordpress,lamp网站建设,邯郸市市长BitmaphyperloglogGEO 面试问 记录对集合中的数据进行统计在移动应用中#xff0c;需要统计每天的新增用户数和第2天的留存用户数#xff1b;在电商网站的商品评论中#xff0c;需要统计评论列表中的最新评论#xff1a;在签到打卡中#xff0c;需要统计一个月内…BitmaphyperloglogGEO 面试问 记录对集合中的数据进行统计在移动应用中需要统计每天的新增用户数和第2天的留存用户数在电商网站的商品评论中需要统计评论列表中的最新评论在签到打卡中需要统计一个月内连续打卡的用户数在网页访问记录中需要统计独立访客(Unique Visitor,UV)量。 痛点 类似今日头条、抖音、淘宝这样的额用户访问级别都是亿级的请问如何处理 需求痛点 亿级数据的收集、清洗、统计、展现需要存的进、取得快、多维度 一、统计的类型有哪些 聚合统计 统计多个集合元素的聚合结果就是set里面的交差并等集合统计 交并差集和聚合函数的应用 排序统计 抖音短视频最新评论留言的场景请你涉及一个展现列表。考察数据结构和设计思路。 使用zset实现 在面对需要展示最新列表、排行榜等场景时如果数据更新频繁或者需要分页显示建议使用zset 二值统计 集合元素的取值就只有0和1两种。在钉钉上班签到打卡的场景中我们只需要记录签到1和没签到0 一般使用bitmap实现 基数统计 指统计一个集合中不重复的元素 一般使用hyperloglog
二、hyperloglog 名词 UV Unique Visitor独立访客一般理解为客户端IP 需要考虑去重 PV Page View页面浏览量 不用去重 DAU Daily Active User日活跃用户量登录或使用某个产品的用户数去掉重复登录的用户 常用于反映网站、互联网应用或网络游戏的运营情况 MAU Monthly Active User月活跃用户量 需求 很多计数类场景比如每日注册IP数、每日访问IP数、页面实时访问数PV、访问用户数UV等。 因为主要的目标高效、巨量地进行计数所以对存储的数据的内容并不太关心。 也就是说它只能用于统计巨量数量不太涉及具体的统计对象的内容和精准性。 统计单日一个页面的访问量(PV),单次访问就算一次。 统计单日一个页面的用户访问量(UV),即按照用户为维度计算单个用户一天内多次访问也只算一次。 多个ky的合并统计某个门户网站的所有模块的PV聚合统计就是整个网站的总PV。 是什么 基数 是一种数据集去重复后的真实个数 去重复统计功能的基数估计算法就是hyperloglog 基数统计 用于统计一个集合中不重复的元素个数就是对集合去重复后剩余元素的计算 基本命令 hyperloglog如何实现的如何演化的 去重的几种方法 hashset bitmap hyperloglog概率算法 通过牺牲准确率来换取空间对于不要求绝对准确率的场景下可以使用因为概率算法不直接存储数据本身 通过一定的概率统计方法预估基数值同时保证误差在一定范围内由于又不储存数据故此可以大大节约内存。 如何做到的如何演化来的 只是进行不重复的基数统计不是集合也不保存数据只记录数量而不是具体的内容。 有误差 hyperloglog提供不精确的去重计数方案牺牲准确率来换取空间误差在0.81%左右 论文和出处http://antirez.com/news/75 淘宝网站首页亿级UV的Redis统计方案 需求 UV的统计需要去重一个用户一天内的多次访问只能算一次淘宝、天猫首页的UV平均每天是1~1.5个亿左右每天存1.5个亿的IP访问者来了后先去查是否存在不存在加入 方案 使用redis hash存储详细数据 使用hyperloglog hyperloglog service hyperloglog controller
三、GEO
面试题说明
移动互联网时代LBS应越来越多交友软件中附近的小姐姐、外卖软件中附近的美食店铺、打车软件附近的车辆等等。
那这种附近各种形形色色的XXX地址位置选择是如何实现的
会有什么问题呢
查询性能问题如果并发高数据量大这种查询是要搞垮mysq数据库的一般mysql查询的是一个平面矩形访问而叫车服务要以我为中心N公里为半径的圆形覆盖。精准度的问题我们知道地球不是平面坐标系而是一个圆球这种矩形计算在长距离计算时会有很大误差mysql不合适
3.1 redis之GEO
经纬度 如何获取某个地址的经纬度使用百度地图等系统
命令复习 GEOADD:添加经纬度坐标 GEOPOS:返回经纬度 GEOHASH返回坐标的geohashgeohash算法生成的base32编码值 GEODIST两个位置之间距离 GEORADIUS查找距离中心位置小于XX距离的地点 GEORADIUSBYMEMBER
四、bitmap 命令复习 需求和解决方案 bitmap解决方法