Optimizing B+-tree for hybrid storage systems

Flash-memory-based solid state drives (SSD) have been widely used in computer systems. Due to the high price and some specific features of SSD such as asymmetric read/write speeds and limited erasure endurance, it has been a very common solution, e.g., in modern data centers, to use hybrid storage s...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:Distributed and parallel databases : an international journal 2015-09, Vol.33 (3), p.449-475
Hauptverfasser: Jin, Peiquan, Yang, Puyuan, Yue, Lihua
Format: Artikel
Sprache:eng
Schlagworte:
Online-Zugang:Volltext
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
Beschreibung
Zusammenfassung:Flash-memory-based solid state drives (SSD) have been widely used in computer systems. Due to the high price and some specific features of SSD such as asymmetric read/write speeds and limited erasure endurance, it has been a very common solution, e.g., in modern data centers, to use hybrid storage systems involving SSD and traditional hard disks (HDD). However, the SSD/HDD-based hybrid storage systems introduce some new problems in the indexing schemes for data management. In this paper, we propose a new B+-tree-based index for such hybrid storage systems, which is called HybridB tree . The HybridB tree aims to reduce the random writes to SSD while keeping high time performance and low buffer costs. Particularly, we introduce a new design called huge leaf to avoid the splits and merges on B+-tree. A huge leaf node contains two or more leaf nodes in different states. We place the leaf nodes on HDD or SSD according to their current states, and dynamically adapt the states of leaf nodes when they are read or updated. After a detailed explanation on the structure and operations of the HybridB tree , we give a theoretical analysis on the costs of the HybridB tree . Then, we conduct experiments on two TPC-C traces, using a real hybrid storage system including one HDD and two SSDs, and compare the performance of our proposal with two implementations of B+-tree, namely the B+-tree on HDD and the B+-tree on SSD/HDD. The results show that our proposal has the best time performance and the fewest buffer costs. Moreover, our proposal is able to effectively reduce the random writes to SSD.
ISSN:0926-8782
1573-7578
DOI:10.1007/s10619-014-7157-7