Redis 有五种数据结构,分别是:
String —— 字符串
String 数据结构是简单的 Key-Value 类型,value 不仅可以是 String,也可以是数字(当数字类型用 Long 可以表示的时候 encoding 就是整型,其它都存储在 sdshdr 当做字符串)。
Hash —— 字典
在 Memcached 中,我们经常将一些结构化的信息打包成 hashmap,在客户端序列化存储为一个字符串的值(一般是 JSON 格式),比如用户的昵称、年龄、性别、积分等。
List —— 列表
List 说白了就是链表(redis 使用双端链表实现的 list),相信学过数据结构知识的人应该能理解其结构。
Set —— 集合
Set 就是一个集合,集合的概念就是一堆不重复值得组合。利用 Redis 提供得 Set 数据结构,可以存储一些集合性得数据。
Sorted Set —— 有序集合
和 Set 相比,Sorted Sets 是将Set 中得元素增加了一个权重参数 score,使得集合中得元素能按照 score 进行有序排列。
1、带有权重的元素,比如一个游戏用户的得分排行榜。
2、比较复杂的数据结构,一般用到的场景不算太多。