【缓存与加速技术实践】Redis数据类型

文章目录

  • [Redis 数据类型](#Redis 数据类型)
    • [String 数据类型](#String 数据类型)
    • [List 数据类型](#List 数据类型)
    • [Hash 数据类型](#Hash 数据类型)
    • [Set 数据类型](#Set 数据类型)
    • [Sorted Set 数据类型](#Sorted Set 数据类型)

Redis 数据类型

Redis支持五种主要的数据类型:

String(字符串)、List(列表)、Hash(散列)、Set(无序集合)和Sorted Set(有序集合)。

String 数据类型

  • 概述:最基本的数据类型,最大存储容量为512MB,支持二进制安全存储。
  • 常用命令
    • SET/GET:设置和获取键值。
    • APPEND:追加字符串。
    • STRLEN:获取字符串长度。
    • INCR/DECR:递增/递减数值。
    • INCRBY/DECRBY:按指定数值递增/递减。
    • GETSET:获取旧值并设置新值。
    • SETEX:设置键值并指定过期时间。
    • SETNX:仅在键不存在时设置值。
    • MSET/MGET:批量设置/获取键值。
    • MSETNX:批量设置键值,仅当所有键都不存在时成功。

List 数据类型

  • 概述:元素为字符串,按插入顺序排序,支持头部和尾部操作。
  • 常用命令
    • LPUSH/LPUSHX:从左侧插入元素。
    • LRANGE:获取指定范围的元素。
    • LPOP/LLEN:弹出左侧元素/获取列表长度。
    • LREM/LSET/LINDEX/LTRIM:删除元素/设置指定索引的元素值/获取指定索引的元素值/修剪列表。
    • LINSERT:在指定元素前或后插入新元素。
    • RPUSH/RPUSHX:从右侧插入元素。
    • RPOP/RPOPLPUSH:弹出右侧元素/将元素从一个列表移动到另一个列表。

Hash 数据类型

  • 概述:用于存储对象,字段名作为键,字段值作为值。
  • 常用命令
    • HSET/HGET/HDEL:设置/获取/删除字段值。
    • HEXISTS/HLEN:检查字段是否存在/获取字段数量。
    • HSETNX:仅在字段不存在时设置值。
    • HINCRBY:按指定数值递增字段值。
    • HGETALL/HKEYS/HVALS:获取所有字段和值/获取所有字段名/获取所有字段值。
    • HMGET/HMSET:批量获取/设置字段值。

Set 数据类型

  • 概述:无序集合,元素唯一。
  • 常用命令
    • SADD/SMEMBERS/SCARD:添加元素/获取所有元素/获取集合大小。
    • SISMEMBER:检查元素是否存在。
    • SPOP/SREM:随机弹出元素/删除指定元素。
    • SRANDMEMBER:随机返回一个元素。
    • SMOVE:将元素从一个集合移动到另一个集合。

Sorted Set 数据类型

  • 概述:有序集合,元素唯一且关联分数。
  • 常用命令
    • ZADD/ZCARD/ZCOUNT:添加元素/获取集合大小/统计分数范围内的元素数量。
    • ZREM/ZINCRBY/ZSCORE:删除元素/按指定数值递增分数/获取元素的分数。
    • ZRANGE/ZRANK:按顺序/位置索引获取元素。
    • ZRANGEBYSCORE/ZREMRANGEBYRANK/ZREMRANGEBYSCORE:按分数范围/位置索引范围/分数范围删除元素。
    • ZREVRANGE/ZREVRANGEBYSCORE/ZREVRANK:按位置索引逆序获取元素/按分数逆序获取元素/获取元素逆序位置索引。
相关推荐
天天进步201517 分钟前
【Linux 运维】告别 cat:如何按“时间段”优雅地截取日志文件?
linux·运维·服务器
a努力。34 分钟前
Redis Java 开发系列#2 数据结构
java·数据结构·redis
遇见火星1 小时前
Linux性能调优:理解CPU中的平均负载和使用率
linux·运维·服务器·cpu
宋军涛1 小时前
记一次Sqlserver数据库存储过程调用导致的连接池耗尽事件
数据库
前端小臻1 小时前
MySQL 错误 1005 (errno: 150) 深度解析与解决方案
数据库·mysql
魔镜前的帅比1 小时前
向量数据库原理
数据库·人工智能
Dev7z1 小时前
在MySQL里创建数据库
android·数据库·mysql
Leon-Ning Liu2 小时前
19C Oracle 集群(RAC)软件 与数据库软件 PSU 补丁部署流程
数据库·oracle
invicinble2 小时前
mysql建立存数据的表(一)
android·数据库·mysql
清风6666662 小时前
基于单片机的8路抢答器设计与实现
数据库·单片机·嵌入式硬件·毕业设计·课程设计·期末大作业