Redis官方文档:https://redis.io/about/redis-stack/
Redis Stack的创建是为了让开发人员能够使用后端数据平台构建实时应用程序,该平台可以在毫秒或更短的时间内可靠地处理请求。
Redis Stack以原始Redis OSS为核心,并使用现代数据模型和数据处理工具对其进行增强,并继续在每一个环节中对抗复杂性。
最终,Redis Stack的目标是构建一个实时数据平台,继续实现Redis OSS的理念:简单性,性能和可靠性。
1. Redis Stack Server
Redis Stack Server 是 Redis 的一个扩展版本。
它包含了 Redis 的所有核心功能,并在此基础上添加了一系列新的数据类型和模块,旨在为开发者提供更广泛的功能支持。
Redis 和 Redis Stack Server 之间的区别在于功能集、适用场景以及所提供的开发体验。
虽然两者都基于相同的内核,但 Redis Stack Server提供了更多的特性和工具来满足更复杂的应用需求。
Redis Stack Server中包含了一些额外的特性,例如:
- JSON 数据类型:允许用户以原生方式处理 JSON 文档。
- 搜索模块 RediSearch:提供了次毫秒级的全文搜索能力。
- 图形数据库模块 RedisGraph:通过图算法加速社交网络分析、推荐系统等应用。
- 时间序列模块 RedisTimeSeries:优化了时间序列数据的存储和查询。
- 流数据处理模块 Streams:增强了对流数据的支持,适合构建实时分析系统。
尽管 Redis Stack 增加了很多新特性,但它并不是 Redis 的替代品,而是作为补充存在。
两者将继续并行发展,根据各自的特点服务于不同的用户群体。
这意味着对于某些只需要基础键值对存储服务的应用来说,使用标准版 Redis 就足够;
而对于那些寻求更多样化数据处理能力的应用,则可以考虑采用 Redis Stack。
2. RedisInsight
开始使用Redis Stack的最佳方法是使用RedisInsight,这是一个用于理解和优化Redis数据的可视化工具。
![](https://ichiblog.cn/wp-content/uploads/2025/01/图片-1-1024x599.png)
以下是RedisInsight的特性和功能:
- 使用浏览器工具直观地查看数据结构,并根据名称空间对键进行分组。
- 在大多数Redis Stack数据结构上使用CRUD。
- 利用高级命令行界面–具有智能命令自动完成功能和复杂数据可视化功能。
- 使用Profiler工具真实的分析Redis的流量。
- 随时使用嵌入式Redis CLI。
- 使用内存分析工具分析内存使用情况。
- 使用Slowlog工具识别和排除瓶颈。
- 集群与哨兵支持,集群管理和哨兵集成
3. Redis Stack Client SDK
一些Redis客户端库支持Redis Stack。其中包括redis-py、node_redis、NRedisStack和Jedis。
此外,四个更高级别的对象映射库也支持Redis Stack:Redis OM .NET,Redis OM Node,Redis OM Python,Redis OM Spring。