skip to main content
article
Free Access

Optimistic concurrency control for abstract data types

Published:01 April 1987Publication History
Skip Abstract Section

Abstract

A concurrency control technique is optimistic if it allows transactions to execute without synchronization, relying on commit-time validation to ensure serializability. This paper describes several new optimistic concurrency control techniques for objects in distributed systems, proves their correctness and optimality properties, and characterizes the circumstances under which each is likely to be useful. These techniques have the following novel aspects. First, unlike many methods that classify operations only as reads or writes, these techniques systematically exploit type-specific properties of objects to validate more interleavings. Necessary and sufficient validation conditions are derived directly from an object's data type specification. Second, these techniques are modular: they can be applied selectively on a per-object (or even per-operation) basis in conjunction with standard pessimistic techniques such as two-phase locking, permitting optimistic methods to be introduced exactly where they will be most effective. Third, when integrated with quorum-consensus replication, these techniques circumvent certain trade-offs between concurrency and availability imposed by comparable pessimistic techniques. Finally, the accuracy and efficiency of validation are further enhanced by some technical improvements: distributed validation is performed as a side-effect of the commit protocol, and validation takes into account the results of operations, accepting certain interleavings that would have produced delays in comparable pessimistic schemes.

References

  1. [1] R. Agrawal. Concurrency control and recovery in multiprocessor database machines: design and performance evaluation. PhD thesis, University of Wisconsin, 1983. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. [2] D. Z. Badal. Concurrency Control overhead or closer look at blocking vs. non-blocking concurrency control mechanisms. In Proceedings of the 5th Berkeley Workshop, pages 55-103. 1981.Google ScholarGoogle Scholar
  3. [3] M. Carey. Modeling and Evaluation of Database Concurrency Control Algorithms. PhD thesis, University of California, Berkeley, September, 1983. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. [4] S. Ceri and S. Owicki. On the use of optimistic methods for concurrency control in distributed databases. In Proceedings of the 6th Berkeley Workshop, pages 117-130. 1982.Google ScholarGoogle Scholar
  5. [5] A. Chan, S. Fox, W. T. Lin, A. Nori, and D. Ries. The implementation of an integrated concurrency control and recovery scheme. In Proceedings el the 1982 SIGMOD Conference. ACM SIGMOD, 1982. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. [6] D. J. Dubourdieu. Implementation of distributed transactions. In Proceedings 1982 Berkeley Workshop on Distributed Data Management and Computer Networks, pages 81-94, 1982.Google ScholarGoogle Scholar
  7. [7] C. Dwork and D. Skeen. The Inherent Cost of Nonblocking Commitment. In Proceedings of the Second Annual Symposium on Principles of Distributed Computing, pages 1-11. ACM, August, 1983. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. [8] K. P. Eswaran, J. N. Gray, R. A. Lorie, and I. L. Traiger. The notion of consistency and predicate locks in a database system. Communications ACM 19(11):624-633, November, 1976. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. [9] P. Franaszek, and J. T. Robinson. Limitations of concurrency in transaction processing. ACM Transactions on Database Systems 10(1):1-28, March, 1985. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. [10] D. Gawlick. Processing 'hot spots' in high performance systems. In Proceedings COMPCON'85. 1985.Google ScholarGoogle Scholar
  11. [11] J. Gray. Notes on Database Operating Systems. Lecture Notes in Computer Science 60. Springer-Verlag, Berlin, 1978, pages 393-481. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. [12] T. Härder. Observations on optimistic concurrency control schemes. Information Systems 9:111-120, June, 1984. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. [13] M. P. Herlihy. Comparing how atomicity mechanisms support replication. In Proceedings of the 4th annual ACM SIGACT-SIGOPS Symposium on Principles of Distributed Computing. August, 1985. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. [14] M. P. Herlihy. Availability vs. atomicity: concurrency control for replicated data. Technical Report CMU. CS-85-108, Carnegie-Mellon University, February, 1985.Google ScholarGoogle Scholar
  15. [15] M. P. Herlihy. A quorum-consensus replication method for abstract data types. ACM Transactions on Computer Systems 4(1), February, 1986. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. [16] H. F. Korth. Locking primitives in a database system. Journal of the ACM 30(1), January, 1983. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. [17] H. T. Kung and J. T. Robinson. On optimistic methods for concurrency control. ACM Transactions on Database Systems 6:213-226, June, 1981. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. [18] L. Lamport. Time, clocks, and the ordering of events in a distributed system. Communications of the ACM 21(7):558-565, July, 1978. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. [19] G. Lausen. Concurrency control in data base systems: a step towards the integration of optimistic methods and locking. In Proceedings of ACM '82. 1982. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. [20] G. Lausen. Formal Aspects of optimistic concurrency control in a multiversion data base system. Information Systems 8(4):291-301, 1983.Google ScholarGoogle ScholarCross RefCross Ref
  21. [21] D. A. Menasce, and N. Nakanishi. Optimistic versus pessimistic concurrency control mechanisms in data base management systems. Information Systems 7(1):13-27, 1982.Google ScholarGoogle ScholarCross RefCross Ref
  22. [22] J. E. B. Moss. Nested Transactions: An Approach to Reliable Distributed Computing. Technical Report MIT/LCS/TR-260, Massachusetts Institute of Technology Laboratory for Computer Science, April, 1981. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. [23] C. H. Papadimitriou. The serializability of concurrent database updates. Journal of the ACM 26(4):631-653, October, 1979. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. [24] D. Reed. Implementing atomic actions on decentralized data. ACM Transactions on Computer Systems 1(1):3-23, February, 1983. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. [25] Y. C. Tay, N. Goodman, and R. Suri. Performance evaluation of locking in databases: a survey. Technical Report TR-17-84, Harvard Aiken Laboratory, 1984.Google ScholarGoogle Scholar
  26. [26] R. H. Thomas. A solution to the concurrency control problem for multiple copy databases. In Proc. 16th IEEE Comput. Soc. Int. Cont. (COMPCON). Spring, 1978.Google ScholarGoogle Scholar
  27. [27] W. Weihl. Data-Dependent concurrency control and recovery. In Proceedings of the 2nd annual ACM SIGACT-SIGOPS Symposium on Principles of Distributed Computing. August, 1983. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Optimistic concurrency control for abstract data types

          Recommendations

          Comments

          Login options

          Check if you have access through your login credentials or your institution to get full access on this article.

          Sign in

          Full Access

          • Published in

            cover image ACM SIGOPS Operating Systems Review
            ACM SIGOPS Operating Systems Review  Volume 21, Issue 2
            April 1987
            36 pages
            ISSN:0163-5980
            DOI:10.1145/24601
            Issue’s Table of Contents

            Copyright © 1987 Author

            Publisher

            Association for Computing Machinery

            New York, NY, United States

            Publication History

            • Published: 1 April 1987

            Check for updates

            Qualifiers

            • article

          PDF Format

          View or Download as a PDF file.

          PDF

          eReader

          View online with eReader.

          eReader