Blotter: Low latency transactions for geo-replicated storage

Henrique Moniz, João Leitão, Ricardo J. Dias, Johannes Gehrke, Nuno Preguiça, Rodrigo Rodrigues

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

16 Citations (Scopus)


Most geo-replicated storage systems use weak consistency to avoid the performance penalty of coordinating replicas in different data centers. This departure from strong semantics poses problems to application programmers, who need to address the anomalies enabled by weak consistency. In this paper we use a recently proposed isolation level, called Non-Monotonic Snapshot Isolation, to achieve ACID transactions with low latency. To this end, we present Blotter, a geo-replicated system that leverages these semantics in the design of a new concurrency control protocol that leaves a small amount of local state during reads to make commits more efficient, which is combined with a configuration of Paxos that is tailored for good performance in wide area settings. Read operations always run on the local data center, and update transactions complete in a small number of message steps to a subset of the replicas. We implemented Blotter as an extension to Cassandra. Our experimental evaluation shows that Blotter has a small overhead at the data center scale, and performs better across data centers when compared with our implementations of the core Spanner protocol and of Snapshot Isolation on the same codebase.

Original languageEnglish
Title of host publication26th International World Wide Web Conference, WWW 2017
PublisherInternational World Wide Web Conferences Steering Committee
Number of pages10
ISBN (Print)9781450349130
Publication statusPublished - 2017
Event26th International World Wide Web Conference, WWW 2017 - Perth, Australia
Duration: 3 Apr 20177 Apr 2017


Conference26th International World Wide Web Conference, WWW 2017


  • Concurrency control
  • Geo-replication
  • Non-monotonic snapshot isolation


Dive into the research topics of 'Blotter: Low latency transactions for geo-replicated storage'. Together they form a unique fingerprint.

Cite this