The complexity of distributed concurrency control

We present a formal framework for distributed databases, and we study the complexity of the concurrency control problem in this framework. Our transactions are partially ordered sets, of actions, as opposed to the straight-line programs of the centralized case. The concurrency control algorithm, or scheduler, is itself a distributed program. Three notions of performance of the scheduler are studied and interrelated: (i) its parallelism, (ii) the computational complexity of the problems it needs to solve, and (iii) the cost of communication between the various parts of the scheduler. We show that the number of messages necessary and sufficient to support a given level of parallelism is equal to the minmax value of a combinatorial game. We show that this game is PSPACE-complete. It follows that, unless NP=PSPACE, a scheduler cannot simultaneously minimize communication and be computationally efficient. This result, we argue, captures the quantum jump in complexity of the transition from centralized to distributed concurrency control problems.

[1]  Christos H. Papadimitriou,et al.  The serializability of concurrent database updates , 1979, JACM.

[2]  Christos H. Papadimitriou,et al.  The Concurrency Control Mechanism of SDD-1: A System for Distributed Databases (The Fully Redundant Case) , 1978, IEEE Transactions on Software Engineering.

[3]  Philip A. Bernstein,et al.  Concurrency control in a system for distributed databases (SDD-1) , 1980, TODS.

[4]  Thomas J. Schaefer,et al.  On the Complexity of Some Two-Person Perfect-Information Games , 1978, J. Comput. Syst. Sci..

[5]  Robert E. Tarjan,et al.  A Combinatorial Problem Which Is Complete in Polynomial Space , 1976, JACM.

[6]  Andrew Chi-Chih Yao,et al.  Some complexity questions related to distributive computing(Preliminary Report) , 1979, STOC.

[7]  Richard E. Ladner,et al.  The Complexity of Problems in Systems of Communicating Sequential Processes , 1980, J. Comput. Syst. Sci..

[8]  Daniel J. Rosenkrantz,et al.  Concurrency control for database systems , 1976, 17th Annual Symposium on Foundations of Computer Science (sfcs 1976).

[9]  Robert H. Thomas,et al.  A Majority consensus approach to concurrency control for multiple copy databases , 1979, ACM Trans. Database Syst..

[10]  Daniel J. Rosenkrantz,et al.  System level concurrency control for distributed database systems , 1978, TODS.

[11]  H. T. Kung,et al.  An optimality theory of concurrency control for databases , 1979, SIGMOD '79.

[12]  C. A. R. Hoare,et al.  Communicating sequential processes , 1978, CACM.