Repolode
kividbio

kividbio/kividb

用 Rust 编写的多线程内存键值数据库,兼容 Redis 与 Valkey 协议,内置全文与向量搜索。

可替代:RedisRedis Cloud

Star
272
Fork
6
未关闭 Issue
15
最近提交
前天

这是什么?

KiviDB 是一个兼容 Redis 协议(RESP2 与 RESP3)的服务器,现有的 Redis 客户端、redis-cli 及各语言库无需修改代码即可连接。它采用分片的内存键值设计,可利用所有 CPU 核心处理命令,数据可通过快照(dump.kdb)或可选的 AOF 文件持久化。

除常用命令外,KiviDB 还提供类似 Redis Stack 的 FT.* 命令,支持基于 BM25 的全文检索、标签与数值过滤,以及在 Hash 字段上使用 FLAT 或 HNSW 索引的向量近邻搜索。Lua 脚本和 TLS 为可选的 Cargo 特性,同时提供集群模式与主从复制。默认监听 6380 端口,可与运行在 6379 的 Redis 并存。

项目使用 Rust 编写,采用 AGPL-3.0 许可证,提供 Docker 镜像、预编译二进制文件和 Linux 安装包。作者公布了与 Redis、Dragonfly 等的对比测试结果,测试环境为同一套 AWS 配置。

核心功能

  • 01兼容 Redis 协议,现有 Redis 客户端无需改动。
  • 02多线程分片设计,命令可在所有 CPU 核心上执行。
  • 03内置类 Redis Stack 的 FT.* 全文、标签、数值及向量(FLAT/HNSW)搜索。
  • 04支持快照持久化,也可选择开启 AOF 追加日志。
  • 05通过编译特性可选启用 Lua 脚本与 TLS。
  • 06提供集群模式与主从复制。

适用场景

  • 在需要更高单机吞吐的场景中替代 Redis 或 Valkey 作为缓存。
  • 无需额外部署搜索服务,即可为应用增加全文与向量检索。
  • 通过 Docker 搭建兼容 Redis 的本地开发或测试环境。
  • 基于 HNSW 索引,在 Hash 字段上执行向量相似度查询。

快速上手

  1. 1

    使用 Docker 运行服务器

    docker run -d -p 6380:6380 kividb/kividb
  2. 2

    用 PING 检查服务是否响应

    redis-cli -p 6380 PING

使用前须知

  • 默认开启保护模式,远程客户端需要设置密码或绑定地址才能连接。
  • 采用 AGPL-3.0 许可证,修改后通过网络提供的服务需要公开源代码。
  • 项目规模较小(203 颗星),性能数据由项目方在一次受控测试中发布,需自行验证。

标签

常见问题

kividb 是什么?
用 Rust 编写的多线程内存键值数据库,兼容 Redis 与 Valkey 协议,内置全文与向量搜索。 KiviDB 是一个兼容 Redis 协议(RESP2 与 RESP3)的服务器,现有的 Redis 客户端、redis-cli 及各语言库无需修改代码即可连接。它采用分片的内存键值设计,可利用所有 CPU 核心处理命令,数据可通过快照(dump.kdb)或可选的 AOF 文件持久化。
kividb 可以免费使用吗?用的什么许可证?
kividb 以 AGPL-3.0 许可证开源。用于商业产品前,请先确认许可证条款。
kividb 还在维护吗?
活跃维护中。kividb 最近一次提交是在 2026年10月18日。
kividb 适合用来做什么?
在需要更高单机吞吐的场景中替代 Redis 或 Valkey 作为缓存。 无需额外部署搜索服务,即可为应用增加全文与向量检索。 通过 Docker 搭建兼容 Redis 的本地开发或测试环境。 基于 HNSW 索引,在 Hash 字段上执行向量相似度查询。
kividb 怎么安装和运行?
使用 Docker 运行服务器: docker run -d -p 6380:6380 kividb/kividb 用 PING 检查服务是否响应: redis-cli -p 6380 PING
在哪里获取 kividb?
源代码和安装说明在 GitHub 上:https://github.com/kividbio/kividb

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

相关项目