The performance of multiversion concurrency control algorithms

  • Authors:
  • Michael J. Carey;Waleed A. Muhanna

  • Affiliations:
  • Univ. of Wisconsin, Madison, WI;Univ. of Wisconsin, Madison, WI

  • Venue:
  • ACM Transactions on Computer Systems (TOCS)
  • Year:
  • 1986

Quantified Score

Hi-index 0.00

Visualization

Abstract

A number of multiversion concurrency control algorithms have been proposed in the past few years. These algorithms use previous versions of data items in order to improve the level of achievable concurrency. This paper describes a simulation study of the performance of several multiversion concurrency control algorithms, investigating the extent to which they provide increases in the level of concurrency and also the CPU, I/O, and storage costs resulting from the use of multiple versions. The multiversion algorithms are compared with regard to performance with their single-version counterparts and also with each other. It is shown that each multiversion algorithm offers significant performance improvements despite the additional disk accesses involved in accessing old versions of data; the nature of the improvement depends on the algorithm in question. It is also shown that the storage overhead for maintaining old versions that may be required by ongoing transactions is not all that large under most circumstances. Finally, it is demonstrated that it is important for version maintenance to be implemented efficiently, as otherwise the cost of maintaining old versions could outweigh their concurrency benefits.