Location of Repository

Improving Index Performance through Prefetching

By Shimin Chen, Phillip B. Gibbons and Todd C. Mowry

Abstract

This paper proposes and evaluates Prefetching B +-Trees (pB +-Trees), which use prefetching to accelerate two important operations on B +-Tree indices: searches and range scans. To accelerate searches, pB +-Trees use prefetching to e ectively create wider nodes than the natural data transfer size: e.g., eight vs. one cache lines or disk pages. These wider nodes reduce the height of the B +-Tree, thereby decreasing the number of expensive misses when going from parent tochild without signi cantly increasing the cost of fetching a given node. Our results show that this technique speeds up search and update times by a factor of 1.2{1.5 for main-memory B +-Trees. In addition, it outperforms and is complementary to \Cache-Sensitive B +-Trees. " To accelerate range scans, pB +-Trees provide arrays of pointers to their leaf nodes. These allow the pB +-Tree to prefetch arbitrarily far ahead, even for nonclustered indices, thereby hiding the normally expensive cache misses associated with traversing the leaves within the range. Our results show that this technique yields over a sixfold speedup on range scans of 1000+ keys. Although our experimental evaluation focuses on main memory databases, the techniques that we propose are also applicable to hiding disk latency. 1

Year: 2000
OAI identifier: oai:CiteSeerX.psu:10.1.1.305.626
Provided by: CiteSeerX
Download PDF:
Sorry, we are unable to provide the full text but you may find it at the following location(s):
  • http://citeseerx.ist.psu.edu/v... (external link)
  • Suggested articles


    To submit an update or takedown request for this paper, please submit an Update/Correction/Removal Request.