HeadlinesBriefing HeadlinesBriefing.com

KiviDB:内置搜索的 Rust 版 Redis 替代品

Hacker News •
×

开发者发布了 KiviDB,这是一款用 Rust 编写的开源多线程 Redis 和 Valkey 替代品。该项目始于 2026 年 2 月,最初是作者为学习 Rust 而开展的,同时也为了解决作者在使用 Dragonfly 时遇到的快照后内存激增和运行中 Pod 内存不足的问题。KiviDB 同时支持 RESP2 和 RESP3 协议,因此现有的 Redis 客户端无需修改即可使用。其键空间在多个线程间分片,在 Linux 上性能最佳,这得益于通过 tokio_uring 库使用的 io_uring,在其他操作系统上则回退到 Tokio。核心引擎采用 AGPLv3 许可,作者指出其支持约 98-99% 的 Redis 8.10 命令。

作者在同一 us-east1 置放群组中的两台 c7gn.metal 服务器上,使用 memtier-benchmark 进行了基准测试,测试数据为 1000 万个键,每个键 100 字节,共使用 32 个核心。在流水线深度为 16 的情况下,KiviDB 达到每秒 2120 万次 GET 操作,而 Dragonfly 2.0 为 910 万次,Redis 8.10 为 240 万次,32 分片的 Redis Cluster 为 470 万次。在不使用流水线的情况下,Dragonfly 略快,为每秒 335 万次操作,KiviDB 为 307 万次。每个键的内存占用方面,KiviDB 为 177 字节,Dragonfly 为 134 字节,Redis 为 178 字节。向量写入速度慢于其他方案,而向量查询在较低 ef 参数下更快,但在高 ef 参数下慢于 Dragonfly。

该项目还内置了全文和向量搜索功能,作者还构思了一项跨 AWS、GCP 和 Azure 的云托管服务。已知的命令缺口在 GitHub 上进行跟踪,并欢迎贡献者参与。只需一条 Docker 命令即可试用该项目,服务器将在 6380 端口启动。

来源: Hacker News · 由HeadlinesBriefing整理摘要