Redis 详解 (三) redis的五大数据类型详细用法

时间:2023-12-15 16:09:20

  我们说 Redis 相对于 Memcache 等其他的缓存产品,有一个比较明显的优势就是 Redis 不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储。本篇博客我们就将介绍这些数据类型的详细使用以及顺带介绍Redis系统的相关命令用法。

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

1、string 数据类型

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

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

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

  Redis 详解 (三) redis的五大数据类型详细用法

  Redis 详解 (三) redis的五大数据类型详细用法

  PS:上面的 ttl 命令是返回 key 的剩余过期时间,单位为秒。

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

  Redis 详解 (三) redis的五大数据类型详细用法

  Redis 详解 (三) redis的五大数据类型详细用法

2、hash 数据类型

  hash 是一个键值对集合,是一个 string 类型的 key和 value 的映射表,key 还是key,但是value是一个键值对(key-value)。类比于 Java里面的 Map<String,Map<String,Object>> 集合。

  Redis 详解 (三) redis的五大数据类型详细用法

  演示如下:

  Redis 详解 (三) redis的五大数据类型详细用法

3、list 数据类型

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

  Redis 详解 (三) redis的五大数据类型详细用法

   Redis 详解 (三) redis的五大数据类型详细用法

  Redis 详解 (三) redis的五大数据类型详细用法

4、set 数据类型

  Redis 的 set 是 string 类型的无序集合。

  Redis 详解 (三) redis的五大数据类型详细用法

   Redis 详解 (三) redis的五大数据类型详细用法

  Redis 详解 (三) redis的五大数据类型详细用法

5、zset 数据类型

  zset(sorted set 有序集合),和上面的set 数据类型一样,也是 string 类型元素的集合,但是它是有序的。

  Redis 详解 (三) redis的五大数据类型详细用法

  Redis 详解 (三) redis的五大数据类型详细用法

6、系统相关命令

  Redis 详解 (三) redis的五大数据类型详细用法

7、key 相关命令

  关于 key 的命令应该说是最常用的,需要大家记住。

  Redis 详解 (三) redis的五大数据类型详细用法

   Redis 详解 (三) redis的五大数据类型详细用法

  Redis 详解 (三) redis的五大数据类型详细用法

  这里在介绍一个命令 :

OBJECT ENCODING    key  

  这是用来显示这五种数据类型的底层数据结构,下一篇博客我们会详细介绍。

  Redis 详解 (三) redis的五大数据类型详细用法

  上面的命令我们给string 数据类型 k1 复制str,给 k2 复制123,通过 OBJECT ENCODING 显示底层实现的数据类型分别是 embstr 和 int。这到底是什么呢?下篇博客我们会详细介绍的。

参考文档:http://www.redis.cn/commands.html

     http://www.cnblogs.com/xrq730/p/8944539.html

作者:YSOcean
本文版权归作者所有,欢迎转载,但未经作者同意不能转载,否则保留追究法律责任的权利。