NASD, GoogleFS, Farsite

From Soma-notes
Jump to navigation Jump to search

Readings

Garth A. Gibson et al., "A Cost-Effective, High-Bandwidth Storage Architecture" (1998)

Sanjay Ghemawat et al., "The Google File System" (2003)

Atul Adya et al.,"FARSITE: Federated, Available, and Reliable Storage for an Incompletely Trusted Environment" (2002)

William J. Bolosky et al., "The Farsite Project: A Retrospective" (2007)

Questions

  1. What were the target environments for these filesystems? How did these environments shape their assumptions?
  2. What are the key ideas behind each filesystem?
  3. What are the strengths and weaknesses of each design?
  4. What are the strengths and weaknesses of each implementation?
  5. Which system is best suited for today's Internet? How about tomorrow's?

Questions for NASD

  1. Is giving direct access between client and drive a good idea?
  2. Are there substantial advantages in storing variable-length objects over fixed-sized blocks?
  3. Is putting the filesystem on the drive a good idea? Should more control and awareness be given to hardware devices?
  4. What are the strengths and weaknesses of the capability-based cryptography which NASD makes use of?

Questions for GoogleFS

  1. How does the Google file system implement security?

-

  1. Is using a central server (point of access) a good design decision?

-MAkes administration easier -As long as redundant and fast, why bother with the hassle or synchronization?

  1. Is removing random writes a good idea?
  2. Is the speedup attained by GFS's record-append method worth the sacrifice of Application overhead?

Questions for Farsite

  1. Byzantine fault tolerance?
  2. How similar and different compared to OceanStore?
  3. What's up with the file lease mechanism?

Questions for Farsite retrospective

  1. If using different programming methods... how does this file-system work given different programming models
  2. Details of Byzantine fault tolerance