NoKV is designed for modern hardware and distributed workloads. It combines the best of academic research (WiscKey, W-TinyLFU) with industrial-grade engineering (Raft, Percolator).
Lock-light commit queue and Batch WAL writing deliver write throughput that saturates NVMe SSDs.
Built-in Ristretto block cache plus byte-budgeted index/bloom caches keep hot working sets close to the read path.
Multi-Raft replication for high availability. Percolator model for cross-row ACID transactions. Snapshot Isolation by default.
Benchmark methodology and result snapshots are maintained only in:
../benchmark/README.md
%%{init: {
"themeVariables": { "fontSize": "20px" },
"flowchart": { "nodeSpacing": 55, "rankSpacing": 75, "curve": "basis" }
}}%%
graph TD
Client["Client / Redis"] -->|RESP Protocol| Gateway["Redis Gateway"]
Gateway -->|RaftCmd| RaftStore
subgraph "RaftStore (Distributed Layer)"
RaftStore -->|Propose| RaftLog["Raft Log (WAL)"]
RaftLog -->|Consensus| Apply["Apply Worker"]
end
subgraph "Storage Engine (LSM)"
Apply -->|Batch Set| MemTable
MemTable -->|Flush| SSTable["SSTables (L0-L6)"]
SSTable -->|Compact| SSTable
Apply -->|Large Value| VLog["Value Log"]
end
subgraph "Cache Layer"
BlockCache["Block Cache (Ristretto)"] -.-> SSTable
IndexCache["Index Cache (W-TinyLFU, byte budget)"] -.-> SSTable
end
Built with ❤️ by feichai0017 and contributors.