1.string
Redis的字符串是动态字符串(SDS),是可以修改的字符串,它的内部表示就是一个字符数组,它的内部结构是一个带长度信息的字节数组,可以包含任何数据。
使用场景:string类型使用场景
2.hash
相当于python中的dict。
使用场景:适合存储json对象等。
3.list
详单于python中的list。
使用场景:消息队列
4.set
相当于python中的set,内部元素唯一,增删改查复杂度都是O(1)操作,支持交并补操作。
使用场景:获取购买相同记录,唯一性等
5.sorted set
有序集合,在set的基础上增加了value的权重,利用跳跃表实现(64层)
使用场景:排行榜
redis数据淘汰策略
- volatile-lru:从已设置过期时间的数据集中挑选最近最少使用的数据淘汰
- volatile-ttl:从已设置过期时间的数据集中挑选将要过期的数据淘汰
- volatile-random:从已设置过期时间的数据集中任意选择数据淘汰
- allkeys-lru:淘汰最近最少使用的数据
- allkeys-random:从数据集中任意选择数据淘汰
- no-eviction:禁止驱逐数据
- volatile-lfu:从已设置过期时间的数据集中挑选最不经常使用的数据淘汰
- allkeys-lfu:移除最不经常使用的数据