redis数据类型

Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合)。


一、String(字符串)

string是redis最基本的类型,你可以理解成与Memcached一模一样的类型,一个key对应一个value。

string类型是二进制安全的。意思是redis的string可以包含任何数据。比如jpg图片或者序列化的对象 。


注意:一个键最大能存储512MB。


二、Hash(哈希)

hash是一个string类型的field和value的映射表,hash特别适合用于存储对象。


由例子可以看出,value以空格作为分隔符

注意:每个 hash 可以存储 232 -1 键值对(40多亿)。


三、List(列表)

list是简单的字符串列表,按照插入顺序排序。你可以添加一个元素到列表的头部(左边)或者尾部(右边)。


注意列表最多可存储 232 - 1 元素 (4294967295, 每个列表可存储40多亿)。


四、Set(集合)

set是string类型的无序集合。集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是O(1)。


插入成功时返回1,插入失败(重复)返回0

注意集合中最大的成员数为 232 - 1(4294967295, 每个集合可存储40多亿个成员)。


五、zset(sorted set:有序集合)
zset 和 set 一样也是string类型元素的集合,且不允许重复的成员。

不同的是每个元素都会关联一个double类型的分数。redis正是通过分数来为集合中的成员进行从小到大的排序。

zset的成员是唯一的,但分数(score)却可以重复。


zadd命令添加元素到集合,元素在集合中存在则更新对应score


让我们一起遨游在代码的海洋里!