Redis 8.0
提示
来自deepseek解释
原文链接:https://redis.io/docs/latest/develop/whats-new/8-0/
Redis 8.0 引入了强大的新能力,包括向量集合数据结构的测试版,专为 AI 使用场景(如语义搜索和推荐系统)设计。
本版本还提供了超过 30 项性能改进,包括:
- 命令执行速度提升高达 87%
- 复制速度提升高达 18%
此外,Redis Community Edition 已更名为 Redis Open Source,标志着向统一、现代化分发的转变。此版本提供 Redis 的全部功能——无需模块、无碎片化,只需 Redis。
以下是这些更新的详细说明。
新特性
向量集合 [beta]
新的 向量集合 数据结构支持高维向量相似性搜索,非常适合 AI 使用场景,如语义搜索和推荐系统。向量集合是对 Redis 通过 Redis Search 提供的现有向量搜索能力的补充,目前处于测试版。API 和行为可能在未来的版本中发生变化。
新的哈希命令
Redis 8 在 Redis 7.4 引入的哈希字段级过期功能基础上,增加了三个用于处理哈希的新命令:
这些命令简化了常见的缓存和会话管理使用模式。
改进
Redis Search 改进
Redis Search 允许用户将 Redis 用作文档数据库、向量数据库、二级索引和搜索引擎。通过 Redis Search,用户可以为哈希和 JSON 文档定义索引,并使用丰富的查询语言进行向量搜索、全文搜索、地理空间查询和聚合。
使用场景包括:
- 向量搜索:基于存储在
JSON或哈希中的向量嵌入进行语义相似性搜索 - 精确匹配:使用过滤器、标签和范围进行查找
- 全文搜索:支持词干提取、同义词和模糊匹配
Redis Search 支持广泛的应用程序,从 AI 检索增强生成(RAG)系统到功能完备的搜索引擎。
访问控制改进
访问控制列表(ACL)已更新,以支持 Redis 8 中引入的新数据结构。现有的 ACL 类别(如 @read 和 @write)现在包括对 JSON、时间序列、向量 和 概率 数据结构的命令。
这些更新允许对用户在每个数据结构上可以执行的操作进行更精细的控制。
性能改进
Redis 8 实现了 Redis 历史上最大的性能飞跃,包含 30 多项优化,包括:
- 命令延迟降低高达 87%
- 副本节点内存节省 35%
- 通过水平和垂直扩展,查询处理能力提升 16 倍
这些改进惠及单节点和集群部署。更多详情请参见 Redis 8 GA 博客文章。
变更
不兼容变更
ACL 行为
包含模块的命令现在归入标准类别(例如 +@read、+@write)。例如,拥有 +@all -@write 的用户将不再能够像以前那样执行 JSON.SET。需要显式包含新的命令类别以维持访问权限。
Redis Search
以下变更影响了 Redis Search 的行为和验证:
- 对
LIMIT参数强制验证(如果 limit 为 0,则 offset 必须为 0)。 - 对
FT.CURSOR READ和FT.ALIASADD强制解析规则。 APPLY表达式中的幂运算优先级现在需要括号。- 无效输入现在返回错误而不是空结果。
- 重新审视了
AVG、COUNT、SUM、STDDEV、QUANTILE等归约器的默认值。 - 评分更新(
BM25现在为默认值,替代TF-IDF)。 - 改进了对过期记录、内存约束和格式错误字段的处理。
有关 Redis Search 相关变更的完整列表,请参见发布说明。
其他变更
统一 Redis
随着时间的推移,Redis 引入了多个模块来应对新的使用场景,如搜索、向量相似性、时间序列分析和概率建模。虽然这些模块扩展了 Redis 的功能,但管理版本兼容性和模块安装带来了不便。
Redis Stack 通过将模块捆绑在一起部分解决了这个问题,但它也在生态系统中造成了碎片化。
Redis 8 将 Redis Stack 和 Redis Community Edition 合并为一个统一的分发版本:Redis Open Source。所有以前模块化的功能现在都内置到 Redis Open Source 包中,无需管理单独的模块。现在您在所有部署中都能获得单一、一致的功能集。
组件版本
Redis 8.0 只提供 Redis —— 无需模块,无碎片化。