Database Reference
In-Depth Information
preserve the order of operations for a given record, one replica is designated dynami-
cally as a master replica for the record that handles all the updates.
This model avoids major problems related to updates conflict, which eventually
consistent systems might suffer from, since update operations are all executed at
the same order everywhere. Moreover, the model still provides some flexibility to
allow read update conflicts and therefore reducing performance overhead caused
by synchronization. However, eventual consistency still, conceptually, outperforms
timeline consistency.
10.3.6 D isCussion
Table 10.1 summarizes the presented consistency models. These models provide dif-
ferent levels of guarantees and are designed for different classes of applications and
use cases. Strong models such as linearizability and serializability provide the stron-
gest forms of consistency that eliminates operations conflict situations. However,
this comes at the cost of performance overhead due to the application of expensive
necessary mechanisms to deliver such guarantees. In this context, the weak consis-
tency models were introduced to relax the strong guarantees for applications that do
not require the strongest forms of consistency. As a result, the performance overhead
is significantly reduced. To deal with weak guarantees, additional operation order-
ing requirements can be imposed on the client level as to cope with the consistency
needs. In the context of relaxing the strong consistency guarantees, three models
have become very popular in recent years. They differ mainly in the way they handle
conflicts. Eventual consistency is the weakest consistency model that guarantees the
convergence of replicas. In this model, updates conflict resolution is postponed to
a future time favoring availability of data. Causal consistency, however, does not
allow the violation of causal relations between updates. Therefore, only concurrent
simultaneous updates can lead to the conflict situations. As opposed to these two
models, timeline consistency orders updates deterministically and does not allow
updates conflicts. Data propagation is, however, eventual and thus, read-update con-
flicts may occur.
10.4 CLOUD STORAGE SYSTEMS
In this section, we describe some state-of-the-art cloud storage systems, which are
adopted by the big cloud vendors, such as Amazon Dynamo, Apache Cassandra,
Yahoo! PNUTS, and Google Spanner. Every system is presented by introducing its
targeted applications and use cases, its data model, its design principles and adopted
consistency, and its API. We then give an overview of their real-life applications and
use cases in Table 10.2.
10.4.1 a mazon D ynamo
Amazon Dynamo [32], is a storage system designed by Amazon engineers to fit
the requirements of their web services. Dynamo provides the storage backend for the
highly available worldwide Amazon.com e-commerce platform and overcomes the
Search WWH ::




Custom Search