跳至主要内容

Amazon ElastiCache

关于 Valkey

Valkey 是 Redis 最宽松的开源替代方案。 它可用于缓存、会话存储和消息队列等各种工作负载,并可用作主数据库使用。Valkey 可以作为独立进程守护程序运行,也可以在集群中运行,具有复制和高可用性选项,由 Linux 基金会进行管理。

为什么创建 Valkey?

2024 年 3 月,在 Redis 公司宣布 Redis 的未来版本将不再开源之后,Linux 基金会、Redis OSS 开发人员和贡献者联合起来,开发了 Redis OSS 的 7.2 版本,创建了 Valkey 项目。Valkey 项目由 Linux 基金会管理,并在充满活力的开发者社区的贡献下迅速得到改进。 

将该项目托管于 Linux 基金会之下,可以向社区保证,开放源代码许可证不会被撤销,也不会受制于单一组织的突发奇想。自该项目创建以来,Valkey 已迅速得到采用。它已被包括 AWS 在内的多个 Linux 发行版、软件提供商和云供应商所采用。

Valkey 的优势

    Valkey 是一个开源项目,由充满活力的社区提供支持。Valkey 使用伯克利软件发行版(BSD)三条款许可证,允许您自由使用和修改源代码。Valkey 在全球有大规模的贡献者和爱好者社区,为使用内存式缓存引擎带来了许多额外的长期优势。

    所有 Valkey 数据都驻留在内存中,由此实现低延迟和高吞吐量的数据访问。与传统数据库不同,内存式数据存储不需要访问磁盘。内存式数据存储由此能够支持多一倍的操作,以及将响应时间缩短一倍。这导致平均读写操作达到微秒级,每秒支持数百万次操作。

    Valkey 有各种各样的数据类型和数据结构,可以满足您的应用需求。Valkey 数据类型包括:

    • 排序集 – 根据值排序的集
    • 哈希 – 同于存储字段和值的列表
    • 地理空间 – 用于标记存储位置坐标
    • HyperLogLogs – 一种概率数据结构,用于估算数据集中的唯一项
    • 流 – 日志数据结构消息队列
    • 地理空间 – 基于经度/纬度的地图条目,“附近”

    Valkey 附带有原生数据结构和许多选项,以操作您的数据并与之交互。Valkey 开发人员可以使用一百多种开源客户端。Valkey 支持大多数领先的编程语言和协议,包括 Java、Python、PHP、Perl.、C、C++、C#、JavaScript、Node.js、Ruby、R、Go 等。

    Valkey 以其高性能而闻名。它还支持多节点架构,能够满足运行关键任务生产应用的客户的高可用性需求。Valkey 在单个主节点或集群拓扑中提供主副本架构。这让您可以构建高度可用的解决方案,从而提供一致的性能和可靠性。如果您需要调整群集大小,它还为您提供了多种选项,包括横向扩展、纵向缩减或扩展。这让您的集群能够根据您的需求而发展。

有哪些使用案例?

Valkey 最受欢迎的使用案例

    数据驱动的现代化应用程序需要机器学习来快速处理数据量、数据多样性和数据速率,并自动制定决策。对于游戏和金融服务中的欺诈检测、广告技术中的实时竞价,以及共享约会和共享单车中的配对等使用案例而言,能够在几十毫秒内处理实时数据并做出决策至关重要。Valkey 为您提供了快速的内存式数据存储,可快速构建、培训和部署机器学习模型。

    Valkey 可用于实施高可用性内存缓存,以降低数据访问延迟、提高吞吐量、改善应用性能,并减轻关系数据库或 NoSQL 数据库的负担。Valkey 能够以微秒级的响应时间为频繁请求的项目提供支持,并支持您轻松扩展以满足更高负载的需求,而无需增加昂贵的后端。使用 Database 缓存的常见示例包括:数据库查询结果缓存、持久性会话缓存、网页缓存,以及缓存频繁使用的对象(例如映像、文件和元数据)等。

    作为具备高可用性和持久性的内存式数据存储,Valkey 是应用程序开发人员用来为 Internet 级应用程序存储和管理会话数据的常见选择。Valkey 可提供管理会话数据(如用户配置文件、凭证、会话状态和用户特定的个性化)所需的微秒级延迟、可扩展性和弹性。

    Valkey 提供了快速的内存式数据存储,支持实时流使用案例。Valkey 可存储用于用户配置文件和查看历史记录的元数据、数百万用户的身份验证信息/令牌,以及清单文件,以便 CDN 能够将视频一次性流式传输到数百万移动和桌面用户。

    Valkey 提供专门构建的内存式数据结构和运算符,以便从规模和速度方面管理实时地理空间数据。它可用于实时存储、处理和分析地理空间数据,使地理空间变得轻松快捷。您可以使用 Valkey 向应用程序添加基于位置的功能,如驾驶时间、驾驶距离和兴趣点。

Valkey 和 Redis OSS 之间有什么区别?

Valkey 是由 Linux 基金会管理的、对开源最友好的 Redis 替代方案,因此它将始终保持开源。除这一根本区别以外,Valkey 的创新之处使其与 Redis OSS 进一步拉开差距。

自推出以来,Valkey 引入新的 I/O 线程架构,该架构改善了系统的并行性,并提高了执行命令的效率。与其前身相比,这种新的多线程架构支持提升高达 230% 的吞吐量和缩短高达 70% 的延迟。Valkey 还改进了内存优化,节省高达 41.4% 的总内存,这意味着您可以在与之前版本相同的内存容量下存储更多数据。

AWS 如何满足您的需求

AWS 提供适用于 Valkey 的 Amazon ElastiCache,这是一款与 Valkey 完全兼容的无服务器、全托管缓存服务。借助 ElastiCache,您可以在云端轻松地启动、运行和扩展 Valkey 工作负载。因此,成千上万的客户使用 ElastiCache 来提高其数据库和应用程序的性能、实现更高的规模并优化成本。

ElastiCache 通过缓存主数据库和数据存储中的数据,在每秒数亿次操作中仍能保持微秒级的读写延迟。 借助适用于 Valkey 的 ElastiCache,您可以轻松受益于基于开源技术构建的体验,同时利用 ElastiCache 多年来提供的卓越运营、安全性和可靠性。

使用 ElastiCache Serverless,您可以在不到一分钟内设置缓存,并立即根据应用程序的需求进行扩展。 与其他支持的引擎相比,适用于 Valkey 的 ElastiCache Serverless 的价格低 33%,基于节点的适用于 Valkey 的 ElastiCache 的价格低 20%。

适用于 Valkey 的 ElastiCache 可通过 AWS 免费套餐免费试用,您还可以阅读我们的博客以了解更多关于 Valkey 的信息。