目录

  1. 哈希类型概述
  2. 哈希的典型使用场景
  3. 哈希常用命令
  4. 哈希的高级用法
  5. 使用注意事项
  6. 参考资料

1. 哈希类型概述

Redis 的 哈希(Hash) 是一个键值对集合,适合存储对象。例如一个用户信息可以存储为:

user:1001 -> {
  name: "Alice",
  age: "28",
  email: "alice@example.com"
}

哈希结构适合管理同一实体的多个字段,节省内存且方便修改单个字段。


2. 哈希的典型使用场景

  • 存储用户信息、商品信息、订单详情等结构化数据
  • 用作配置项存储,如 config:siteconfig:email
  • 模拟数据库表中的一条记录

3. 哈希常用命令

命令描述
HSET key field value设置字段的值
HGET key field获取指定字段的值
HMSET key field1 value1 ...批量设置多个字段值(Redis 4.0 后建议用 HSET)
HMGET key field1 field2批量获取字段值
HGETALL key获取所有字段和值
HDEL key field1 field2 ...删除一个或多个字段
HEXISTS key field检查字段是否存在
HINCRBY key field increment字段值递增
HLEN key获取字段数量

4. 哈希的高级用法

  • 字段计数器:可使用 HINCRBY 实现用户经验值累加、积分变动。
  • 热更新配置:后台直接修改哈希内配置字段,实时生效。
  • 字段分离存储:大对象分字段管理,便于更新。

5. 使用注意事项

  • 哈希适合字段较少的对象(建议字段数小于 1000)
  • 字段和值必须为字符串,不支持嵌套结构
  • 避免嵌套复杂对象:如需存储 JSON 建议使用字符串类型存储完整 JSON 文本
  • 字段不可设置过期时间,只能对整个哈希键设置 TTL

6. 参考资料