z-logo
open-access-imgOpen Access
Serializable isolation for snapshot databases
Author(s) -
Michael J. Cahill,
Uwe Röhm,
Alan Fekete
Publication year - 2009
Publication title -
acm transactions on database systems
Language(s) - English
Resource type - Journals
SCImago Journal Rank - 0.988
H-Index - 84
eISSN - 1557-4644
pISSN - 0362-5915
DOI - 10.1145/1620585.1620587
Subject(s) - computer science , snapshot (computer storage) , serializability , concurrency control , isolation (microbiology) , serialization , atomicity , database , concurrency , distributed computing , database transaction , data mining , transaction processing , distributed transaction , programming language , microbiology and biotechnology , biology
Many popular database management systems implement a multiversion concurrency control algorithm called snapshot isolation rather than providing full serializability based on locking. There are well-known anomalies permitted by snapshot isolation that can lead to violations of data consistency by interleaving transactions that would maintain consistency if run serially. Until now, the only way to prevent these anomalies was to modify the applications by introducing explicit locking or artificial update conflicts, following careful analysis of conflicts between all pairs of transactions. This article describes a modification to the concurrency control algorithm of a database management system that automatically detects and prevents snapshot isolation anomalies at runtime for arbitrary applications, thus providing serializable isolation. The new algorithm preserves the properties that make snapshot isolation attractive, including that readers do not block writers and vice versa. An implementation of the algorithm in a relational DBMS is described, along with a benchmark and performance study, showing that the throughput approaches that of snapshot isolation in most cases.

The content you want is available to Zendy users.

Already have an account? Click here to sign in.
Having issues? You can contact us here
Accelerating Research

Address

John Eccles House
Robert Robinson Avenue,
Oxford Science Park, Oxford
OX4 4GP, United Kingdom