Designing Distributed Search Structures with Lazy Updates

Abstract

Very large database systems require distributed storage for expansibility and high throughput, which means that they need distributed search structures for fast and eecient access to the data. In a highly parallel distributed search structure, parts of the index must be replicated to avoid serialization bottlenecks. Designing distributed and replicated search structures is made diicult by the complex interaction of the search structure concurrency control and the replica coherency algorithms. In this paper, we present an approach to maintaining distributed data structures that uses lazy updates, which take advantage of the semantics of the search structure operations to allow for scalable and low-overhead replication. Lazy updates can be used to design distributed search structures that support very high levels of concurrency. The alternatives to lazy update algorithms (eager updates) use synchronization to ensure consistency, while lazy update algorithms avoid blocking. Since lazy updates avoid the use of synchronization, they are much easier to implement than eager update algorithms. We develop a correctness theory for lazy update algorithms, then present lazy update algorithms to maintain a dB ? tree, which is a distributed B + tree that replicates its interior nodes for highly parallel access. We show how the algorithms can be applied to the construction of other distributed search structures.

Cite this paper

@inproceedings{Johnson2007DesigningDS, title={Designing Distributed Search Structures with Lazy Updates}, author={Theodore Johnson and Padmashree Krishna}, year={2007} }