MetaCartSign in to MyCiteSeer

Include Citations | Advanced Search | Help

Include Citations | Advanced Search | Help

  Designing Distributed Search Structures with Lazy Updates

Download:
Download as a PDF | Download as a PS
by Theodore Johnson, Padmashree Krishna
ftp://ftp.cise.ufl.edu/pub/tech-reports/tr93/tr93-034.ps.Z
Add To MetaCart

Abstract:

Very large database systems require distributed storage for expansibility and high throughput, which means that they need distributed search structures for fast and efficient 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 difficult 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 \Gamma 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. 1

Citations

1319 Concurrency Control and Recovery in Database Systems – Bernstein, Hadzilacos, et al. - 1987
796 Distributed snapshots: Determining global states of distributed systems – Chandy, Lamport - 1985
531 Linearizability: a correctness condition for concurrent objects – Herlihy, Wing - 1990
455 The ubiquitous B-tree – Comer - 1979
194 Recovery in distributed systems using optimistic message logging and checkpointing – Johnson, Zwaenepoel - 1990
177 The hB-tree: a multiattribute indexing method with good guaranteed performance – Lomet, Salzberg - 1990
164 Consistency in partitioned networks – Davidson, Garcia-Molina, et al. - 1985
117 Fault Tolerance Under UNIX – Borg, Blau, et al. - 1989
115 Efficient Locking for Concurrent Operations on B-Trees – Lehman, Yao - 1981
93 Efficient distributed recovery using message logging – Sistla, Welch - 1989
65 LH* : Linear Hashing for Distributed Files – Litwin, Schneider, et al. - 1993
65 RP* : A Family of Order Preserving Scalable Distributed Data Structures – Litwin, Neimat, et al. - 1994
47 The impact of recovery on concurrency control – WEIHL - 1989
46 Concurrent Search Structure Algorithms – Shasha, Goodman - 1988
35 A symmetric concurrent b-tree algorithm – Lanin, Shasha - 1986
30 Low cost management of replicated data in fault-tolerant distributed systems – JOSEPH, BIRMAN - 1986
26 Distributed File Organization with Scalable Cost/Performance – Vingralek, Breitbart, et al. - 1994
22 Concurrent operations on B ∗ -trees with overtaking – Sagiv - 1986
21 A Framework for the Performance Analysis of Concurrent B-tree Algorithms – Johnson, Shasha - 1990
20 Multi-version memory: Software cache management for concurrent B-trees – Weihl, Wang - 1986
18 A Distributed Data-Balanced Dictionary Based on the B-link Tree – Johnson, Colbrook - 1992
15 Distributed data structures: A case study – Ellis - 1985
14 An Efficient Method for Distributing Search Structures – Matsliach, Shmueli - 1991
14 Multi-disk B-trees – Seeger, Larson - 1991
12 An in-depth analysis of concurrent B-tree algorithms – Wang - 1991
11 Extendible Hashing for Concurrent Operations and Distributed Data – Ellis - 1983
11 The Performance of Concurrent Data Structure Algorithms – Johnson - 1990
11 Maintaining Dynamic Ordered Sets on Processor Networks – Ranade - 1992
10 Distributed data structures: A complexity oriented view – Peleg - 1990
9 An algorithm for concurrent search trees – Colbrook, Brewer, et al. - 1991
6 I-Ling Yen. Concurrent maintenance of data structures in a distributed system – Bastani, Iyengar - 1988
5 Compact deterministic distributed dictionaries – Gilon, Peleg - 1991
5 A Distributed, Replicated, Data-balanced Search Structure – Johnson, Colbrook - 1994
4 Implementing distributed search structures – Krishna, Johnson - 1992
4 A Concurrent Search Structure – Parker - 1989
4 Hash tables in massively parallel systems – Yen, F - 1992
3 auf der Hyde, An optimal parallel dictionary – Dietzfelbinger, Meyer - 1989
3 Highly scalable data balanced distributed b-trees – Krishna, Johnson - 1995
3 Providing high reliability using lazy replication – Ladin, Liskov, et al. - 1992
2 Index replication in a distributed b-tree – Krishna, Johnson - 1994
1 Optimistic recovery in distribtued systems – Strom, Yemeni - 1985
1 Context-based synchroniczation: An approach beyond semantics for concurrency control – Wong, Agrawal - 1993