统计任意时间区间,统计单个用户的登录天数
- 如2022年1月3日 前所有用户的的登陆天数
- 或2022年5月所有用户的实际登陆天数
解决方案
一.数据库解决
- 最常规的是做一张用户登陆记录表存储到数据库中,最起码要存如下两个元素 1:登陆时间 2:用户id 1个用户最少占用8个字节。
- 问题:用户基数过多导致数据量巨多,查询速度慢。
二. 使用redis 解决
setbit 66662022 1 1 #第一天登陆了1次
setbit 66662022 200 1 #第200天登陆了1次
setbit 66662022 365 3 #第365天登陆了1次
- 这样每个人1年的数据占用只会消耗46个字节(每天的数据只会占用1位,1kb等于8位 46=365/8)