Multiversion Query Locking
Paul M. Bober, Michael J. Carey · 1992
Multiversion two-phase locking (MV2PL) has been incorporated in some commercial transaction processing systems to support the serializable execution of queries. A drawback to this algorithm is the potentially high cost that it adds to maintain and access prior versions of data. In this paper, we present a new multiversion locking algorithm, multiversion query locking (MVQL), that reduces the cost of versioning by accepting weaker forms of consistency for queries than MV2PL. Nevertheless, queries are guaranteed to see transaction-consistent data. We present results from a detailed performance study that show that, under a wide range of conditions, MVQL provides higher throughput to queries and update transactions with a lower storage cost than MV2PL. In the worst case, the performance of MVQL approaches that of MV2PL. 1. INTRODUCTION Due to the adoption of relational database technology and the increasing ability of database systems to efficiently execute ad-hoc queries, query processin...