scispace - formally typeset
Search or ask a question

Showing papers on "Multiversion concurrency control published in 1981"


Journal ArticleDOI
TL;DR: In this paper, two families of non-locking concurrency controls are presented, which are optimistic in the sense that they rely mainly on transaction backup as a control mechanism, "hoping" that conflicts between transactions will not occur.
Abstract: Most current approaches to concurrency control in database systems rely on locking of data objects as a control mechanism. In this paper, two families of nonlocking concurrency controls are presented. The methods used are “optimistic” in the sense that they rely mainly on transaction backup as a control mechanism, “hoping” that conflicts between transactions will not occur. Applications for which these methods should be more efficient than locking are discussed.

1,519 citations


Journal ArticleDOI
TL;DR: A survey of concurrency control methods for distributed database concurrency can be found in this paper, where the authors decompose the problem into two major subproblems, read-write and write-write synchronization, and describe a series of synchromzation techniques for solving each subproblem.
Abstract: In this paper we survey, consolidate, and present the state of the art in distributed database concurrency control. The heart of our analysts is a decomposition of the concurrency control problem into two major subproblems: read-write and write-write synchronization. We describe a series of synchromzation techniques for solving each subproblem and show how to combine these techniques into algorithms for solving the entire concurrency control problem. Such algorithms are called "concurrency control methods." We describe 48 principal methods, including all practical algorithms that have appeared m the literature plus several new ones. We concentrate on the structure and correctness of concurrency control algorithms. Issues of performance are given only secondary treatment.

1,124 citations


Proceedings ArticleDOI
29 Apr 1981
TL;DR: A careful distinction is made between design decisions concerning communications andDesign decisions concerning the responses to read/write requests, and two schemes for producing such controls are given.
Abstract: Associated with the write of a database entity is both the "before" or old value, and the "after" or new value. Concurrency can be increased by allowing other transactions to read the before values of a given transaction. The ramifications of allowing this, particularly on a distributed system in which limited communications is desirable, are investigated. A careful distinction is made between design decisions concerning communications and design decisions concerning the responses to read/write requests. Two schemes for producing such controls are given, one scheme for systems where processes are committed on termination, and the other for systems where committment is made later.

124 citations


Book
01 Jul 1981
TL;DR: This paper presents a meta-analyses of general purpose schedulers and their applications in database systems, focusing on the areas of conflict-preserving scheduling, database manipulation and concurrent dynamic logic.
Abstract: Database systems.- General purpose schedulers.- Logs.- Correctness criteria for general purpose schedulers.- Constructing general purpose schedulers.- Conflict-preserving schedulers.- Database description.- Database manipulation.- Concurrent dynamic logic.- Correctness of transaction systems.- Conclusions and directions for future work.

86 citations


Proceedings Article
09 Sep 1981
TL;DR: A method is developed which frees read transactions from any consideration of concurrency control; all responsibility for correct synchronization is assigned to the update transactions, which has the great advantage that, in case of conflicts between read transactions and update Transactions, no backup is performed.
Abstract: Recently, methods for concurrency control have been proposed which were called "optimistic". These methods do not consider access conflicts when they occur; instead, a transaction always proceeds, and at its end a check is performed whether a conflict has happened. If so, the transaction is backed up. This basic approach is investigated in two directions: First, a method is developed which frees read transactions from any consideration of concurrency control; all responsibility for correct synchronization is assigned to the update transactions. This method, has the great advantage that, in case of conflicts between read transactions and update transactions, no backup is performed. Then, the application of optimistic solutions in distributed database systems is discussed, a solution is presented.

49 citations




Proceedings ArticleDOI
28 Oct 1981
TL;DR: It follows that, unless NP=PSPACE, a scheduler cannot simultaneously minimize communication and be computationally efficient, and this result captures the quantum jump in complexity of the transition from centralized to distributed concurrency control problems.
Abstract: 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.

19 citations


Proceedings Article
01 Jun 1981
TL;DR: This report has been published in the Proceedings of the Fifth Berkeley Conference on Distributed Data Management and Computer Networks.
Abstract: This report has been published in the Proceedings of the Fifth Berkeley Conference on Distributed Data Management and Computer Networks.

9 citations



01 Jan 1981
TL;DR: This thesis analyzed some of the concurrency control schemes in an effort to understand their relative merits, investigate the sensitivity of the performance to different parameters, and to provide some guidelines for designing resilient concurrency algorithms for distributed databases.
Abstract: One of the most critical problem in the implementation of distributed databases is that of concurrency control. The problem is to preserve the consistency of data (that may otherwise be destroyed by concurrent accesses). One of the major goals in the research of distributed databases is to develop design methodology and guidelines for designing good concurrency control methods for a given system environment. In this thesis, we have set out to approach the goal by analyzing some of the concurrency control schemes in an effort to understand their relative merits, investigate the sensitivity of the performance to different parameters, and to provide some guidelines for designing resilient concurrency algorithms for distributed databases. Several update synchronization algorithms are modelled and analyzed in this dissertation. Algorithms investigated in this dissertation include a resilient centralized locking algorithm, some distributed algorithms using timestamps, and some algorithms using clock messages in addition to timestamps. Results from the analysis allowed us to pinpoint inefficiency and suggest some new algorithms.

01 Feb 1981
TL;DR: This report attempts to survey all the published proposals on concurrency control, and finds that a taxonomy is developed for the classification of concurrence control techniques for distributed database systems.
Abstract: : One of the most important problems in the design of centralized and distributed database management systems is the problem of concurrency control. Even though many different solutions have been proposed, a unifying theory is still not in sight. This report attempts to survey all the published proposals on concurrency control. In particular, a taxonomy is developed for the classification of concurrency control techniques for distributed database systems. The survey of these twenty some concurrency control mechanisms are in the framework of this taxonomy.

Journal ArticleDOI
TL;DR: There is considerable interest in the problem of introducing concurrency into programming languages, notably Pascal, which is reported to have been designed with concurrency as one of its foundations.

01 Jan 1981
TL;DR: This thesis is concerned with the problem of extending previous work on two-phase and non-two-phase locking protocols to achieve a higher degree of concurrency and at the same time deal effectively with the deadlock problem.
Abstract: With the ever growing popularity of data base management the systematic study of consistency preserving concurrency control techniques has become very important. Two important issues that need to be considered are: (i) the level of concurrency and (ii) deadlocks. This thesis is concerned with the problem of extending previous work on two-phase and non-two-phase locking protocols to achieve a higher degree of concurrency and at the same time deal effectively with the deadlock problem. Our work with the non-two-phase protocols deals with the most general of the existing natural protocols that are defined for use with data bases organized as directed acyclic graphs. An increased level of concurrency is attained by allowing lock conversions and/or by introducing new lock modes. When this is done either deadlock-freedom is assured a priori or simple restrictions are introduced to reduce the cost of deadlock detection and recovery. In addition to extending existing proctocols and proposing new ones, we also extend the existing theory of locking protocols by including lock conversions and the new modes of locking in the directed hypergraph model of locking protocols. In so doing, we obtain very general results concerning serializability and deadlock-freedom properties of all protocols satisfying a natural closure property. We propose and use some new proof techniques.


01 Jan 1981
TL;DR: A "passive" concurrency control technique is presented which makes use of the broadcast nature of the communications bus and two algorithms are presented and shown robust with respect to communication and processor failures.
Abstract: Some large business database systems are characterized by a high volume of short transactions (e.g. credit/debit account). In such systems, data retrieval costs are fixed and unavoidable. However, overhead due to concurrency control and recovery protocols may be reduced resulting in higher throughput and shorter response times. This research addresses the problems of concurrency control and recovery (collectively referred to as transaction management) in very large business applications. It is felt that traditional solutions to the problem (i.e. ever-larger centralized machines) will be inadequate as applications grow. An architecture for a database management system distributed over a local broadcast network is proposed. A "passive" concurrency control technique is presented which makes use of the broadcast nature of the communications bus. By eavesdropping for request messages on the broadcast bus, a single concurrency control node can perform conflict analysis for the entire system without explicit lock messages. Two algorithms are presented and shown robust with respect to communication and processor failures: a passive locking algorithm and a passive non-locking algorithm. Simulation results indicate that the passive schemes have very low overhead and perform better than corresponding distributed algorithms. Also, the cost of the recovery protocol necessary to ensure atomic commit at all sites (i.e. the distributed two-phase commit protocol) is shown to be quite high and, in many cases, overshadows the cost of concurrency control.

Proceedings ArticleDOI
Paul Decitre1
04 May 1981
TL;DR: The distributed concurrency control algorithm is described as an improvement of the proposal made by Rosenkrantz, Stearns and Lewis, and key technical features such as deadlock prevention, wrong aborts, parallel execution, and relation between concurrence control and commitment are detailed.
Abstract: As a continuation of the POLYPHEME study, the Cii-Honeywell Bull research center has launched a project on co-operating transactional systems with particular attention paid to distributed concurrency control and commitment.Following the presentation of the application-driven approach being taken, the distributed concurrency control algorithm is described as an improvement of the proposal made by Rosenkrantz, Stearns and Lewis. Salient technical features such as deadlock prevention, wrong aborts, parallel execution, and relation between concurrency control and commitment are detailed. Then the main choices are justified, and the rejected techniques criticized.

01 May 1981
TL;DR: The data structures and techniques used in dynamically detecting concurrency in Directly Executed Language (DEL) instruction streams are described and an abstract model of a concurrency detection structure called an ordering matrix is presented.
Abstract: This paper describes the data structures and techniques used in dynamically detecting concurrency in Directly Executed Language (DEL) instruction streams. By dynamic detection, it is meant that these techniques are designed to be used at run time with no special source manipulation or preprocessing required to perform the detection. An abstract model of a concurrency detection structure called an ordering matrix is presented. This structure is used, with two other execution vectors, to represent the dependencies between instructions and indicate where potential concurrency exists. An algorithm is developed which utilizes the ordering matrix to detect concurrency within determinate DO-loops. It is then generalized to detect concurrency in arbitrary del instruction streams.