内容提要
Redis发布了最新版本7.4的Redis Community Edition和Redis Stack,包括高度请求的哈希字段过期功能、新的向量数据类型以减少内存使用和时间序列插入过滤器。Redis Insight现在显示哈希字段的TTL,新的数据类型可以减少内存消耗并提高性能。Redis还简化了二级索引的使用,并添加了插入过滤器来减少时间序列的大小。
延伸解读
哈希字段过期:简化会话管理
Redis 7.4 新增哈希字段过期功能,允许为单个哈希字段设置过期时间。此前,若需部分数据过期,必须拆分为多个键,导致逻辑分散。现在,例如在会话管理中,购物车可长期保留,而认证令牌可单独设置 TTL,使数据模型更自然,同时提升内存效率。Redis Insight 也已支持显示每个哈希字段的 TTL,方便监控。
新向量数据类型:内存与性能的权衡
7.4 引入 bfloat16 和 float16 向量数据类型,相比 float32/float64 可降低内存消耗并提升性能。基准测试显示,在召回率 0.95 时,索引时间最多降低 31%(对比 float32),内存使用减少 22% 至 47%,多客户端测试中 QPS 提升 34% 且延迟降低 52%。但需注意,精度损失因数据集而异,生产环境应单独评估。
二级索引与查询增强
Redis Query Engine 简化了二级索引的使用:查询包含特殊字符的 TAG 字段时,只需用双引号包裹查询词,无需转义。此外,新增 INDEXMISSING 关键字,支持索引和查询缺失字段,便于动态数据模型。例如,银行合同可先不包含汇率字段,后续通过 ismissing 查询筛选。这些改进降低了开发复杂度。
时间序列插入过滤器与功能移除
7.4 为时间序列添加插入过滤器,当新样本与上一样本的时间差和值差均很小时,可忽略新测量,从而减少存储大小。同时,Redis Stack 7.4 移除了触发器和函数,因采用率低且开发者可用现有功能实现类似效果,此举旨在简化 Redis。用户需注意这些变更对现有应用的影响。
Q&A
Redis 7.4版本有哪些新功能?
Redis 7.4版本新增了哈希字段过期功能、新的向量数据类型、时间序列插入过滤器、简化的二级索引使用等。
哈希字段过期功能有什么用?
哈希字段过期功能允许为单个哈希字段设置过期时间,简化了缓存和会话管理,提高了内存效率。
新的向量数据类型如何提高性能?
新的bfloat16和float16数据类型可以减少内存消耗和延迟,提升AI应用的响应速度。
Redis Insight现在支持什么新功能?
Redis Insight现在可以显示每个哈希字段的TTL,帮助用户更好地管理数据过期。
如何使用新的插入过滤器减少时间序列数据的大小?
插入过滤器可以忽略新测量值与前一个测量值之间的微小差异,从而减少时间序列数据的大小。
Redis Stack 7.4移除了哪些功能?
Redis Stack 7.4移除了触发器和函数,以简化Redis的使用。