redis的五种数据类型

如题所述

redis的五种数据类型分别是string、hash 、list、set、zset 。

一、string

string是redis最基本的类型,你可以理解成与Memcached一模一样的类型,一个key对应一个value。string类型是二进制安全的。意思是redis的string可以包含任何数据。比如jpg图片或者序列化的对象。string类型是Redis最基本的数据类型,string类型的值最大能存储512MB。

二、hash 

Redishash是一个键值(key=>value)对集合。Redishash是一个string类型的field和value的映射表,hash特别适合用于存储对象。HMSET,HGET命令,HMSET设置了两个field=>value对,HGET获取对应field对应的value。

三、list

列表是简单的字符串列表,按照插入顺序排序。可以添加一个元素到列表的头部(左边)或者尾部(右边)。列表最多可存储232—1元素(4294967295, 每个列表可存储40多亿)。lpush设置值,lrange取值。

四、set

redis的set是string的无序集合。集合通过哈希表实现。添加一个string元素到key对应的set集合中,用sadd命令。返回1表示成功,0表示在集合中已存在,返回错误表示key对应的set不存在。查看用smembers命令。集合内元素的唯一性,第二次插入的元素将被忽略。集合中最大的成员数为232—1(4294967295,每个集合可存储40多亿个成员)。

五、zset 

redis的zset和set一样也是string类型元素的集合,且不允许重复的成员。不同的是每个元素都会关联一个double类型的分数。redis正是通过分数来为集合中的成员进行从小到大的排序。zset的成员是唯一的,但分数(score)却可以重复。

Redis数据模型和性能:

一、数据模型

1、字符串列表。

2、无序不重复的字符串集合。

3、有序不重复的字符串集合。

4、键、值都为字符串的哈希表。

二、性能

1、测试完成了50个并发执行100000个请求。

2、设置和获取的值是一个256字节字符串。

3、Linux box是运行Linux 2.6,这是X3320 Xeon 2.5 ghz。

4、文本执行使用loopback接口(127.0.0.1)。

5、结果:读的速度是110000次/s,写的速度是81000次/s 。

温馨提示:答案为网友推荐,仅供参考
相似回答