SILT: A Memory-Efficient, High-Performance Key-Value Store
SILT (Small Index Large Table) is a memory-efficient, high-performance key-value store system based on flash storage that scales to serve billions of key-value items on a single node. It requires only 0.7 bytes of DRAM per entry and retrieves key/value pairs using on average 1.01 flash reads each. SILT combines new algorithmic and systems techniques to balance the use of memory, storage, and computation. The authors' contributions include: the design of three basic key-value stores each with a different emphasis on memory-efficiency and write-friendliness; synthesis of the basic key-value stores to build a SILT key-value store system; and an analytical model for tuning system parameters carefully to meet the needs of different workloads.