Context-Specific Synchronization for Atomic Data Types in Object-Based Databases

Highly concurrent and reliable atomic data types are crucial for object-based databases. Deferred update (DU) and update-in-place (UIP) are two common recovery strategies for implementing atomic data types. These two strategies place incomparable constraints on the conflict relations between concurrent operations resulting in incomparable synchronization protocols. Also, the conflict relations used are usually static in the sense that they depend only on the operation types, and the algorithms do not use the context-specific information that may be available in the system. In this paper, a new synchronization mechanism that employs a hybrid scheme by using both DU and UIP is proposed. Furthermore, the protocol is dynamic in the sense that context-specific information is also used to determine conflict relations among concurrent operations. Another extension is the use of ordered shared relationships between locks to execute conflicting operations concurrently. The execution of operations is never delayed in the proposed protocol, however, the commitment of the transactions invoking these operations may be delayed due to the restriction imposed by the ordered shared relationships between locks. It is demonstrated that the sets of histories accepted by the two phase locking protocols using DU or UIP are proper subsets of the set of histories accepted by the proposed protocol.

[1]  M. Herlihy A quorum-consensus replication method for abstract data types , 1986, TOCS.

[2]  William E. Weihl,et al.  SPECIFICATION AND IMPLEMENTATION OF ATOMIC DATA TYPES , 1984 .

[3]  Diego Latella,et al.  Shared Abstract Data Types: An Algebraic Methodology for Their Specification , 1989, MFDBS.

[4]  Philip A. Bernstein,et al.  Formal Aspects of Serializability in Database Concurrency Control , 1979, IEEE Transactions on Software Engineering.

[5]  Andreas Reuter,et al.  Principles of transaction-oriented database recovery , 1983, CSUR.

[6]  Alfred Z. Spector,et al.  Synchronizing shared abstract types , 1984, TOCS.

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

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

[9]  William E. Weihl,et al.  Local atomicity properties: modular concurrency control for abstract data types , 1989, TOPL.

[10]  William E. Weihl Data-dependent concurrency control and recovery , 1985, OPSR.

[11]  B. R. Badrinath,et al.  Semantics-based concurrency control: Beyond commutativity , 1987, 1987 IEEE Third International Conference on Data Engineering.

[12]  Henry F. Korth,et al.  Locking Primitives in a Database System , 1983, JACM.

[13]  William E. Weihl The Impact of Recovery on Concurrency Control , 1993, J. Comput. Syst. Sci..

[14]  Divyakant Agrawal,et al.  Locks with constrained sharing (extended abstract) , 1990, PODS '90.

[15]  Tony P. Ng Using histories to implement atomic objects , 1989, TOCS.

[16]  Butler W. Lampson,et al.  Atomic Transactions , 1980, Advanced Course: Distributed Systems.