了解 Redis 数据类型
Redis 支持的数据类型概述
Redis 是一个数据结构服务器。Redis 的核心是提供一系列原生数据类型,可帮助您解决从缓存到 排队再到 事件处理等各种问题。下面是每种数据类型的简短描述,以及指向更广泛概述和命令参考的链接。每个概述都包含一个带有代码示例的综合教程。
核心数据类型
Redis 社区版 实现以下数据类型:
Redis Stack和 Redis Enterprise 还包含一些实现其他有用类型(例如 JSON)的扩展模块。请参阅扩展数据类型 以获取完整列表。
字符串
Redis 字符串是最基本的 Redis 数据类型,表示字节序列。有关更多信息,请参阅:
列表
Redis 列表是按插入顺序排序的字符串列表。有关更多信息,请参阅:
套
Redis 集是唯一字符串的无序集合,其作用类似于您最喜欢的编程语言中的集(例如Java HashSet、Python 集等)。使用 Redis 集,您可以在 O(1) 时间内添加、删除和测试是否存在(换句话说,无论集元素的数量是多少)。有关更多信息,请参阅:
哈希
Redis 哈希是建模为字段值对集合的记录类型。因此,Redis 哈希类似于Python 字典、Java HashMap和Ruby 哈希。有关更多信息,请参阅:
排序集
Redis 排序集是唯一字符串的集合,这些字符串按每个字符串的关联分数保持顺序。有关更多信息,请参阅:
流
Redis 流是一种数据结构,其作用类似于仅附加日志。流有助于按事件发生的顺序记录事件,然后将其联合起来进行处理。有关更多信息,请参阅:
地理空间索引
Redis 地理空间索引对于查找给定地理半径或边界框内的位置非常有用。有关详细信息,请参阅:
位图
Redis 位图可让您对字符串执行按位运算。有关更多信息,请参阅:
位域
Redis 位字段可高效地将多个计数器编码为一个字符串值。位字段提供原子获取、设置和递增操作,并支持不同的溢出策略。有关更多信息,请参阅:
扩展数据类型
Redis Stack和 Redis Enterprise 包含一些实现以下数据类型的扩展模块:
Redis 社区版默认不包含这些内容 。请参阅核心数据类型,了解 Redis 社区版原生支持的类型列表。
JSON
Redis JSON提供与流行的JSON文本文件格式相匹配的结构化、分层数组和键值对象。您可以将 JSON 文本导入 Redis 对象并访问、修改和查询单个数据元素。有关更多信息,请参阅:
概率数据类型
这些数据类型可让您以近似但高效的方式收集和计算统计数据。可用的类型如下:
超级日志
Redis HyperLogLog数据结构提供大型集合基数(即元素数量)的概率估计。有关更多信息,请参阅:
布隆过滤器
Redis 布隆过滤器 可让您检查集合中是否存在某个元素。有关更多信息,请参阅:
布谷鸟过滤器
Redis Cuckoo 过滤器 可让您检查集合中是否存在某个元素。它们与 Bloom 过滤器类似,但在功能和性能之间的权衡略有不同。有关更多信息,请参阅:
t-摘要
Redis t-digest 结构根据数据值流估算百分位数。有关更多信息,请参阅:
前K
Redis Top-K 结构可估算值流中数据点的排名。有关更多信息,请参阅:
计数分钟草图
Redis Count-min 草图 估计值流中数据点的频率。有关更多信息,请参阅:
时间序列
Redis 时间序列 结构可让您存储和查询带时间戳的数据点。有关更多信息,请参阅:
添加扩展
要扩展所包含的数据类型提供的功能,请使用以下选项之一: