skip to main content
Fast crash recovery in distributed file systems
Publisher:
  • University of California at Berkeley
  • Computer Science Division 571 Evans Hall Berkeley, CA
  • United States
Order Number:UMI Order No. GAX95-04737
Bibliometrics
Skip Abstract Section
Abstract

This thesis presents fast crash recovery: a simple, efficient, and inexpensive method for increasing availability in distributed systems. In fast crash recovery we assume that critical resources will fail, and we do not attempt to mask the failures with redundant hardware or software. Instead, we design the system to recover so quickly that there is little downtime. This approach is intended for environments that can tolerate occasional failures and cannot afford the cost and overhead of redundant resources.

In particular, I focus on fast recovery of distributed state. An example of distributed state is the file caching information maintained by servers in most modern file systems. This information describes the state of file caches on client workstations. After a crash, a server must recover this information in order to guarantee the consistency of the caches. Unfortunately, distributed state recovery can be slow and complex. The techniques I have developed reduce state recovery from several minutes to under six seconds for a Sprite file server (Ouster88) with 40 clients.

This thesis evaluates three distributed state recovery techniques based on their speed, complexity, and performance overhead. The fastest technique is transparent recovery, so-called because client workstations do not communicate with the server during recovery. Instead, the server stores its distributed state in a protected area of its own main memory called the recovery box. The interface to the recovery box helps detect and prevent corruption of this state information.

To achieve fast overall recovery times, we must also recover other parts of the system quickly. For example, we can eliminate a lengthy file system consistency check by using a log-structured file system that recovers in seconds (Rosenb91). By combining the improvements described in this thesis, a Sprite file server can reboot in under 30 seconds. This is two orders of magnitude faster than most modern file systems recover.

In addition to evaluating distributed state recovery techniques, this thesis presents some overall guidelines for designing distributed systems that will recover quickly from crashes.

Cited By

  1. Burns R Fastpath Optimizations for Cluster Recovery in Shared-Disk Systems Proceedings of the 2004 ACM/IEEE conference on Supercomputing
  2. ACM
    Yin J, Martin J, Venkataramani A, Alvisi L and Dahlin M (2003). Separating agreement from execution for byzantine fault tolerant services, ACM SIGOPS Operating Systems Review, 37:5, (253-267), Online publication date: 1-Dec-2003.
  3. ACM
    Yin J, Martin J, Venkataramani A, Alvisi L and Dahlin M Separating agreement from execution for byzantine fault tolerant services Proceedings of the nineteenth ACM symposium on Operating systems principles, (253-267)
  4. ACM
    Bjornsson M and Shrira L BuddyCache Proceedings of the 17th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications, (26-39)
  5. ACM
    Bjornsson M and Shrira L (2019). BuddyCache, ACM SIGPLAN Notices, 37:11, (26-39), Online publication date: 17-Nov-2002.
  6. ACM
    Yin J, Alvisi L, Dahlin M and Iyengar A Engineering server-driven consistency for large scale dynamic Web services Proceedings of the 10th international conference on World Wide Web, (45-57)
  7. An Analytical Study of Opportunistic Lease Renewal Proceedings of the The 21st International Conference on Distributed Computing Systems
  8. Yin J, Alvisi L, Dahlin M and Lin C Hierarchical cache consistency in a WAN Proceedings of the 2nd conference on USENIX Symposium on Internet Technologies and Systems - Volume 2, (2-2)
  9. Kittur S, Steel D, Armand F and Lipkis J Fault tolerance in a distributed CHORUS/MiX system Proceedings of the 1996 annual conference on USENIX Annual Technical Conference, (18-18)
  10. ACM
    Devarakonda M, Kish B and Mohindra A (1996). Recovery in the Calypso file system, ACM Transactions on Computer Systems (TOCS), 14:3, (287-310), Online publication date: 1-Aug-1996.
  11. ACM
    Anderson T, Dahlin M, Neefe J, Patterson D, Roselli D and Wang R (1995). Serverless network file systems, ACM SIGOPS Operating Systems Review, 29:5, (109-126), Online publication date: 3-Dec-1995.
  12. ACM
    Anderson T, Dahlin M, Neefe J, Patterson D, Roselli D and Wang R Serverless network file systems Proceedings of the fifteenth ACM symposium on Operating systems principles, (109-126)
Contributors
  • HP Labs

Recommendations