Search⌘ K
AI Features

Introduction to Key-value Stores

Explore the fundamentals of key-value stores and how they underpin many distributed services and NoSQL databases. Learn about influential systems such as Amazon's Dynamo and Facebook's Memcache, and discover design principles around multicore processing, memory efficiency, and global scalability to build performant, scalable key-value solutions.

Motivation

A key-value store is one of the fundamental building blocks for many distributed services. For some use cases, a key-value store is used as a caching layer between the front-end services and the back-end persistent stores to speed up reads and writes. For other use cases, a key-value store provides a foundation to build NoSQL databases as they are also a type of non-relational data store (Google’s Bigtable is one example).

What we will learn

We’ve selected the following four papers on key-value systems to discuss in the following chapters:

  • [MC] M. Berezecki, E. Frachtenberg, M. Paleczny, and K. Steele. 2011. Many-core key-value store. In Proceedings of the 2011 International Green Computing Conference and Workshops (IGCC '11). IEEE Computer Society, USA, 1–8.

  • [SILT] Hyeontaek Lim, Bin Fan, ...