Redis 支持五种数据类型,分别是:String(字符串)、Hash(哈希)、List(列表)、Set(集合)以及 ZSet(sorted set:有序集合)。
String(字符串)
String 是 Redis 最基本的数据类型,一个 key 对应一个 value。同时 String 类型是二进制安全的,也就是说 Redis 的 String 可以包含任何数据,比如 jpg 图像或者序列化的对象。还有,String 类型的值最大能存储 512 MB。

此例我们使用了 Redis 的 set 和 get 命令,key 为 name,value 为 "Redis"。
Hash(哈希)
Redis 的哈希数据类型存储的是一个 String 类型的 filed 和 value 的映射表,类似于 java 中的 Map,比较适合存放对象。Redis 中每个 Hash 可以存储 2^32-1(4294967295)个键值对。

Hash 类型的数据类型 set 时有多种方法,get 时也可以分别 get 单个 filed 的值,也可以全部 get 此 key 的值。
List(列表)
Redis 列表是简单的字符串列表。使用不同的命令可以从列表的头部或尾部添加元素。

lpush 表示头插,left
rpush 表示尾插,right
get 时的命令格式为:lrange key start end,指定范围读取,-1 表示读取整个 list 类型的 value。
Redis 中每个 List 可以存储 2^32-1(4294967295)个元素。
Set(无序集合)
Redis 的 set 是无序的 String集合,其中的元素是不会重复的。
SADD 命令会添加新的元素到 set,SMEMBERS 命令可以查看 set 里面所有的元素,单次每次调用得到的结果的顺序是无法保证的。

Redis 中每个 Set 可以存储 2^32-1(4294967295)个元素。
ZSet(sorted set:有序集合)
Redis 有序集合 ZSet 与无序集合 Set 类型一样,都是 String 类型的集合元素,而且元素不允许重复,ZSet 的每个元素都会关联一个 double 类型的份数(score)。Redis 就是通过份数来为集合中的成员进行从大到小的排序。数据元素是唯一的,但是对应的 score 是可以重复的。

如上所示,zset 中 set 了三个元素,score 分别为 10、20、9,当我们调用 ZRANGEBYSCORE 命令获取 zset 中的元素时,拿到的结果就是按照 score 排序后的结果。
关于这五种类型的具体使用,会在以后的文章中展示。
7万+

被折叠的 条评论
为什么被折叠?



