Concurrency control in advanced database applications

Concurrency control has been thoroughly studied in the context of traditional database applications such as banking and airline reservations systems. There are relatively few studies, however, that address the concurrency control issues of advanced database applications such as CAD/CAM and software development environments. The concurrency control requirements in such applications are different from those in conventional database applications; in particular, there is a need to support non-serializable cooperation among users whose transactions are long-lived and interactive, and to integrate concurrency control mechanisms with version and configuration control. This paper outlines the characteristics of data and operations in some advanced database applications, discusses their concurrency control requirements, and surveys the mechanisms proposed to address these requirements.

[1]  Charles T. Davies,et al.  Data Processing Spheres of Control , 1978, IBM Syst. J..

[2]  C.M. Eastman Database facilities for engineering design , 1981, Proceedings of the IEEE.

[3]  Gunter Schlageter,et al.  Redesign of optimistic methods: Improving performance and applicability , 1986, 1986 IEEE Second International Conference on Data Engineering.

[4]  Charles M. Eastman,et al.  Transaction Management in Engineering Databases , 1983, Engineering Design Applications.

[5]  Irving L. Traiger,et al.  Granularity of Locks and Degrees of Consistency in a Shared Data Base , 1998, IFIP Working Conference on Modelling in Data Base Management Systems.

[6]  Amr El Abbadi,et al.  The Group Paradigm for Concurrency Control Protocols , 1989, IEEE Trans. Knowl. Data Eng..

[7]  Henry F. Korth,et al.  Formal model of correctness without serializabilty , 1988, SIGMOD '88.

[8]  Charles T. Davies,et al.  Recovery semantics for a DB/DC system , 1973, ACM Annual Conference.

[9]  Christos H. Papadimitriou,et al.  The Theory of Database Concurrency Control , 1986 .

[10]  Jay Banerjee,et al.  Integrating an object-oriented programming system with a database system , 1988, OOPSLA 1988.

[11]  Gail E. Kaiser A Marvelous Extended Transaction Processing Model , 1989, IFIP Congress.

[12]  Walter F. Tichy,et al.  Rcs — a system for version control , 1985, Softw. Pract. Exp..

[13]  Gerhard Weikum,et al.  A theoretical foundation of multi-level concurrency control , 1985, PODS.

[14]  Mihalis Yannakakis Issues of correctness in database concurrency control by locking , 1981, STOC '81.

[15]  William E. Weihl Commutativity-based concurrency control for abstract data types , 1988 .

[16]  Wil Plouffe,et al.  Complex Objects and Their Use in Design Transactions , 1983, Engineering Design Applications.

[17]  Lawrence A. Bjork Recovery scenario for a DB/DC system , 1973, ACM Annual Conference.

[18]  Marc J. Rochkind,et al.  The source code control system , 1975, IEEE Transactions on Software Engineering.

[19]  H KohlerWalter A Survey of Techniques for Synchronization and Recovery in Decentralized Computer Systems , 1981 .

[20]  Gail E. Kaiser,et al.  Intelligent Assistance without Artificial Intelligence , 1987, COMPCON.

[21]  Gunter Schlageter,et al.  A transaction model supporting complex applications in integrated information systems , 1985, SIGMOD '85.

[22]  Jonathan Walpole,et al.  A unifying model for consistent distributed software development environments , 1989, SDE 3.

[23]  Gail E. Kaiser,et al.  A flexible transaction model for software engineering , 1990, [1990] Proceedings. Sixth International Conference on Data Engineering.

[24]  Hector Garcia-Molina,et al.  Altruistic Locking: A Strategy for Coping with Long Lived Transactions , 1987, High Performance Transaction Systems Workshop.

[25]  Bruce E. Martin,et al.  Modeling Concurrent Activities with Nested Objects , 1987, ICDCS.

[26]  Won Kim,et al.  A Transaction Mechanism for Engineering Design Databases , 1984, VLDB.

[27]  Nancy A. Lynch,et al.  Multilevel atomicity—a new correctness criterion for database concurrency control , 1983, TODS.

[28]  Hans-Jörg Schek,et al.  Multi-Level Transaction Management, Theoretical Art or Practical Need ? , 1988, EDBT.

[29]  Abraham Silberschatz,et al.  Database System Concepts , 1980 .

[30]  Stanley B. Zdonik,et al.  Concurrency Control and Object-Oriented Databases , 1989, Object-Oriented Concepts, Databases, and Applications.

[31]  Philip A. Bernstein,et al.  Database System Support for Software Engineering , 1987, International Conference on Software Engineering.

[32]  P. A. Berstein Database system support for software engineering , 1987, ICSE '87.

[33]  J. T. Robinson,et al.  On optimistic methods for concurrency control , 1979, TODS.

[34]  Stuart I. Feldman,et al.  Make — a program for maintaining computer programs , 1979, Softw. Pract. Exp..

[35]  Michael Stonebraker,et al.  The Design of XPRS , 1988, VLDB.

[36]  Mihalis Yannakakis,et al.  A Theory of Safe Locking Policies in Database Systems , 1982, JACM.

[37]  Randy H. Katz,et al.  Design Transaction Management , 1984, 21st Design Automation Conference Proceedings.

[38]  Abraham Silberschatz,et al.  Consistency in Hierarchical Database Systems , 1980, JACM.

[39]  Gail E. Kaiser,et al.  Models of software development environments , 1988, ICSE '88.

[40]  Calton Pu,et al.  Split-Transactions for Open-Ended Activities , 1988, VLDB.

[41]  Jonathan Walpole,et al.  Transaction mechanisms for distributed programming environments , 1987, Softw. Eng. J..

[42]  Won Kim,et al.  A Model of CAD Transactions , 1985, VLDB.

[43]  Gail E. Kaiser,et al.  Models of software development environments , 1988, Proceedings. [1989] 11th International Conference on Software Engineering.

[44]  Dean Daniels,et al.  R*: An Overview of the Architecture , 1986, JCDKB.

[45]  Henry F. Korth,et al.  Long-duration transactions in software design projects , 1990, [1990] Proceedings. Sixth International Conference on Data Engineering.

[46]  Philip A. Bernstein,et al.  Concurrency Control in Distributed Database Systems , 1986, CSUR.

[47]  Randy H. Katz,et al.  Toward a unified framework for version modeling in engineering databases , 1990, CSUR.

[48]  Hector Garcia-Molina,et al.  Using semantic knowledge for transaction processing in a distributed database , 1983, TODS.

[49]  Clarence A. Ellis,et al.  Design and implementation of GORDION, an object base management system , 1987, 1987 IEEE Third International Conference on Data Engineering.

[50]  Charles M. Eastman,et al.  System Facilities for CAD Databases , 1980, 17th Design Automation Conference.

[51]  Stefano Ceri,et al.  Advances in Database Technology—EDBT '88 , 1988, Lecture Notes in Computer Science.

[52]  Gail E. Kaiser,et al.  WORKSPACES AND EXPERIMENTAL DATABASES: AUTOMATED SUPPORT FOR SOFTWARE MAINTENANCE AND EVOLUTION. , 1987 .

[53]  Jonathan Walpole,et al.  Maintaining consistency in distributed software engineering environments , 1988, [1988] Proceedings. The 8th International Conference on Distributed.

[54]  Hans-Jörg Schek,et al.  Architectural Issues of Transaction Management in Multi-Layered Systems , 1984, VLDB.

[55]  Won Kim,et al.  Transaction management in an object-oriented database system , 1988, SIGMOD '88.

[56]  Henry F. Korth,et al.  Performance analysis of two concurrency control schemes for design environments , 1989, Inf. Sci..

[57]  P. K. Chrysanthis,et al.  ACT: A Framework for Specifying and Reasoning About Transaction Structure , 1989 .

[58]  Catriel Beeri,et al.  A model for concurrency in nested transactions systems , 1989, JACM.

[59]  Maurice Herlihy,et al.  Hybrid Concurrency Control for Abstract Data Types , 1991, J. Comput. Syst. Sci..

[60]  Stanley B. Zdonik,et al.  Transaction Groups: A Model for Controlling Cooperative Transactions , 1989, POS.

[61]  David B. Leblang,et al.  Parallel Software Configuration Management in a Network Environment , 1987, IEEE Software.

[62]  John R. Nestor Toward a Persistent Object Base , 1986, Advanced Programming Environments.

[63]  Bernd Walter,et al.  Nested Transactions with Multiple Commit Points: An Approach to the Structuring of Advanced Database Applications , 1984, VLDB.

[64]  David P. Reed,et al.  Naming and synchronization in a decentralized computer system , 1978 .

[65]  Masahiro Honda,et al.  Object management in a CASE environment , 1989, ICSE '89.

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

[67]  E. B. Moss,et al.  Nested Transactions: An Approach to Reliable Distributed Computing , 1985 .

[68]  Irving L. Traiger,et al.  The notions of consistency and predicate locks in a database system , 1976, CACM.