Advertisement

ISB-Tree: A New Indexing Scheme with Efficient Expected Behaviour

  • Alexis Kaporis
  • Christos Makris
  • George Mavritsakis
  • Spyros Sioutas
  • Athanasios Tsakalidis
  • Kostas Tsichlas
  • Christos Zaroliagis
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3827)

Abstract

We present the interpolation search tree (ISB-tree), a new cache-aware indexing scheme that supports update operations (insertions and deletions) in O(1) worst-case (w.c.) block transfers and search operations in O(log B log n) expected block transfers, where B represents the disk block size and n denotes the number of stored elements. The expected search bound holds with high probability for a large class of (unknown) input distributions. The w.c. search bound of our indexing scheme is O(log B n) block transfers. Our update and expected search bounds constitute a considerable improvement over the O(log B n) w.c. block transfer bounds for search and update operations achieved by the B-tree and its numerous variants. This is also suggested by a set of preliminary experiments we have carried out. Our indexing scheme is based on an externalization of a main memory data structure based on interpolation search.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Aggarwal, A., Vitter, J.S.: The Input/Output Complexity of Sorting and Related Problems. Communications of the ACM 31(9), 1116–1127 (1988)CrossRefMathSciNetGoogle Scholar
  2. 2.
    Andersson, A., Mattson, C.: Dynamic Interpolation Search in o(loglogn) Time. In: Lingas, A., Carlsson, S., Karlsson, R. (eds.) ICALP 1993. LNCS, vol. 700, pp. 15–27. Springer, Heidelberg (1993)Google Scholar
  3. 3.
    Bayer, R., McCreight, E.: Organization of large ordered indexes. Acta Informatica 1, 173–189 (1972)CrossRefGoogle Scholar
  4. 4.
    Comer, D.: The Ubiquitous B-tree. ACM Computing Surveys 11(2), 121–137 (1979)zbMATHCrossRefGoogle Scholar
  5. 5.
    Fagin, R., Nievergelt, J., Pippinger, N., Strong, H.R.: Extendible Hashing-A fast access method for dynamic files. ACM Transactions on Database Systems 4(3), 315–344 (1979)CrossRefGoogle Scholar
  6. 6.
    Ferragina, P., Grossi, R.: The String B-tree: A New Data Structure for String Search in External Memory and Its Applications. Journal of the ACM 46(2), 236–280 (1999)zbMATHCrossRefMathSciNetGoogle Scholar
  7. 7.
    Fox, E., Chen, Q., Daoud, A.: Practical Minimal Perfect Hash Functions for Large Databases. Communications of the ACM 35(5), 105–121 (1992)CrossRefGoogle Scholar
  8. 8.
    Frigo, M., Leiserson, C.E., Prokop, H., Ramachandran, S.: Cache-oblivious algorithms. In: In Proc. 40th IEEE Symp. on Foundations of Computer Science (FOCS), pp. 285–297 (1999)Google Scholar
  9. 9.
    Kaporis, A., Makris, C., Sioutas, S., Tsakalidis, A., Tsichlas, K., Zaroliagis, C.: Improved Bounds for Finger Search on a RAM. In: Di Battista, G., Zwick, U. (eds.) ESA 2003. LNCS, vol. 2832, pp. 325–336. Springer, Heidelberg (2003); Full version as Tech. Rep. TR-2003/07/01, Computer Technology Institute, Patras (July 2003)CrossRefGoogle Scholar
  10. 10.
    Kaporis, A., Makris, C., Mavritsakis, G., Sioutas, S., Tsakalidis, A., Tsichlas, K., Zaroliagis, C.: ISB-Tree: A New Indexing Scheme with Efficient Expected Behaviour. Computer Technology Institute Tech. Report TR 2005/09/02 (September 2005)Google Scholar
  11. 11.
    Knuth, D.E.: Sorting and Searching. The Art of Computer Programming, vol. 3. Addison-Wesley, Reading (1973)Google Scholar
  12. 12.
    Knuth, D.E.: Deletions that preserve randomness. IEEE Trans. Softw. Eng. 3, 351–359 (1977)CrossRefMathSciNetGoogle Scholar
  13. 13.
    Levcopoulos, C., Overmars, M.H.: Balanced Search Tree with O(1) Worst-case Update Time. Acta Informatica 26, 269–277 (1988)zbMATHCrossRefMathSciNetGoogle Scholar
  14. 14.
    Litwin, W.: Linear Hashing: A new tool for files and tables addressing. In: Proc. Int. Conf. on Very Large Databases (VLDB), vol. 6, pp. 212–223 (1980)Google Scholar
  15. 15.
    Manolopoulos, Y., Theodoridis, Y., Tsotras, V.: Advanced Database Indexing. Kluwer Academic Publishers, Dordrecht (2000)zbMATHCrossRefGoogle Scholar
  16. 16.
    Mehlhorn, K., Tsakalidis, A.: Dynamic Interpolation Search. Journal of the ACM 40(3), 621–634 (1993)zbMATHCrossRefMathSciNetGoogle Scholar
  17. 17.
    Overmars, M., van Leeuwen, J.: Worst Case Optimal Insertion and Deletion Methods for Decomposable Searching Problems. Information Processing Letters 12(4), 168–173Google Scholar
  18. 18.
    Seeger, B., Larson, P.A.: Multi-Disk B-trees. In: Proc. SIGMOD Conference, pp. 436–445 (1991)Google Scholar
  19. 19.
    Srinivasan, V., Carey, M.J.: Performance of B+ Tree Concurrency Algorithms. VLDB Journal 2(4), 361–406 (1993)CrossRefGoogle Scholar
  20. 20.
    Vitter, J.S.: External memory algorithms and data structures: dealing with massive data. ACM Computing Surveys 33(2), 209–271 (2001)CrossRefGoogle Scholar
  21. 21.
    Willard, D.E.: Searching Unindexed and Nonuniformly Generated Files in loglogN Time. SIAM Journal of Computing 14(4), 1013–1029 (1985)zbMATHCrossRefMathSciNetGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2005

Authors and Affiliations

  • Alexis Kaporis
    • 1
  • Christos Makris
    • 1
  • George Mavritsakis
    • 1
  • Spyros Sioutas
    • 1
  • Athanasios Tsakalidis
    • 1
    • 2
  • Kostas Tsichlas
    • 1
  • Christos Zaroliagis
    • 1
    • 2
  1. 1.Dept of Computer Eng and InformaticsUniversity of PatrasPatrasGreece
  2. 2.Computer Technology InstitutePatrasGreece

Personalised recommendations