Scalable and Accurate Causality Tracking for Eventually Consistent Stores

Thumbnail Image
Date
2014
Authors
Paulo Sérgio Almeida
Carlos Baquero
Ricardo Tomé Gonçalves
Preguica,N
Vítor Francisco Fonte
Journal Title
Journal ISSN
Volume Title
Publisher
Abstract
In cloud computing environments, data storage systems often rely on optimistic replication to provide good performance and availability even in the presence of failures or network partitions. In this scenario, it is important to be able to accurately and efficiently identify updates executed concurrently. Current approaches to causality tracking in optimistic replication have problems with concurrent updates: they either (1) do not scale, as they require replicas to maintain information that grows linearly with the number of writes or unique clients; (2) lose information about causality, either by removing entries from client-id based version vectors or using server-id based version vectors, which cause false conflicts. We propose a new logical clock mechanism and a logical clock framework that together support a traditional key-value store API, while capturing causality in an accurate and scalable way, avoiding false conflicts. It maintains concise information per data replica, only linear on the number of replica servers, and allows data replicas to be compared and merged linear with the number of replica servers and versions.
Description
Keywords
Citation