Squirrel: An Extensible Distributed Key-Value Store
Distributed key-value (KV) stores are a rising alternative to traditional relational databases since they provide a flexible yet simple data model. Recent KV stores use eventual consistency to ensure fast reads and writes as well as high availability. Support for eventual consistency is however still very limited as typically only a handful of replicated data types are provided. Moreover, modern applications maintain various types of data, some of which require strong consistency whereas other require high availability. Implementing such applications remains cumbersome due to the lack of support for data consistency in today’s KV stores. In this paper we propose Squirrel, an open implementation of a distributed KV store. The core idea is to reify operations on a distributed KV store by means of a consistency model and protocols which implement these operations. We implement two families of consistency models (strong consistency and strong eventual consistency) and several consistency protocols, including two-phase commit and CRDTs.
Sun 20 OctDisplayed time zone: Beirut change
11:00 - 12:30
|Meta-programming in Data Science
|Squirrel: An Extensible Distributed Key-Value Store