【缓存与加速技术实践】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:按位置索引逆序获取元素/按分数逆序获取元素/获取元素逆序位置索引。
相关推荐
ZYJCSZKJ1 小时前
基于地理位置围栏的短视频POI团购系统:LBS空间索引与流量分发实践
java·服务器·数据库
名字还没想好☜7 小时前
用 systemd 托管后台服务:Restart 策略、日志接管、资源限制与开机自启全踩一遍
运维·docker·kubernetes
乌恩大侠8 小时前
GH200 新增 NVMe SSD 分区、格式化与挂载完整流程
运维·服务器·前端
tangwangbi8 小时前
Linux 系统配置文件:/etc/profile、~/.bashrc 和 ~/.bash_profile 三者之间的区别与作用
linux·运维·bash
蜀道山老天师9 小时前
Shell Bash变量与运算符(含条件测试与流程控制)
linux·运维·bash
Mr.朱鹏9 小时前
Linux 服务器 LVM 根分区在线动态扩容
linux·服务器·数据库
摇滚侠9 小时前
《SpringBoot 3:入门与应用实战》第 12 章 JDBC 与事务 数据库初始化机制 阅读笔记 36
数据库·spring boot·笔记
草邦设计开发团队_媒体资源平台9 小时前
GEO 信源整合一键发布软文:从内容生产到流量获客的自动化实践
运维·人工智能·自动化
zhou lily9 小时前
非标自动化管理系统ERP如何选?2026年10大ERP软件对比分析
运维·自动化
qiuhaipeng19 小时前
Claude code 升级后上下文长度变短问题
java·前端·数据库