【缓存与加速技术实践】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:按位置索引逆序获取元素/按分数逆序获取元素/获取元素逆序位置索引。
相关推荐
Hello.Reader5 分钟前
Redis热点数据管理全解析:从MySQL同步到高效缓存的完整解决方案
redis·mysql·缓存
李昊哲小课14 分钟前
deepin 安装 zookeeper
大数据·运维·zookeeper·debian·hbase
真真-真真31 分钟前
WebXR
linux·运维·服务器
指尖上跳动的旋律44 分钟前
shell脚本定义特殊字符导致执行mysql文件错误的问题
数据库·mysql
一勺菠萝丶1 小时前
MongoDB 常用操作指南(Docker 环境下)
数据库·mongodb·docker
wanhengidc2 小时前
短视频运营行业该如何选择服务器?
运维·服务器
lucky_syq2 小时前
Hive SQL和Spark SQL的区别?
hive·sql·spark
m0_748244832 小时前
StarRocks 排查单副本表
大数据·数据库·python
雨中rain2 小时前
Linux -- 从抢票逻辑理解线程互斥
linux·运维·c++
C++忠实粉丝2 小时前
Redis 介绍和安装
数据库·redis·缓存