Recently renewed interest in scalable database systems for shared nothing clusters has been supported by replication protocols based on group communication that are aimed at seamlessly extending the native consistency criteria of centralized database management systems. By using a read-one/write-all-available approach and avoiding the fine-grained synchronization associated with traditional distributed locking, one needs just a single distributed interaction step for each update transaction. Therefore the system can easily be scaled to a large number of replicas, especially, with read intensive loads typical of Web server support environments.In this paper we point out that 1-copy equivalence for causal consistency, which is subsumed by both serializability and snapshot isolation criteria, depends on basic session guarantees that are costly to ensure in clusters, especially in a multi-tier environment. We then point out a simple solution that guarantees causal consistency in the Database State Machine protocol and evaluate its performance, thus highlighting the cost of seamlessly providing common consistency criteria of centralized databases in a clustered environment.
BACKGROUNDA number of group communication based database replication protocols have been proposed, in particular, considering a readone/write-all-available approach and a single interaction for each update transaction [13,14,19,12]. We focus on protocols that exploit optimistic execution and in particular the Database State Machine (DBSM) [14,7,20]. These protocols are multi-master, transactions can be submitted to and executed by several replicas, and follow the passive replication paradigm [5,9] in which each transaction is executed by one of the replicas and its state changes propagated to the other replicas.A transaction is immediately executed by the replica to which it is submitted without any a priori coordination. Locally, transactions are synchronized according to the specific concurrency control mechanism of the database engine and thus according to the centralized consistency criteria implemented.Read-only transactions are simply executed locally at the database Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. To copy otherwise, to republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. to which they are submitted and thus controlled strictly by the local concurrency control mechanism. In contrast, update transactions are not readily committed upon receiving the commit request. Instead, the tuples read (read-set) and written (write-set) are gathered and a termination protocol initiated. The goal of the termination protocol is to decide the order and the outcome of the transaction such that the global correctness criteria is satisfied. This is achieve...