Abstract
The use of versioned data has proven its value in many areas of Computer Science including concurrency control. In this paper we examine the use of versioned objects in object bases for the purpose of enhancing concurrency. We provide a framework for discussing multi-version objects which includes fundamental definitions, the abstraction of objects as automata and a model of object method executions as transactions. A practical optimistic concurrency control protocol for multiversion objects is then presented within the developed framework. This protocol avoids the high roll back costs associated with optimistic protocols in two ways. First, a less restrictive definition of conflict, compared to other definitions, is used to determine when concurrent executions are invalid. Fewer conflicts means fewer roll backs are necessary. Second, a reconciliation process is described which permits cost-effective recovery from invalid concurrent executions rather than roll back.
This research was partially supported by the Natural Science and Engineering Research Council (NSERC) of Canada under Operating Grants (OGP-0105566 and OGP-0121527).
Preview
Unable to display preview. Download preview PDF.
References
U. Banerjee. Dependence Analysis for Supercomputing. Kluwer Academic, 1988.
N.S. Barghouti and G.E. Kaiser. Concurrency Control in Advanced Database Applications. ACM Computing Surveys, 23(3):269–317, 1991.
P.A. Bernstein and N. Goodman. Multiversion Concurrency Control — Theory and Algorithms. ACM Transactions on Database Systems, 8(4):465–483, 1983.
S.B. Davidson. Optimism and Consistency in Partitioned Distributed Database Systems. ACM Transactions on Database Systems, 9(3):456–481, 1984.
O. Deux et al. The Story of O 2. IEEE Transactions on Knowledge and Data Engineering, 2(1):91–108, 1990.
J.F. Garza and W. Kim. Transaction Management in an Object-Oriented Database System. In Proceedings of the ACM SIGMOD International Conference on the Management of Data, pages 37–45. ACM, 1988.
P.C. J. Graham, M.E. Zapp, and K. Barker. Applying Method Data Dependence to Transactions in Object Bases. Technical Report TR 92-7, University of Manitoba, Dept. of Computer Science, 1992.
S. Greenberg, editor. Computer-supported Cooperative Work and Groupware. Academic Press, 1991.
T. Hadzilacos and V. Hadzilacos. Transaction Synchronization in Object Bases. Journal of Computer and System Sciences, 43(1):2–24, 1991.
H. Hakimzadeh and W. Perrizo. Instance Variable Access Locking for Object-Oriented Databases. International Journal for Micro and Mini Computer Applications, 1993. in print.
W. Kaifer. A Framework for Version-based Cooperation Control. In Proceedings of the 2nd International Symposium on Database Systems for Advanced Applications, 1991.
W. Kaifer and H. Schöning. Mapping a Version Model to a Complex-Object Data Model. Technical report, University Kaiserslautern, 1993.
U. Kelter. Concurrency Control for Design Objects with Versions in CAD Databases. Information Systems, 12(2):137–143, 1987.
W. Kim. Introduction to Object-Oriented Databases. MIT Press, 1990.
W. Kim, J.F. Garza, N. Ballou, and D. Woelk. Architecture of the ORION Next-Generation Database System. IEEE Transactions on Knowledge and Data Engineering, 2(1):109–124, 1990.
C. Malta and J. Martinez. Automating Fine Concurrency Control in Object-Oriented Databases. In Proceedings of the International Conference on Data Engineering, pages 253–260, 1993.
T. Morzy. The Correctness of Concurrency Control for Multiversion Database Systems with Limited Number of Versions. IEEE, pages 595–604, 1993.
B. Walker, G. Popek, R. English, C. Kline, and G. Thiel. The LOCUS Distributed Operating Systems. In Proceedings of the Ninth ACM Symposium on the Operating Systems Principles, pages 49–70, Bretton Woods, New Hampshire, 1983.
W.E. Weihl. Commutativity-Based Concurrency Control for Abstract Data Types. IEEE Transactions on Computers, 37(12):1488–1505, 1988.
W.E. Weihl. Local Atomicity Properties: Modular Concurrency Control for Abstract Data Types. ACM Transactions of Programming Languages and Systems, 11(2):249–282, 1989.
K. Wilkinson, P. Lyngbaek, and W. Hasan. The Iris Architecture and Implemntation. IEEE Transactions on Knowledge and Data Engineering, 2(1):63–75, 1990.
K-L. Wu, P.S. Yu, and M-S. Chen. Dynamic Finite Versioning: An Effective Versioning Approach to Concurrent Transaction and Query Processing. IEEE, pages 577–586, 1993.
M.E. Zapp and K. Barker. Modular Concurrency Control Algorithms for Object Bases. In International Symposium on Applied Computing: Research and Applications in Software Engineering, Databases, and Distributed Systems, pages 28–36, Monterrey, Mexico, October 1993.
M.E. Zapp and K. Barker. The Serializability of Transactions in Object Bases. In Proceedings of the International Conference on Computers and Information, pages 428–432, Sudbury, Canada, May 1993.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1994 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Graham, P., Barker, K. (1994). Effective optimistic concurrency control in multiversion object bases. In: Bertino, E., Urban, S. (eds) Object-Oriented Methodologies and Systems. ISOOMS 1994. Lecture Notes in Computer Science, vol 858. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0014033
Download citation
DOI: https://doi.org/10.1007/BFb0014033
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-58451-3
Online ISBN: 978-3-540-48804-0
eBook Packages: Springer Book Archive