EvenDB: Optimizing Key-Value Storage for Spatial Locality

Apr 27, 2020

Applications of key-value (KV-)storage often exhibit high spatial locality, such as when many data items have identical composite key prefixes. This prevalent access pattern is underused by the ubiquitous LSM design underlying highthroughput KV-stores today.

We present EvenDB, a general-purpose persistent KVstore optimized for spatially-local workloads. EvenDB combines spatial data partitioning with LSM-like batch I/O. It achieves high throughput, ensures consistency under multithreaded access, and reduces write amplification.

In experiments with real-world data from a large analytics platform, EvenDB outperforms the state-of-the-art. E.g., on a 256GB production dataset, EvenDB ingests data 4.4x faster than RocksDB and reduces write amplification by nearly 4x. In traditional YCSB workloads lacking spatial locality, EvenDB is on par with RocksDB and significantly better than other open-source solutions we explored.

  • European Conference on Computer Systems ([EuroSys 2020])
  • Conference/Workshop Paper