Concurrent search structure algorithms
- 1 March 1988
- journal article
- Published by Association for Computing Machinery (ACM) in ACM Transactions on Database Systems
- Vol. 13 (1), 53-90
- https://doi.org/10.1145/42201.42204
Abstract
A dictionary is an abstract data type supporting the actions member, insert, and delete. A search structure is a data structure used to implement a dictionary. Examples include B trees, hash structures, and unordered lists. Concurrent algorithms on search structures can achieve more parallelism than standard concurrency control methods would suggest, by exploiting the fact that many different search structure states represent one dictionary state. We present a framework for verifying such algorithms and for inventing new ones. We give several examples, one of which exploits the structure of Banyan family interconnection networks. We also discuss the interaction between concurrency control and recovery as applied to search structures.Keywords
This publication has 19 references indexed in Scilit:
- Locking ProtocolsJournal of the ACM, 1983
- Using semantic knowledge for transaction processing in a distributed databaseACM Transactions on Database Systems, 1983
- Bounded index exponential hashingACM Transactions on Database Systems, 1983
- Efficient locking for concurrent operations on B-treesACM Transactions on Database Systems, 1981
- Concurrency Control in Distributed Database SystemsACM Computing Surveys, 1981
- Concurrent manipulation of binary search treesACM Transactions on Database Systems, 1980
- The serializability of concurrent database updatesJournal of the ACM, 1979
- Ubiquitous B-TreeACM Computing Surveys, 1979
- Process synchronization in database systemsACM Transactions on Database Systems, 1978
- The notions of consistency and predicate locks in a database systemCommunications of the ACM, 1976