skip to main content
article
Free Access

Concurrency and recovery in generalized search trees

Published:01 June 1997Publication History
Skip Abstract Section

Abstract

This paper presents general algorithms for concurrency control in tree-based access methods as well as a recovery protocol and a mechanism for ensuring repeatable read. The algorithms are developed in the context of the Generalized Search Tree (GiST) data structure, an index structure supporting an extensible set of queries and data types. Although developed in a GiST context, the algorithms are generally applicable to many tree-based access methods. The concurrency control protocol is based on an extension of the link technique originally developed for B-trees, and completely avoids holding node locks during I/Os. Repeatable read isolation is achieved with a novel combination of predicate locks and two-phase locking of data records. To our knowledge, this is the first time that isolation issues have been addressed outside the context of B-trees. A discussion of the fundamental structural differences between B-trees and more general tree structures like GiSTs explains why the algorithms developed here deviate from their B-tree counterparts. An implementation of GiSTs emulating B-trees in DB2/Common Server is underway.

References

  1. BS77 R. Bayer and M. Schkolnick. Concurrency of Operations on B-Trees. Acta Informatica, 9:1-21, 1977.Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. EGLT76 K.P. Eswaran, J.N. Gray, R.A. Lode, and I.L. Traiger. The notion of consistency and predicate locks in database systems. Communications of the ACM, 19(11):624-633, November 1976. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. GR93 J. Gray and A. Reuter. Transaction Processing- Concepts and Techniques. Morgan Kaufmann Publishers, 1993. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Gra78 J. Gray. Notes on Database Operating Systems. In Operating Systems- An Advanced Course, volume 60 of Lecture Notes in Computer Science. Springer-Vedag, 1978. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Gut84 A. Guttman. R-Trees: A Dynamic Index Structure for Spatial Searching. in Proc. ACM SIGMOD Conf., pages 47-57, June 1984. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. HNP95 J. Hellerstein, J. Naughton, and A. Pfeffer. Generalized Search Trees for Database Systems. In Proc. 2 Ist Int'l Conference on Very Large Databases (VLDB), pages 562-573, September 1995. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Jag90 H.V. Jagadish. Spatial Search with Polyhedra. In Proc. 6th IEEE Int'l Conf. on Data Engin., 1990. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. JS93 T. Johnsonand D. Shasha. The Performance of Current B-Tree Algorithms. ACM TODS, 18(I), March 1993. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. KB95 M. Komacker and D. Banks. High-Concurrency Locking in R-Trees. In Proc. 21st Int'l Conference on Very Large Databases (VLDB), pages 134-145, September 1995. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. KKAD89 W. Kim, K.-C. Kim, and A. A. Dale. Object-Oriented Concepts, Databases and Applications, chapter Indexing Techniques for Object-Oriented Databases. ACM Press and Addison-Wesley Publishing Co., 1989. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. KL80 H.T. Kung and P. L. Lehman. Concurrent Manipulation of Binary Search Trees. ACM TODS, 5(3), 1980. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. LJF94 K. Lin, H. Jagadish, and C. Faloutsos. The TV-Tree: An Index Structure for High-Dimensional Data. VLDB Journal, 3, October 1994. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Lom93 D. Lomet. Key Range Locking Strategies for Improved Concurrency. In Proc. 19th lnt'l Conf. on Very Large Databases (VLDB), August 1993. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. LS90 D. Lomet and B. Salzberg. The hB-Tree: A Multiattribute Indexing Method with Good Guaranteed Performance. ACM TODS, 15(4):625-685, December 1990. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. LS92 D. Lomet and B. Salzberg. Access Method Concurrency with Recovery. In Proc. A CM SIGMOD Conf., pages 351-360, 1992. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. LY81 P'L" Lehmann and S'B" Yao. Efficient Locking for Concurrent Operations on B-Trees. ACM TODS, 6(4):650- 670, December 1981. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. MHL+92 C. Mohan, D. Hadede, B. Lindsay, H. Pirahesh, and P. Schwarz. ARIES: A Transaction Recovery Method Supporting Fine-Granularity Locking and Partial Rollbacks Using Write-Ahead Logging. ACM TODS, 17(1), March 1992. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. ML92 C. Mohan and E Levine. ARIES/IM: An Efficient and High Concurrency Index Management Method Using Write-Ahead Logging. In Proc. ACM SIGMOD Conf., June 1992. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Moh90a C. Mohan. ARIES/KVL: A Key-Value Locking Method for Concurrency Control of Multiaction Transactions Operating on B-Tree Indexes. In Proc. 16th Int'l Conference on Very Large Databases (VLDB), August 1990. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. Moh90b C. Mohan. CommiLLSN: A Novel and Simple Method for Reducing Locking and Latching in Transaction Processing Systems. in Proc. 16th lnt'l Conference on Very Large Databases (VLDB), August 1990. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. Moh95 C. Mohan. Performance of Concurrency Control Mechanisms in Centralized Database Systems, chapter Concurrency Control and Recovery Methods for B+- Tree Indexes: ARIES/KVL and ARIES/IM. Prentice Hall, Englewood Cliffs, New Jersey, 1995. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Sag86 Y. Sagiv. Concurrent Operations on B*-Trees with Overtaking. Journal of Computer and System Sciences, 33(2):275-296, 1986. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. SC91 V. Srinivasan and M. Carey. Performance of B-Tree Concurrency Control Algorithms. In Proc. ACM SIG- MOD Conf., pages 416--425, 1991. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. SG88 D. Shasha and N. Goodman. Concurrent Search Structure Algorithms. ACM TODS, 13(1), March 1988. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. SRF87 T. Sellis, N. Roussopoulos, and C. Faloutsos. The R+- Tree: A Dynamic Index for Multidimensional Objects. In Proc. 13th Int 'l Conference on Very Large Databases (VLDB), pages 507-518, September 1987. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Concurrency and recovery in generalized search trees

              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 SIGMOD Record
                ACM SIGMOD Record  Volume 26, Issue 2
                June 1997
                583 pages
                ISSN:0163-5808
                DOI:10.1145/253262
                Issue’s Table of Contents
                • cover image ACM Conferences
                  SIGMOD '97: Proceedings of the 1997 ACM SIGMOD international conference on Management of data
                  June 1997
                  594 pages
                  ISBN:0897919114
                  DOI:10.1145/253260

                Copyright © 1997 ACM

                Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

                Publisher

                Association for Computing Machinery

                New York, NY, United States

                Publication History

                • Published: 1 June 1997

                Check for updates

                Qualifiers

                • article

              PDF Format

              View or Download as a PDF file.

              PDF

              eReader

              View online with eReader.

              eReader