Advertisement

J + -Tree: A New Index Structure in Main Memory

  • Hua Luan
  • Xiaoyong Du
  • Shan Wang
  • Yongzhi Ni
  • Qiming Chen
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4443)

Abstract

As the memory capacity increases and the hardware becomes cheaper, main memory databases (MMDB) have come true and been used in more and more applications, because they can provide better response time and throughputs. The advent of MMDB requires a reconsideration of data structures and algorithms of traditional DBMS. The index structure is one of the most important aspects that need be redesigned since it can affect the overall system performance heavily. Even though the T-tree index, which was proposed for main memory databases, has been widely accepted as a promising index structure. B + -tree and its variants still have their advantages in memory and are also regarded as the potential main memory database index structures. In this paper, we propose a new indexing technique called J + -tree for MMDB, inspired by the Judy structure which is an associative array data structure. Our J + -tree index not only holds the advantages of Judy (such as good single value search characteristic) but also outperforms it in many ways. For example, J + -tree can obtain better performance for range queries that are very slow in Judy structure. We compare the J + -tree index with Judy, T-tree and B + -tree on time and space aspects, and the experimental results show that J + -tree can provide better overall performance in main memory.

Keywords

Leaf Node Index Structure Range Query Search Cost Tree Index 
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.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Baskins, D.: Judy functions - C libraries for creating and accessing dynamic arrays, http://judy.sourceforge.net
  2. 2.
    Comer, D.: The Ubiquitous B-Tree. ACM Computing Surveys 11(2) (1979)Google Scholar
  3. 3.
    Chen, S., Gibbons, P.B., Mowry, T.C.: Improving Index Performance through Prefetching. In: Proceedings of the SIGMOD 2001 Conference, pp. 235–246 (2001)Google Scholar
  4. 4.
    Garcia-Molina, H., Salem, K.: Main Memory Database Systems: An Overview. IEEE Transactions on Knowledge and Data Engineering 4(6) (1992)Google Scholar
  5. 5.
    Jung, K., Lee, K.: Design and Implementation of Storage Manager in Main Memory Database System ALTIBASE.Google Scholar
  6. 6.
    Lehman, T.J., Carey, M.J.: A Study of Index Structures for Main Memory Database Management Systems. In: Proceedings of the 12th VLDB Conference, pp. 294–303 (1986)Google Scholar
  7. 7.
    Lehman, T.J., Shekita, E.J., Cabrera, L.: An Evaluation of Starburst’s Memory Resident Storage Component. IEEE Transactions on Knowledge and Data Engineering 4(6), 555–566 (1992)CrossRefGoogle Scholar
  8. 8.
    Rao, J., Ross, K.A.: Cache Conscious Indexing for Decision-Support in Main Memory. In: Proceedings of the 25th VLDB Conference (1999)Google Scholar
  9. 9.
    Rao, J., Ross, K.A.: Making B + -Trees Cache Conscious in Main Memory. In: Proceedings of ACM SIGMOD Conference (2000)Google Scholar
  10. 10.
    Rastogi, R., Seshadri, S., Bohannon, P., Leinbaugh, D., Silberschatz, A., Sudarshan, S.: Logical and Physical Versioning in Main Memory Databases. In: Proceedings of the 23rd VLDB Conference, pp. 86–95 (1997)Google Scholar
  11. 11.
    The TimesTen Team: High Performance and Scalability through Application-Tier, In-Memory Data Management. In: Proceedings of the 26th VLDB Conference (2000)Google Scholar
  12. 12.
    Programming with Judy: C Language Judy Version 4.0, http://docs.hp.com/en/B6841-90001/index.html

Copyright information

© Springer-Verlag Berlin Heidelberg 2007

Authors and Affiliations

  • Hua Luan
    • 1
    • 2
  • Xiaoyong Du
    • 1
    • 2
  • Shan Wang
    • 1
    • 2
  • Yongzhi Ni
    • 1
    • 2
  • Qiming Chen
    • 3
  1. 1.School of Information, Renmin University of China, BeijingChina
  2. 2.Key Laboratory of Data Engineering and Knowledge Engineering, Renmin University of China, MOE, BeijingChina
  3. 3.HP Labs China, BeijingChina

Personalised recommendations