Repolode
apache

apache/kvrocks

基于 RocksDB 存储、兼容 Redis 协议的分布式 NoSQL 键值数据库,旨在降低内存成本并提升容量。

可替代:Redis

Star
4,491
Fork
690
未关闭 Issue
291
最近提交
昨天

这是什么?

Apache Kvrocks 是一个以 RocksDB 为存储引擎的分布式键值 NoSQL 数据库,兼容 Redis 协议,应用可以直接使用任意 Redis 客户端访问。与把数据全部放在内存中的 Redis 相比,它的目标是降低内存成本并提升存储容量。

Kvrocks 提供命名空间(namespace)功能,每个命名空间使用独立的令牌进行隔离,而不是共用一个全局密码。主从复制采用类似 MySQL 的异步 binlog 方式,并支持通过 Redis Sentinel 在主节点或从节点故障时完成切换。集群采用集中式管理,同时仍可使用标准 Redis 集群客户端访问。

服务端支持 Linux 与 macOS,架构涵盖 x86_64、ARM 和 RISC-V,可选择通过 OpenSSL 启用 TLS。配套工具可用于集群管理、监控指标导出,以及与 Redis 之间的数据迁移。

核心功能

  • 01兼容 Redis 协议,标准 Redis 客户端无需修改即可使用。
  • 02命名空间配合独立令牌实现数据隔离。
  • 03基于 binlog 的异步主从复制。
  • 04支持 Redis Sentinel 实现故障切换。
  • 05集中式集群模式,可通过 Redis 集群客户端访问。
  • 06可选通过 OpenSSL 启用 TLS。

适用场景

  • 存储数据量大、全部放入 Redis 内存成本过高的场景。
  • 在保留现有 Redis 客户端的前提下,希望降低内存成本的 Redis 替代方案。
  • 需要基于令牌隔离数据的多租户共享服务。

快速上手

  1. 1

    克隆代码仓库

    git clone https://github.com/apache/kvrocks.git
  2. 2

    进入项目目录

    cd kvrocks
  3. 3

    编译 Kvrocks

    ./x.py build
  4. 4

    使用配置文件运行 Kvrocks

    ./build/kvrocks -c kvrocks.conf

使用前须知

  • 仅支持 Linux 和 macOS。
  • 从源码构建需要安装多个系统软件包和 C++ 工具链。

收录于专题

标签

常见问题

kvrocks 是什么?
基于 RocksDB 存储、兼容 Redis 协议的分布式 NoSQL 键值数据库,旨在降低内存成本并提升容量。 Apache Kvrocks 是一个以 RocksDB 为存储引擎的分布式键值 NoSQL 数据库,兼容 Redis 协议,应用可以直接使用任意 Redis 客户端访问。与把数据全部放在内存中的 Redis 相比,它的目标是降低内存成本并提升存储容量。
kvrocks 可以免费使用吗?用的什么许可证?
kvrocks 以 Apache-2.0 许可证开源。用于商业产品前,请先确认许可证条款。
kvrocks 还在维护吗?
活跃维护中。kvrocks 最近一次提交是在 2026年11月6日。
kvrocks 适合用来做什么?
存储数据量大、全部放入 Redis 内存成本过高的场景。 在保留现有 Redis 客户端的前提下,希望降低内存成本的 Redis 替代方案。 需要基于令牌隔离数据的多租户共享服务。
kvrocks 怎么安装和运行?
克隆代码仓库: git clone https://github.com/apache/kvrocks.git 进入项目目录: cd kvrocks 编译 Kvrocks: ./x.py build 使用配置文件运行 Kvrocks: ./build/kvrocks -c kvrocks.conf
在哪里获取 kvrocks?
源代码和安装说明在 GitHub 上:https://github.com/apache/kvrocks

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目