DocumentCode
2374260
Title
Bmad-tree: an efficient data structure for parallel processing
Author
Das, Sajal E. ; Demuynck, Marie-Anne
Author_Institution
Dept. of Comput. Sci., North Texas Univ., Denton, TX, USA
fYear
1996
fDate
23-26 Oct 1996
Firstpage
384
Lastpage
391
Abstract
B-trees are used for accessing large database files, stored in lexicographic order on the secondary storage devices. Algorithms for concurrent B-tree data structures achieve only limited speedup when implemented on a parallel computer. To improve the performance, we propose a variant of the Blink-tree, called the Bmad -tree, which allows insertion without node splits, with multiple access in its leaf nodes, and dilation in both the index and the leaf nodes. Parallel algorithms for search, insert and restructuring are designed for partitioned, locked and distributed models. Only part of an insertion node is locked during the insert, and simultaneous insertions by multiple processors in the same node are allowed. A restructuring algorithm runs periodically in the background and requires at most one wait by any search or update operation. Our implementations demonstrate that the Bmad-tree algorithms outperform the best known Blink-trees, and compare favorably with linear hashing. We achieve good speedup (e.g., 4.79 with 8 processors) for partitioned algorithms, and moderate speedup (2.49 with 8 processors) for locked algorithms, even including overhead costs. The insert times obtained for Bmad-trees are 50% to 60% less than that for the Blink -trees in partitioned implementations, and 70% to 80% less in locked implementations. The speedup results on the distributed memory platform (a network of workstations) were not that encouraging due to high communication costs
Keywords
database theory; distributed databases; parallel algorithms; software performance evaluation; tree data structures; very large databases; Blink-tree; Bmad-tree; communication costs; concurrent B-tree data structures; dilation; index; insertion; large database files; lexicographic order; linear hashing; locked algorithms; multiple access; node splits; parallel algorithm; parallel processing; partitioned algorithms; performance; restructuring; searching; secondary storage; speedup; tree data structure; Analytical models; Cache memory; Computer science; Costs; Data structures; Joining processes; Parallel processing; Partitioning algorithms; Phase detection; Workstations;
fLanguage
English
Publisher
ieee
Conference_Titel
Parallel and Distributed Processing, 1996., Eighth IEEE Symposium on
Conference_Location
New Orleans, LA
Print_ISBN
0-8186-7683-3
Type
conf
DOI
10.1109/SPDP.1996.570359
Filename
570359
Link To Document