【缓存与加速技术实践】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:按位置索引逆序获取元素/按分数逆序获取元素/获取元素逆序位置索引。
相关推荐
YOU OU5 小时前
Redis基础常识与命令
数据库·redis·缓存
Yana.nice6 小时前
Linux 只保留 30 天内日志(find命令删除日志文件)
linux·运维·chrome
Database_Cool_7 小时前
OLTP 和 OLAP 区别详解:分析型数据库和事务型数据库怎么选(附阿里云 AnalyticDB MySQL 选型指南)
数据库·mysql·阿里云
爱写代码的阿森8 小时前
鸿蒙三方库 | harmony-utils之KvUtil键值型数据库操作详解
数据库·华为·harmonyos·鸿蒙·huawei
Database_Cool_8 小时前
单机 MySQL 迁移到分布式数据库方便吗?阿里云 PolarDB-X 100% MySQL 协议兼容零改造平滑迁移
数据库·分布式·mysql
2601_960567969 小时前
电商套图自动化效率的工程量化分析——从逐张生成到批量套图的架构演进
运维·架构·自动化
姜太小白9 小时前
【MySQL】 索引优化实战:解决 WHERE 等值 + IS NULL 查询,TEXT 字段报错 1167 的完整指南
数据库·mysql
窝子面9 小时前
手搓最简前后端协作-node
javascript·数据库
吳所畏惧10 小时前
宝塔面板Redis密码修改指南:SSH命令修改 vs 面板UI界面修改,哪个更靠谱?
运维·服务器·数据库·redis·缓存·ssh