skip to main content
article
Free Access

Efficient locking for concurrent operations on B-trees

Published:01 December 1981Publication History
Skip Abstract Section

Abstract

The B-tree and its variants have been found to be highly useful (both theoretically and in practice) for storing large amounts of information, especially on secondary storage devices. We examine the problem of overcoming the inherent difficulty of concurrent operations on such structures, using a practical storage model. A single additional “link” pointer in each node allows a process to easily recover from tree modifications performed by other concurrent processes. Our solution compares favorably with earlier solutions in that the locking scheme is simpler (no read-locks are used) and only a (small) constant number of nodes are locked by any update process at any given time. An informal correctness proof for our system is given.

References

  1. 1 ASTRAHAN, M.M., ET AL. System R: Relational approach to database management. ACM Trans. Database Syst. 1, 2 (June 1976), 97-137. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. 2 BAYER, R., AND MCCREIGHT, E. Organization and maintenance of large ordered indexes. Acta Inf. I (1972), 173-189.Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. 3 BAYER, R., AND SCHKOLNICK, M. Concurrency of operations on B-trees. Acta Inf. 9 (1977), 1- 21.Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. 4 DIJKSTRA, E.W., ET AL. On-the-fly garbage collection: An exercise in cooperation. Commun. ACM 21, 11 (Nov. 1978), 966-976. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. 5 DIJKSTRA, E.W. Cooperating sequential processes. In Programming Languages, F. Genuys, Ed. Academic Press, New York, 1968, pp. 43-112.Google ScholarGoogle Scholar
  6. 6 ELLm, C.S. Concurrent search and insertion in 2-3 trees. Tech. Rep. 78-05-01, Dep. Computer Science, Univ. Washington, Seattle, May 1978.Google ScholarGoogle Scholar
  7. 6a GUIBAB, L.J., AND SEDGEWICK, R. A dichromatic framework for balanced trees. In Proc. 19th Ann. Syrup. Foundation of Computer Science, IEEE, 1978.Google ScholarGoogle Scholar
  8. 7 KNUTH, D.E. The Art of Computer Programming, vol. 3, Sorting and Searching. Addison- Wesley, Reading, Mass., 1973. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. 8 KUNG, H.T., AND LEHMAN, P.L. Concurrent manipulation of binary search trees. ACM Trans. Database Syst. 5, 3 (Sept. 1980), 354-382. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. 9 KUNG, H.T., AND SONG, S.W. A parallel garbage collection algorithm and its correctness proof. In Proc. 18th Ann. Symp. Foundations of Computer Science, IEEE, Oct. 1977, pp. 120-131.Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. 10 KwoNa, Y.S., AND WOOD, D. Concurrency in B- and T-trees. In preparation.Google ScholarGoogle Scholar
  12. 11 LAMPORT, L. Concurrent reading and writing. Commun. ACM 20, 11 (Nov. 1977), 806-811. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. 12 MILLER, R., AND SNYDER, L. Multiple access to B-trees. In Proc. Conf. Information Sciences and Systems (preliminary version), Johns Hopkins Univ., Baltimore, March 1978.Google ScholarGoogle Scholar
  14. 13 SAMADI, B. B-trees in a system with multiple users. Inf. Process. Lett. 5, 4 (Oct. 1976), 107-112.Google ScholarGoogle ScholarCross RefCross Ref
  15. 14 STEELE, G.L., JR. Multiprocessing compactifying garbage collection. Commun. ACM 18, 9 (Sept. 1975), 125-143. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. 15 WEDEKIND, H. On the selection of access paths in a data base system. In Data Base Management, J.W. Klimbie and K.L. Koffeman, Eds. North-Holland, Amsterdam, 1974, pp. 385-397.Google ScholarGoogle Scholar

Index Terms

  1. Efficient locking for concurrent operations on B-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

          PDF Format

          View or Download as a PDF file.

          PDF

          eReader

          View online with eReader.

          eReader