redis数据结构

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

一、字符串

string类型一个key对应一个value。

string类型是redis最基本的数据类型,以二进制形式存储,最大能存储 512MB。

string形式:set name Alice    ,   get name

 

二、哈希

hash可以理解为存储一个对象的多个属性,即一个对象的多个key和value的对应关系。

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

hash形式:hmset student name alice age 20 hobby reading ,hmget student name age hobby

 

三、列表

list是一个存储字符串的有序集合,可以从首尾增加或移出元素。

一个列表最多可以包含 232 - 1 个元素 (4294967295, 每个列表超过40亿个元素)。

list形式:ipush lastname li,ipush lastname wang,ipush lastname zhang

 

四、集合

set是一个存储字符串的无序集合,集合中的元素唯一即不重复。

 

五、有序集合

有序集合和集合一样也是字符串的集合,且不允许重复的成员。

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

有序集合的成员是唯一的,但分数(score)却可以重复。

集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是O(1)。 集合中最大的成员数为 232 - 1 (4294967295, 每个集合可存储40多亿个成员)。

 

posted @ 2019-09-14 17:36  Forever77  阅读(373)  评论(0编辑  收藏  举报