|
ABSTRACT
The performance of main-memory index structures is increasingly determined by the number of CPU cache misses incurred when traversing the index. When keys are stored indirectly, as is standard in main-memory databases, the cost of key retrieval in terms of cache misses can dominate the cost of an index traversal. Yet it is inefficient in both time and space to store even moderate sized keys directly in index nodes. In this paper, we investigate the performance of tree structures suitable for OLTP workloads in the face of expensive cache misses and non-trivial key sizes. We propose two index structures, pkT-trees and pkB-trees, which significantly reduce cache misses by storing partial-key information in the index. We show that a small, fixed amount of key information allows most cache misses to be avoided, allowing for a simple node structure and efficient implementation. Finally, we study the performance and cache behavior of partial-key trees by comparing them with other main-memory tree structures for a wide variety of key sizes and key value distributions.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
|
 |
2
|
J. Baulier , P. Bohannon , S. Gogate , C. Gupta , S. Haldar, DataBlitz storage manager: main-memory database performance for critical applications, Proceedings of the 1999 ACM SIGMOD international conference on Management of data, p.519-520, May 31-June 03, 1999, Philadelphia, Pennsylvania, United States
|
| |
3
|
R. Bayer and E. McCreight. Organization and maintenance of large ordered indexes. Acta Informatica, 1(3):173-189, 1972.
|
 |
4
|
|
| |
5
|
|
| |
6
|
T.M. Chilimbi, J.R. Larus, and M. Hill. Imporving pointer-based codes through cache-conscious data placement. Technical Report 98, University of Wisconsin-Madison, 1998.
|
| |
7
|
Intel Corporation. Pentium III processor for the SC242 at 450 MHz to 800 MHz datasheet. http://developer.intel.com/design/pentiumiii/datashts/244452.htm, 2000.
|
| |
8
|
|
 |
9
|
David J DeWitt , Randy H Katz , Frank Olken , Leonard D Shapiro , Michael R Stonebraker , David Wood, Implementation techniques for main memory database systems, Proceedings of the 1984 ACM SIGMOD international conference on Management of data, June 18-21, 1984, Boston, Massachusetts
|
| |
10
|
R. Embody and B. Moore. Perfmon user's guide. http://www.cse.msu.edu/ enbody/perfmon.html.
|
 |
11
|
|
| |
12
|
|
| |
13
|
|
| |
14
|
|
| |
15
|
|
| |
16
|
|
| |
17
|
|
| |
18
|
L. McVoy and C. Staelin. lmbench: Portable tools for performance analysis. In USENIX, editor, USENIX 1996 Annual Technical Conference, January 22-26, 1996. San Diego, CA, pages 279-294, Berkeley, CA, USA, January 1996. USENIX.
|
| |
19
|
Sun Microsystems. The Ultra 30 architecture, technical white paper. http://www.sun.com/desktop/products/Ultra30/u30.pdf, 1997.
|
| |
20
|
Sun Microsystems. Ultra 60 workstation datasheet. http://www.sun.com/desktop/products/Ultra60/ultra60 datasheet.html, 1998.
|
| |
21
|
C. Mohan. ARIES/KVL: A key-value locking method for concurrency control of multiaction transactions operating on Btree indexes. In IBM Almaden Res.Ctr, Res.R. No.RJ7008, 27pp., March 1990.
|
| |
22
|
J.P. Morgenthal. Microsoft COM+ will challenge application server market. Technical Whitepaper: http://www.microsoft.com/Com/wpaper/complus-appserv.asp, 1999.
|
| |
23
|
|
| |
24
|
|
 |
25
|
|
| |
26
|
Rajeev Rastogi , S. Seshadri , Philip Bohannon , Dennis W. Leinbaugh , Abraham Silberschatz , S. Sudarshan, Logical and Physical Versioning in Main Memory Databases, Proceedings of the 23rd International Conference on Very Large Data Bases, p.86-95, August 25-29, 1997
|
 |
27
|
Theodore H. Romer , Wayne H. Ohlrich , Anna R. Karlin , Brian N. Bershad, Reducing TLB and memory overhead using online superpage promotion, Proceedings of the 22nd annual international symposium on Computer architecture, p.176-187, June 22-24, 1995, S. Margherita Ligure, Italy
|
| |
28
|
Mikael Ronstrom. Design and Modelling of a Parallel Data Server for Telecom Applications. PhD thesis, Link oping University, 1998.
|
 |
29
|
|
INDEX TERMS
Primary Classification:
H.
Information Systems
H.3
INFORMATION STORAGE AND RETRIEVAL
H.3.1
Content Analysis and Indexing
Subjects:
Indexing methods
Additional Classification:
E.
Data
E.1
DATA STRUCTURES
Subjects:
Trees
H.
Information Systems
H.3
INFORMATION STORAGE AND RETRIEVAL
H.3.3
Information Search and Retrieval
Subjects:
Search process
General Terms:
Algorithms,
Design,
Experimentation,
Management,
Measurement,
Performance,
Theory
Keywords:
B-trees,
T-tree,
cache coherence,
key compression,
main-memory indices
|