Replicating various components of a system is a common technique for providing highly available services in the presence of failures. A replication scheme is a mechanism for organizing these replicas so that as a group they provide a service that has the same semantics as the original unreplicated service. Viewstamped replication is a new replication scheme for providing high availability. This thesis describes an implementation of viewstamped replication in the context of the Argus programming language and run-time system. The programmer writes an Argus program to provide a service without worrying about availability. The run-time system automatically replicates the service using the viewstamped replication scheme, and therefore makes the service highly available. Performance measurements indicate that this method allows a program to be made highly available without degradation of performance.
Cited By
- Liskov B, Ghemawat S, Gruber R, Johnson P, Shrira L and Williams M Replication in the harp file system Proceedings of the thirteenth ACM symposium on Operating systems principles, (226-238)
- Liskov B, Ghemawat S, Gruber R, Johnson P, Shrira L and Williams M (1991). Replication in the harp file system, ACM SIGOPS Operating Systems Review, 25:5, (226-238), Online publication date: 2-Oct-1991.
Recommendations
Building Highly Available Cluster File System Based on Replication
PDCAT '09: Proceedings of the 2009 International Conference on Parallel and Distributed Computing, Applications and TechnologiesIn order to gain better cost-effectiveness, current large-scale storage systems are typically built up by thousands of individual components. As systems scale up, the probability of the failure of multiple components increases. And for large-scale ...
Highly available transactions: virtues and limitations
To minimize network latency and remain online during server failures and network partitions, many modern distributed data storage systems eschew transactional functionality, which provides strong semantic guarantees for groups of multiple operations over ...