Redis中五大数据类型及相关命令

1、Redis五大数据类型

Redis支持的五大数据类型分别为:

  • String(字符类型)
  • Hash(散列类型)
  • List(列表类型)
  • Set(集合类型)
  • SortedSet(有序集合类型,简称zset)

注意:Redis的命令不区分大小写,但是key 区分大小写!!!

下面就介绍这些数据类型的详细使用。也可以通过这个网站进行学习:http://redisdoc.com/

2、keys键操作(非五大类型)

这些命令是对key的一些基本操作:

Redis中五大数据类型及相关命令

3、String类型(字符串)

String是Redis最基本的类型,你可以理解成与Memcached一模一样的类型,一个key对应一个value,一个Redis中字符串value最多可以是512M。String类型是二进制安全的。意思是Redis的String可以包含任何数据。比如jpg图片或者序列化的对象 。

Redis中五大数据类型及相关命令

Redis中五大数据类型及相关命令

4、List类型(列表)

Redis 列表是简单的字符串列表,可以存储一个有序的字符串列表,按照插入顺序排序,你可以添加一个元素到列表的头部(左边)或者尾部(右边)。列表类型内部是使用双向链表(double linked list)实现的,所以向列表两端添加元素的时间复杂度为0/1,获取越接近两端的元素速度就越快。意味着即使是一个有几千万个元素的列表,获取头部或尾部的10条记录也是极快的。

Redis中五大数据类型及相关命令

Redis中五大数据类型及相关命令

Redis中五大数据类型及相关命令

Redis中五大数据类型及相关命令

5、Hash类型(哈希非常重要,类似Java里的Map)

Redis Hash是一个键值对集合。K-V模式不变,但V是一个键值对。Redis的Hash是一个String类型的field和value的映射表,Hash特别适合用于存储对象。类似Java里面的Map<String,Object>。

Redis中五大数据类型及相关命令

Redis中五大数据类型及相关命令

6、Set类型(集合,无序,唯一)

Redis的Set是String类型的无序集合,不允许出现重复的值。它是通过HashTable实现实现的。

Redis中五大数据类型及相关命令

Redis中五大数据类型及相关命令

7、Zset类型(Sorted set:有序集合)

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

注: 在Set基础上,加一个score值,之前set是k1 v1 v2 v3,现在Zset是k1 score1 v1 score2 v2

有时候还可以这样用,在Zset里设置所有元素的score为0,就按元素首字母排序(自动补全)

Redis中五大数据类型及相关命令

Redis中五大数据类型及相关命令