Abstract

Data availability is an important requirement of distributed databases. Replication is a technique that has been proposed to meet this need. In the absence of failures, traditional replica control algorithms provide complete availability in the sense that any transaction can be executed. The worst case of data availability occurs when the system is totally partitioned (each operational site is isolated from every other site). In this paper, we present techniques to achieve high availability under combinations of site failures and partitions. Users are required to specify the database access requirements in the totally-partitioned environment. This information is represented by means of a Read Access Graph (RAG). When failures occur, the set of items that may be accessed by a transaction depends on the connectivity of the network and the RAG. The techniques ensure that as failures occur the loss of availability is gradual and graceful. Data availability improves with the level of normalcy in the system. Unless there is a complete failure, at least some predefined set of transactions can be executed. It is shown that these algorithms preserve the integrity of the database by ensuring that all executions are one-copy serializable. The algorithms compare favorably with other replica management schemes in terms of availability.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call