产品对比
SSD 的容量成本。超越 DRAM 对照组的实测吞吐量。
九月 SPDK 测试中,Lavik 在 NVMe SSD 上的 GET 与 SET 峰值 QPS 均高于 DRAM 中的 Redis 和 Valkey。逐一比较存储架构、尾延迟与成本,找到适合实际工作负载的选择。
以 20:1 的 DRAM/SSD 容量单价比计算,值容量成本可降至 1/20。SSD 同类产品则需进一步比较每节点能提供多少吞吐量。 完整九月报告 ↗
按你的现有技术栈比较
九月 · DRAM 对照
Lavik vs Redis
实测吞吐量更高,容量突破 DRAM 成本约束。
1.04× GET 吞吐量各自峰值点;不代表所有负载或 SLA。
九月 · DRAM 对照
Lavik vs Valkey
保留熟悉的协议,改变容量成本。
1.05× GET 吞吐量各自峰值点;不代表所有负载或 SLA。
九月 · 十亿键
Lavik vs DragonflyDB
十亿键读取,显著降低实测尾延迟。
2.04× GET 吞吐量各自峰值点;不代表所有负载或 SLA。
九月 · 十亿键
Lavik vs Garnet
读取优势突出,写入延迟需按目标选择。
2.13× GET 吞吐量各自峰值点;不代表所有负载或 SLA。
八月 · 历史磁盘测试
Lavik vs Pika
保留磁盘容量,显著提升实测吞吐量。
3.58× GET 吞吐量相同 80 个连接,200M 键;历史 Lavik 构建。
八月 · 历史磁盘测试
Lavik vs Apache Kvrocks
Redis 数据放上磁盘,实测单机 QPS 更高。
4.39× GET 吞吐量相同 80 个连接,200M 键;历史 Lavik 构建。
八月 · 历史磁盘测试
Lavik vs Tendis
面向磁盘 Redis 负载,提供更高实测吞吐量。
4.51× GET 吞吐量相同 80 个连接,200M 键;历史 Lavik 构建。
八月 · 历史磁盘测试
Lavik vs KeyDB
当工作集过于分散,热点层不再足够。
50.50× GET 吞吐量相同 80 个连接,200M 键;历史 Lavik 构建。
熟悉的协议,面向 NVMe SSD 的执行路径
速度来自架构,而不是要求应用换一种协议。
Lavik 是 Apache 2.0 开源的 Redis 兼容键值存储。内存保存键索引,NVMe SSD 承载值数据。线程本地状态、协程与异步 I/O 让工作线程在等待存储时继续处理其他请求;SPDK 提供直接访问 NVMe 的存储路径。九月的 SPDK 测试仍使用内核 TCP,并未使用 DPDK 网络。
存储引擎覆盖字符串、哈希、列表、集合与有序集合载荷;集合可使用分组存储。键索引、路由元数据和缓冲区仍消耗内存。字符串 GET/SET 基准并不证明其他数据结构具有相同 QPS。 beta.1 架构 ↗ · 存储与集合 ↗ · Apache 2.0 ↗
比较实验,不混合不同实验的数字
10M 键 · Redis / Valkey
九月 18 日:1 KiB 值、30 秒窗口。比较 Lavik beta.1 SPDK 与内存对照组。持久化配置与峰值连接数不同。
1B 键 · Dragonfly / Garnet
九月 18 日:1 KiB 值、60 秒窗口、六块 NVMe。查看全部连接数测量点和 p99 条件,不把峰值等同于 SLA。
200M 键 · 磁盘同类产品
八月 11–12 日:1,000–4,000 字节值、300 秒窗口、80 个连接、两块 NVMe。这是历史构建结果,并非 beta.1 重新测试。