The performance of concurrency control algorithms (CCA) in databases has been widely studied over the last ten years, mainly using analytic and simulation techniques. Results have been contradictory. The main CCA categories to emerge are locking, timestamping and serial validation. Most studies have considered one or two CCAs within the same framework and only one simulation study has included all the categories. Experimental studies are rare, and none has covered all three categories of CCA. In this study, the performance of atomic static locking (PRE), two-phase exclusive (2PLE) and upgrade (2PLU) locking, timestamping (BTO) and serial validation (SV) is compared using a prototype database system. Previous studies suggest that there is little difference in CCA performance at low levels of conflict. This study explores a 'worst-case' scenario, and uses update only transactions while recognizing that such an approach may be biased against CCAs which allow share access such as 2PLU. The experiments are repeated using a simulation model, and the adaptive restart technique is further investigated. Comparing results with the prototype and other simulation studies indicates that the effect of both blocking and restarting delays are important in determining relative CCA performance.
|Number of pages||14|
|Journal||Computer Systems Science and Engineering|
|Publication status||Published - Jan 1992|