Database Reference
In-Depth Information
A concurrent execution on a set of replicated objects is one-copy equivalent if it is
equal to an execution on the same set of objects without replication. As a result, the
execution of concurrent actions is said to be one-copy serializable if it is serializable
and one-copy equivalent. Moreover, a one-copy serializable execution is considered
global one-copy serializable if the partial orderings of serialization units, which are
perceived by each process, are preserved.
10.3.1.1.2 Linearizability
The linearizability or the atomicity of a set of operations on a shared data object
is considered as a correctness condition for concurrent shared data objects [18].
Linearizibility is achieved if every operation performed by a concurrent process
appears instantaneously to the other concurrent processes at some moment between
its invocation and response. Linearizability can be viewed as a special case of global
one-copy serializability where a serialization unit (a transaction) is restricted to con-
sist of a single operation [18]. Subsequently, linearizability provides locality prop-
erty. A system is linearizable if every individual object is linearizable [18]. This
enhances concurrency and modularity. Moreover, linearizability is a nonblocking
property in the sense that processes invoking totally defined operations are never
forced to wait [18].
Given these models strength, no further guarantees are required at the client side.
All situations that lead to updates conflict or inconsistency are efficiently handled at
the system-side (with eventually performance overhead).
10.3.2 w eak C onsistenCy
The implementation of strong consistency models imposes, in many cases, limi-
tations in both system's design choices and application's performance. Moreover,
insuring strong global total ordering has a heavy performance overhead. As to over-
come these limitations, Dubois et al. [19] first introduced the weak ordering model
that relax the strong ordering guarantees for enhanced performance.
10.3.2.1 System-Side Guarantees
Data accesses (read and write operations) are considered as weakly ordered if they
satisfy the following three conditions:
All accesses to a shared synchronization variables are strongly (sequen-
tially) ordered. All processes perceive the same order of operations.
Data accesses to a synchronization variable are not issued by processors
before all previous global accesses have been globally performed.
A global data access is not allowed by processors until a previous access to
synchronization variable is globally performed.
From these three conditions, the order of read and write operations, outside criti-
cal sections (synchronization variables), can be seen in different orders by different
processes as long as they do not violate the aforementioned conditions. However, in
[20,21], it has been argued that not all the three conditions are necessary to reach the
Search WWH ::




Custom Search