113,887 research outputs found
CATS: linearizability and partition tolerance in scalable and self-organizing key-value stores
Distributed key-value stores provide scalable, fault-tolerant, and self-organizing
storage services, but fall short of guaranteeing linearizable consistency
in partially synchronous, lossy, partitionable, and dynamic networks, when data
is distributed and replicated automatically by the principle of consistent hashing.
This paper introduces consistent quorums as a solution for achieving atomic
consistency. We present the design and implementation of CATS, a distributed
key-value store which uses consistent quorums to guarantee linearizability and partition tolerance in such adverse and dynamic network conditions. CATS is
scalable, elastic, and self-organizing; key properties for modern cloud storage
middleware. Our system shows that consistency can be achieved with practical
performance and modest throughput overhead (5%) for read-intensive workloads
Tunable Causal Consistency: Specification and Implementation
To achieve high availability and low latency, distributed data stores often
geographically replicate data at multiple sites called replicas. However, this
introduces the data consistency problem. Due to the fundamental tradeoffs among
consistency, availability, and latency in the presence of network partition, no
a one-size-fits-all consistency model exists. To meet the needs of different
applications, many popular data stores provide tunable consistency, allowing
clients to specify the consistency level per individual operation. In this
paper, we propose tunable causal consistency (TCC). It allows clients to choose
the desired session guarantee for each operation, from the well-known four
session guarantees, i.e., read your writes, monotonic reads, monotonic writes,
and writes follow reads. Specifically, we first propose a formal specification
of TCC in an extended (vis,ar) framework originally proposed by Burckhardt et
al. Then we design a TCC protocol and develop a prototype distributed key-value
store called TCCSTORE. We evaluate TCCSTORE on Aliyun. The latency is less than
38ms for all workloads and the throughput is up to about 2800 operations per
second. We also show that TCC achieves better performance than causal
consistency and requires a negligible overhead when compared with eventual
consistency
On the Behaviour of General-Purpose Applications on Cloud Storages
Managing data over cloud infrastructures raises novel challenges with respect to existing and well studied approaches such as ACID and long running transactions. One of the main requirements is to provide availability and partition tolerance in a scenario with replicas and distributed control. This comes at the price of a weaker consistency, usually called eventual consistency. These weak memory models have proved to be suitable in a number of scenarios, such as the analysis of large data with Map-Reduce. However, due to the widespread availability of cloud infrastructures, weak storages are used not only by specialised applications but also by general purpose applications. We provide a formal approach, based on process calculi, to reason about the behaviour of programs that rely on cloud stores. For instance, one can check that the composition of a process with a cloud store ensures `strong' properties through a wise usage of asynchronous message-passing
- …