Redis使用——Redis支持的五种数据类型

2022-01-11 14:52:32 浏览数 (1)

Redis使用——Redis支持的五种数据类型

背景

日常我们开发时,我们会遇到各种各样的奇奇怪怪的问题(踩坑o(╯□╰)o),这个常见问题系列就是我日常遇到的一些问题的记录文章系列,这里整理汇总后分享给大家,让其还在深坑中的小伙伴有绳索能爬出来。 同时在这里也欢迎大家把自己遇到的问题留言或私信给我,我看看其能否给大家解决。

开发环境

  • 系统:Ubuntu
  • 工具:Docker
  • 镜像:Redis
  • 官方配置:redis.conf

内容

本节我们对于Redis的数据类型进行解析,Redis的数据类型共分为五种,其分别是:

  • string(字符串)
  • hash(哈希)
  • list(列表)
  • set(集合)
  • zset(sorted set:有序集合)

1、string字符串类型

string字符串类型相信大家都比较容易理解,这和我们日常使用的一些数据库一致,它在Redis中存储时通常是key value的形式。当我们进行使用时可以将任意被转为字符串格式的数据存储到里面。它也是Redis中最基本的数据类型,最大存储为512MB。

2、hash哈希类型

hash哈希类型是一个 string 类型的 field(字段) 和 value(值) 的映射表,通常用来存储对象使用,例如张三的用户信息、提交的一个工单草稿等场景,其在Redis中存储时是key value集合的形式,也就是value中是一个集合。相当于里面存储了好多好多的string对象。每个hash可以存储2^32 - 1 键值对(40多亿)。

3、list列表

list列表类型是string列表,其按照插入顺序进行排列,在使用时可以在列表的头部或者尾部进行添加。一个列表可以存储2^32-个元素(40多亿)。一般我们用于消息队列、消息交换、缓存列表等场景下。

4、set集合

set集合是string类型的无序集合,集合中不能出现重复的数据,每个成员都是唯一的;同样的这个集合也是可以存储2^32-个元素(40多亿)。使用场景例如求交集、IP访问记录等等。

5、sorted set

sorted set 集合是string类型的有序集合,每个元素都会关联一个double类型的分数,Redis依据这个分数进行从小到大排序。成员同样也是唯一的,不过分数可以重复。使用场景例如用户基础信息缓存、全班学生成绩、排行榜等等。

0 人点赞