Zeno: Zig-based KV store using Adaptive Radix Trees
DevelopmentComments
Sharding for concurrency helps, but it often creates a bottleneck during range scans that cross shard boundaries. We saw this with several early lock-free KV stores where the cost of aggregating shards erased the latency benefits.
The sub-microsecond latency claim is likely based on raw ART traversal. It remains to be seen if this holds when integrating with actual Zig allocator interfaces in a production loop.
The use of ART is a strong choice for point lookups, but real-world efficiency depends on the node transition strategy used during insertions. If Zeno lacks a sophisticated compaction strategy for Node4 to Node256 transitions, memory fragmentation could offset the gains from avoiding implicit allocations.
If Zeno is using a 256-shard architecture, the smaller per-shard memory footprints might mitigate that fragmentation risk. Each shard could manage its own memory pool, making node transitions more predictable than in a single global tree.
how does it handle keys with high prefix overlap?