Redis高级数据结构实战(一)BitMap用户连续签到
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Redis高级数据结构实战(一)BitMap用户连续签到相关的知识,希望对你有一定的参考价值。
参考技术A 占用内存更小,性能更高。这里偏实战,原理的东西就不细讲了。记录一个用户某天登录,只需要指令
bitmap 是一个bit数组,数据结构大概是长这样子的:
数字6是这个数组的偏移量(index,下标从0开始),表示第7天签到了
查看累计登录天数:
因为 bitfield 指令无符号获取的偏移量最大是63,所以一个key只存一个月份的数据,这样key的结构可以是这样:
user:sign:userId:date
bitfield 指令其实就是获取这个key的数组下标的一个list
u 表示无符号 ,14 表示今天是14号,0 表示索引,即从第一天开始
里面每一步的注释都写的非常明白,关键点在最后一个方法的移位操作
待续...
《ClickHouse企业级应用:入门进阶与实战》8 基于ClickHouse Bitmap实现DMP用户画像标签圈人
《ClickHouse企业级应用:入门、进阶与实战》
- 全面了解ClickHouse
- 快速入门
- ClickHouse基础数据类型
- ClickHouse高级数据类型
- ClickHouse函数
- ClickHouse SQL基础
- 基于Spring Boot开发ClickHouse SQL查询工具
- 基于ClickHouse Bitmap实现DMP用户画像标签圈人
根据Digital Journal的一份报告,DMP 市场预计将以 15% 的复合年增长率增长,到 2023
以上是关于Redis高级数据结构实战(一)BitMap用户连续签到的主要内容,如果未能解决你的问题,请参考以下文章
《ClickHouse企业级应用:入门进阶与实战》8 基于ClickHouse Bitmap实现DMP用户画像标签圈人