A multiversion concurrency control algorithm for concurrent execution of partial update and bulk retrieval transactions

A novel multiversion concurrency control algorithm is presented which substantially improves concurrency between batch and online transactions. A bulk retrieval transaction which reads all data objects and partial update transactions which read and write a few data objects are studied as batch and online transactions, respectively. The algorithm is based on a mixture of multiversion time-stamp ordering and modified two-version two-phase locking. It can remove the interference between the retrieval and the update transactions, and reduce the interference between the update transactions themselves. Results of a simulation study show that the completion ratio of those transactions with this algorithm is much better than that with existing algorithms, when the number of transactions is large and the data contention between those transactions is high.<<ETX>>