Massive Concurrent Deletion of Keys in B*-Tree

  • S. Arash Ostadzadeh
  • M. Amir Moulavi
  • Zeinab Zeinalpour
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3911)


B*-tree is an improved variant of well known B-tree data structure which has extensive applications in data storage and retrieval systems including parallel database systems. In this paper, we present an algorithm for deleting keys of B*-tree concurrently in the case that the number of to-be-deleted keys is more than a half of the total keys in the tree. The proposed algorithm can be implemented on CREW PRAM model in optimal O(log2 n + Blog B n) time with the total processors equal to the keys to be deleted. n is the total number of keys in B*-tree and B is equal to half of the keys in an internal node containing maximum keys. It counts as an improvement upon the previous comparable known algorithms by a reduction of factor B in the (log2 n)-term of the time complexity.


Internal Node Time Complexity Analysis Temporary Array Total Processor Deletion Algorithm 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Batory, D.S.: B + -trees and indexed sequential files: A performance comparison. ACM SIGMOD, 30–39 (1981)Google Scholar
  2. 2.
    Bayer, R., Unterauer, K.: Prefix B-trees. ACM Trans. on Database System 2(1), 11–26 (1977)CrossRefGoogle Scholar
  3. 3.
    Bayer, R., McCreight, E.: Organization and maintenance of large ordered indexes. Acta Inform. 1(3), 173–189 (1972)CrossRefzbMATHGoogle Scholar
  4. 4.
    Berliner, H.: The B*-tree search algorithm: a best first proof procedure, Tech. Rep. CMU-CA-78-112 Computer Sci. Depart. Carnegie-Mellon Univ., Pittsburg (1978)Google Scholar
  5. 5.
    Comer, D.: The ubiquitous B-tree. ACM Comput. Surveys 11(2) (June 1979)Google Scholar
  6. 6.
    Das, S., Demuynck, M.: Concurrent algorithms for B-trees, Tech. Rep. CRPDC-92-9, Center for Research in Parallel and Distributed Comput., Dept. Of Computer Sci., Univ. of North Texas, 3 (1992)Google Scholar
  7. 7.
    Hankins, R.A., Patel, J.M.: Effect of node size on the performance of cache-conscious B + -trees. In: ACM SIGMETRICS 2003 (2003)Google Scholar
  8. 8.
    Higham, L., Schenk, E.: Maintaining B-trees on an EREW PRAM. J. Parallel Distributed Comput. 22(2), 329–335 (1994)CrossRefzbMATHGoogle Scholar
  9. 9.
    Johnson, T., Shasha, D.: The performance of concurrent B-tree algorithms. ACM Trans. Database Systems 18(1), 51–101 (1993)CrossRefGoogle Scholar
  10. 10.
    Knuth, D.E.: The Art of Computer programming, sorting and searching, 2nd edn. Addison-Wesley Publ. Co., Reading (1998)zbMATHGoogle Scholar
  11. 11.
    Ladner, R.E., Fischer, M.J.: Parallel prefix computation. J. ACM 27(4), 831–838 (1980)MathSciNetCrossRefzbMATHGoogle Scholar
  12. 12.
    Lanin, V., Shasha, D.: A Symmetric concurrent B-tree algorithm. In: Proc. of fall joint computer conference, pp. 380–389 (1986)Google Scholar
  13. 13.
    McCreight, E.: Pagination of B-trees with variable length records. Comm. of the ACM 20(9) (September 1977)Google Scholar
  14. 14.
    Park, H., Park, K., Cho, Y.: Deleting keys of B-trees in parallel. J Parallel Distributed Comput. 64, 1041–1050 (2004)CrossRefzbMATHGoogle Scholar
  15. 15.
    Qui, K., Akl, S.G.: Parallel Maximum Sum Algorithms on Interconnection Network, Tech. Rep. No. 99-431Google Scholar
  16. 16.
    Rao, J., Ross, K.A.: Making B + -tree cache conscious in main memory. In: SIGMOD 2000, pp. 475–486 (2000)Google Scholar
  17. 17.
    Rosenberg, A.L., Synder, L.: Time and Space Optimality in B-trees. ACM Trans. on Database System 6(1) (March 1981)Google Scholar
  18. 18.
    Sagiv, Y.: Concurrent operation on B*-tree with overtaking. J. Comput. System Sci. (33), 275–296 (1986)MathSciNetCrossRefzbMATHGoogle Scholar
  19. 19.
    Srinivasan, V., Carey, M.: Performance of B-tree concurrency control algorithms. In: Proceedings of SIGMOD 1991, pp. 416–425 (1991)Google Scholar
  20. 20.
    Wang, B., Chen, G.: Cost-optimal parallel algorithms for constructing B-trees. In: Proceedings of the 20th Annual International Conference on Parallel Processing, pp. 294–295 (1991)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2006

Authors and Affiliations

  • S. Arash Ostadzadeh
    • 1
  • M. Amir Moulavi
    • 2
  • Zeinab Zeinalpour
    • 2
  1. 1.Computer Engineering DepartmentIslamic Azad University of MashhadMashhadIran
  2. 2.Young Researchers ClubIslamic Azad University of MashhadMashhadIran

Personalised recommendations