Brewer's conjecture and the feasibility of consistent, available, partition-tolerant web services

  title={Brewer's conjecture and the feasibility of consistent, available, partition-tolerant web services},
  author={Seth Gilbert and Nancy A. Lynch},
  journal={SIGACT News},
When designing distributed web services, there are three properties that are commonly desired: consistency, availability, and partition tolerance. It is impossible to achieve all three. In this note, we prove this conjecture in the asynchronous network model, and then discuss solutions to this dilemma in the partially synchronous model. 

CAP for networks

This paper investigates network policies such as tenant isolation and middlebox traversal, and proves that it is impossible for implementations to enforce them without sacrificing availability.

The Impossibility of Fast Transactions

We prove that transactions cannot be fast in an asynchronous fault-tolerant system. Our result holds in any system where we require transactions to ensure monotonic writes, or any stronger

Consistency in Scalable Systems

It is shown how scalable and highly available systems can provide processor, causal, sequential and session consistency during normal functioning with stronger guarantees are in fact achievable.

Monotonic Prefix Consistency in Distributed Systems

This work considers a distributed system that replicates its data at multiple sites, which is prone to partitions, and which is assumed to be available, and finds many weaker consistency criteria that allow a greater number of behaviors than strong consistency, are implementable in available distributed systems.

Consistency Tradeoffs in Modern Distributed Database System Design: CAP is Only Part of the Story

A proposed new formulation, PACELC, unifies this tradeoff with CAP, which has had a more direct influence on several well-known DDBSs.

A generic model of consistency guarantees for replicated services

A new model of coexistence of pessimistic and optimistic replication is proposed, enabling the user to balance between availability and consistency.

Eventual Consistency Today: Limitations, Extensions, and Beyond

Brewer’s conjecture--based on his experiences building infrastructure for some of the first Internet search engines at Inktomi--states that distributed systems requiring always-on, highly available operation cannot guarantee the illusion of coherent, consistent single-system operation in the presence of network partitions.

Web Service constraint optimization

  • Aspen OlmstedC. Farkas
  • Computer Science
    8th International Conference for Internet Technology and Secured Transactions (ICITST-2013)
  • 2013
This paper proposes an approach that guarantees that the constraint cannot be violated and also allow the distribution of write operations among many clusters to increase availability.

Weak consistency as a last resort

This paper shows how Eventual Linearizability can be used to support master-worker schemes such as workload sharding in Web applications and shows that it can significantly reduce the time to completion of the workload in some settings.

FIT: A Distributed Database Performance Tradeoff

The three-way relationship between three such desirable features — fairness, isolation, and throughput (FIT) — is discussed and it is argued that only two out of the three of them can be achieved simultaneously.



Achievable cases in an asynchronous environment

Two pairs of goals are exhibited that are achievable even in the presence of up to t ≪ n/2 faulty processors, contradicting the widely held assumption that no nontrivial goals are attainable in such a system.

Eventually-serializable data services

An algorithm is presented, based on one of Ladin, Liskov, Shrira, and Ghemawat, that implements a new specification for distributed data services that trade-off immediate consistency guarantees for improved system availability and efficiency, while ensuring the long-term consistency of the data.

Towards robust distributed systems (abstract)

Several issues in an attempt to clean up the way the authors think about distributed systems, including the fault model, high availability, graceful degradation, data consistency, evolution, composition, and autonomy are looked at.

Linearizability: a correctness condition for concurrent objects

This paper defines linearizability, compares it to other correctness conditions, presents and demonstrates a method for proving the correctness of implementations, and shows how to reason about concurrent objects, given they are linearizable.

Distributed Algorithms, pages 735–770

  • 1996

Distributed Algorithms

  • Seif Haridi
  • Computer Science
    Lecture Notes in Computer Science
  • 1992

Towards robust distributed systems. (Invited Talk) Principles of Distributed Computing

  • Towards robust distributed systems. (Invited Talk) Principles of Distributed Computing
  • 2000

On interprocess communication - parts I and II

  • Distributed Computing,
  • 1986

Distributed Algorithms, page 581

  • Distributed Algorithms, page 581
  • 1996

Distributed Algorithms, pages 199–231

  • 1996