A key-value engine that dynamically trades memory for read or write performance, breaking the traditional pick-any-two tradeoff.
Key-value storage is a foundational building block for modern databases and applications, but concrete implementations have long been constrained by a fundamental tradeoff: only two of three dimensions — read performance, write performance, and memory usage — can be optimized at once. State-of-the-art systems like RocksDB and SplinterDB cope by fixing their on-disk data structure to favor one dimension, then using memory (Bloom filters, caches, histograms) to recover performance in the other. This approach is inherently static: once the optimization point is chosen, changing it requires expensive I/O restructuring or ETL pipelines.
TurtleKV takes a different approach. Rather than biasing the on-disk structure toward reads or writes, TurtleKV uses a novel unbiased on-disk data structure — the TurtleTree — that is equally suited for both. A single tuning knob controls how memory is allocated at runtime: shifting the budget toward page caching improves read throughput, while shifting it toward checkpoint buffering improves write throughput. This allocation can be changed dynamically, without altering the on-disk format, enabling TurtleKV to adapt to changing workloads on the fly.
When evaluated on YCSB, TurtleKV achieves up to 8Ă— the write throughput of RocksDB and up to 5Ă— the read throughput, while incurring similar space amplification. Compared to SplinterDB, TurtleKV achieves up to 40% better point query performance, up to 6Ă— better range scan performance, and 50% less space amplification.
👤 Members
Tony Astolfi
Vidya Silai
Darby Huye
Max Liu
Raja Sambasivan
Johes Bater
đź“„ Related Publications
2025
arXiv
Dynamic read & write optimization with TurtleKV
Anthony Astolfi, Vidya Silai, Darby Huye, and 3 more authors
High read and write performance is important for generic key/value stores, which are fundamental to modern applications and databases. Yet, achieving high performance for both reads and writes is challenging due to traditionally limited memory and the pick-any-two-out-of-three tradeoff between memory use, read performance, and write performance. Existing state-of-the-art approaches limit memory usage and chose a primary dimension (reads or writes) for which to optimize their on-disk structures. They recover performance in the remaining dimension by other mechanisms. This approach limits databases’ maximum performance in the remaining dimension and their dynamic (online) tunability to respond to changing workloads. We explore a different approach that dynamically trades memory for read or write performance as needed. We present TurtleKV, which includes a novel unbiased data structure for on-disk storage. It includes a knob that dynamically increases memory reserved for increasing read or write performance. When evaluated on YCSB, TurtleKV achieves up to 8x the write throughput of industry-leader RocksDB and up to 5x the read throughput while incurring similar space amplification. Compared to the state-of-the-art system SplinterDB, TurtleKV runs up to 40% better on point queries, up to 6x better on range scans and achieves similar write performance, while incurring 50% less space amplification.
@techreport{Astolfi2025,author={Astolfi, Anthony and Silai, Vidya and Huye, Darby and Liu, Lan and Sambasivan, Raja R. and Bater, Johes},title={Dynamic read \& write optimization with TurtleKV},number={arXiv:2509.10714v1 [cs.DB]},publisher={Cornell University},address={Ithaca, NY, USA},pages={},year={2025},month=dec,doi={https://doi.org/10.48550/arXiv.2509.10714},}
⚙️ Code and Datasets
2026
Code
TurtleKV: High Performance, Dynamically Tuned Embedded Key-Value Storage Engine
Anthony Astolfi, Vidya Silai, Darby Huye, and 3 more authors
2026
Code for: Dynamic read & write optimization with TurtleKV (VLDB’26)
TurtleKV is a general-purpose embedded key-value storage engine that dynamically tunes its read and write performance by allocating memory between page caching and update/checkpoint buffering without changing the durable data structure.
@software{TurtleKV2026,author={Astolfi, Anthony and Silai, Vidya and Huye, Darby and Liu, Lan and Sambasivan, Raja R. and Bater, Johes},title={{TurtleKV}: High Performance, Dynamically Tuned Embedded Key-Value Storage Engine},year={2026},url={https://github.com/mathworks/turtle_kv},note={Code for: Dynamic read \& write optimization with TurtleKV (VLDB'26)}}