Redis支持五种数据类型 String(字符串) Hash(Hash), List(列表) Set(集合) zset(sortedset : 有序集合)
String(字符串):
Redis最基本的数据类型 结构为key 对应value。String 类型最大存储512M.
Redis 中修改就是重新set一下。
Hash(Hash) 存储键值对的集合:
特别适合用于存储对象。(每个hash 40亿多对键值对),
HMSET 集合名称 key1 value1 key2 value2 key3 value3,
HGETALL 集合名称.
List(列表) redis列表是简单字符串列表 :
但是这个列表是一个类似于栈的存储,
按照插入顺序排序,支持添加一个元素到列表头部或者尾部的操作。
LPUSH Continents Asiaica America Oceania Antarctica
LRANGE Continents 0 4 获取下标为0~4的元素
Set(集合):
Redis 集合是String 类型的无序集合。集合成员是唯一的,这就意味着集合中不能出现重复的数据。
Redis集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是O(1)。
即每个集合最多可存储40亿多个成员。集合的一大特点就是不能有重复元素,如果插入重复元素,Redis会
忽略该操作。
SADD 集合名称 xxx xxx xxx,
SMEMBERS 集合名称。
zset(sortedset : 有序集合):
Redis 有序集合和集合一样也是String类型元素的集合,且不允许重复的成员。
不同的是每个元素都会关联一个double类型的分数。Redis正是通过分数来为集合中的成员进行从小到大的排序。
有序集合的成员是唯一的,但分数(score)却可以重复。
ZADD scoreList 65.5 Jack
在一个社区平台中Redis中这些数据结构的应用场景:
1记录帖子的点赞书,评论数和点击数 hash
2 记录用户的帖子ID列表,便于快速显示用户的帖子列表 zset
3 记录帖子的标题,摘要,作者和封面信息,用于列表页展示 hash
4 记录帖子的点赞用户ID列表,评论ID列表,用于显示和去重计数。zset
5 缓存近期热帖内容,减少数据库压力
。。。。