Performance Analysis of Centralized Databases with Optimistic Concurrency Control

Abstract In this paper we analyze Optimistic Concurrency Control (OCC) schemes based on certification. We allow two data access schemes referred to as static and dynamic . A static data access scheme implies that all data items are accessed at the beginning of transaction processing, while data items are accessed on demand during the processing of a transaction in a dynamic scheme. After completing its processing, each transaction is validated, i.e., checked as to whether it has encountered a data conflict. Validated transactions commit; otherwise, they are restarted. A variant of the regular (silent) commit scheme where a committing transaction notifies conflicted transactions to restart immediately (broadcast commit scheme) is also considered. System efficiency or the fraction of useful work as affected by data contention is used as the main performance measure. We develop an iterative solution method to analyze the performance of OCC schemes in the framework of a system with a fixed number of transactions in multiple classes with given occurrence frequencies. The model is analyzed by (iteratively) solving a set of nonlinear equations which relate per class efficiencies to system efficiency. The iterative solution method is validated against simulation and shown to be highly accurate even for high data contention. An advantage of the iterative solution method is that it separates the analysis of data contention from hardware resource contention and provides per class efficiencies. We present graphs/tables, which are used to determine how system performance is affected by: (i) various OCC schemes, (ii) the distribution of transaction processing times, (iii) transaction size and its distribution, and (iv) the throughput characteristics of the system (as determined by hardware contention).