Redis入门(三)——Redis基本数据类型

Redis入门(三)——Redis基本数据类型

Redis 不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储。


 目录

  • string数据类型
  • list数据类型
  • set数据类型
  • hash数据类型
  • zset数据类型

1.string数据类型

string是redis中最简单的一种数据结构,是一种key-value类型的数据。string 类型是二进制安全的,意思是 Redis 的 string 可以包含任何数据,比如图片或者序列化的对象,根据redis官方文档根据Redis官方文档,Value最大值为512M

string 数据类型在 Redis 中的相关命令:

  表格图片引用:http://www.cnblogs.com/xrq730/p/8944539.html(下同)

Redis入门(三)——Redis基本数据类型_第1张图片

实例:

 Redis入门(三)——Redis基本数据类型_第2张图片

其中,setex命令用于清除不在需要缓存的数据,setnx命令用于分布式锁的场景中。ttl为查看key剩余有效时间的命令。

下面介绍几个自增自减操作,这在实际工作中还是特别有用的(分布式环境中统计系统的在线人数,利用Redis的高性能读写,在Redis中完成秒杀,而不是直接操作数据库。)。

  Redis入门(三)——Redis基本数据类型_第3张图片

实例:

Redis入门(三)——Redis基本数据类型_第4张图片

注意:若value的值不为表示数字的字符,则不能使用自增自减命令。

更多命令参考:https://www.w3cschool.cn/redis/redis-strings.html,https://redis.readthedocs.io/en/latest/index.html。

2.list数据类型

Redis列表是简单的字符串列表,按照插入顺序排序。你可以添加一个元素导列表的头部(左边)或者尾部(右边),,它的底层实际上是个链表。一个列表最多可以包含 232 - 1 个元素 (4294967295, 每个列表超过40亿个元素)。

Redis入门(三)——Redis基本数据类型_第5张图片

Redis入门(三)——Redis基本数据类型_第6张图片

实例:

Redis入门(三)——Redis基本数据类型_第7张图片

其他命令不在一一列举。

3.set数据类型

Redis的Set是string类型的无序集合。集合成员是唯一的,这就意味着集合中不能出现重复的数据。Redis 中 集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是O(1)。集合中最大的成员数为 232 - 1 (4294967295, 每个集合可存储40多亿个成员)。

Redis入门(三)——Redis基本数据类型_第8张图片

实例:

Redis入门(三)——Redis基本数据类型_第9张图片

4.hash数据类型

Redis hash 是一个string类型的field和value的映射表,key 还是key,但是value是一个键值对(key-value)。类比于 Java里面的 Map> 集合。hash特别适合用于存储对象。

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

 Redis入门(三)——Redis基本数据类型_第10张图片

 

实例:

 

 Redis入门(三)——Redis基本数据类型_第11张图片

 

5.zset数据类型

Redis 有序集合和集合一样也是string类型元素的集合,且不允许重复的成员。

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

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

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

 Redis入门(三)——Redis基本数据类型_第12张图片

更多命令参考:https://www.w3cschool.cn/redis/redis-sorted-sets.html

实例:

可用于游戏中分数对应不同等级的场景

Redis入门(三)——Redis基本数据类型_第13张图片

 

 Redis入门(三)——Redis基本数据类型_第14张图片

 

 6.系统相关命令

Redis入门(三)——Redis基本数据类型_第15张图片

 

 

 7.key相关命令:

Redis入门(三)——Redis基本数据类型_第16张图片

 

你可能感兴趣的:(Redis入门(三)——Redis基本数据类型)