|   | CMU-CS-05-192 Computer Science Department School of Computer Science, Carnegie Mellon University 
 
 
Redesigning Database Systems in Light of  Shimin Chen December 2005 Ph.D. Thesis 
CMU-CS-05-192.ps 
 
 For B+-Trees, we first propose and evaluate a novel main memory index structure, Prefetching B+-Trees, which uses prefetching to accelerate two major access patterns of B+-Tree indices: searches and range scans. We then apply our findings in the development of a novel index structure, Fractal Prefetching B+-Trees, that optimizes index operations both for CPU cache performance and for disk performance in commercial database systems by intelligently embedding cache-optimized trees into disk pages. For hash joins, we first exploit cache prefetching separately for the I/O partition phase and the join phase of the algorithm. We propose and evaluate two techniques, Group Prefetching and Software-Pipelined Prefetching, that exploit inter-tuple parallelism to overlap cache misses across the processing of multiple tuples. Then we present a novel algorithm, Inspector Joins, that exploits the free information obtained from one pass of the hash join algorithm to improve the performance of a later pass. This new algorithm addresses the memory bandwidth sharing problem in shared-bus multiprocessor systems. We compare our techniques against state-of-the-art cache-friendly algorithms for B+-Trees and hash joins through both simulation studies and real machine experiments. Our experimental results demonstrate dramatic performance benefits of our cache prefetching enabled techniques. 227 pages 
 | 
| 
    Return to: 
	SCS Technical Report Collection This page maintained by reports@cs.cmu.edu | |