• DocumentCode
    3027319
  • Title

    O2-Tree: A Fast Memory Resident Index for NoSQL Data-Store

  • Author

    Ohene-Kwofie, Daniel ; Otoo, E.J. ; Nimako, Gideon

  • Author_Institution
    Sch. of Comput. Sci., Univ. of the Witwatersrand, Johannesburg, South Africa
  • fYear
    2012
  • fDate
    5-7 Dec. 2012
  • Firstpage
    50
  • Lastpage
    57
  • Abstract
    Modern computer architecture with 64-bit addressing has now become commonplace. The consequence is that sufficiently large databases can be maintained, during a usage session as main memory resident database. Such in memory resident databases still require the use of an index for fast access to the data items. A more common architecture is to maintain an in-memory index to data records that are grouped into data blocks. The data items are then accessed through a large in-memory cache pool. The T-Tree and its variants were developed as the appropriate in-memory index structure but recently a number of such index-driven databases have emerged under the banner of NoSQL databases. We propose the O2-Tree as an alternative to the T-Tree that is usable as an index for in-memory database that out-performs a number of NoSQL databases. The O2-Tree is essentially a Red-Black Binary-Search tree in which the leaf nodes are index blocks that store multiple records of key-value and record-pointer pairs. The internal nodes contain copies of the keys that split blocks of the leaf nodes in a manner similar to the B+-Tree. The new internal nodes are formed into a Red-Black-Tree structure. It has the advantage that it can be easily reconstructed by reading only the lowest key values of each leaf node block. The main contributions are in the development and implementation of the O2-Tree; its performance comparison with the T-Tree, AVL-Tree, B+-Tree, Top-Down implementation of the Red-Black Binary-Search tree; and also with NoSQL databases such as Kyoto Cabinet, LevelDB and in-memory BerkeleyDB.
  • Keywords
    SQL; database indexing; trees (mathematics); 64-bit addressing; AVL-tree; B+-tree; Kyoto cabinet; LevelDB; NoSQL data-store; O2-tree; T-Tree; Top-Down implementation; database indexing; fast memory resident index; in-memory BerkeleyDB; key-value pairs; large databases; large in-memory cache pool; leaf node block; memory resident databases; modern computer architecture; record-pointer pairs; red-black binary-search tree; Data structures; Indexing; Memory management; Vegetation; Data-Store; Database Indexing; NoSQL;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Computational Science and Engineering (CSE), 2012 IEEE 15th International Conference on
  • Conference_Location
    Nicosia
  • Print_ISBN
    978-1-4673-5165-2
  • Electronic_ISBN
    978-0-7695-4914-9
  • Type

    conf

  • DOI
    10.1109/ICCSE.2012.17
  • Filename
    6417274