Preparation for Recitation on GFS

Read the GFS paper here.

GFS is a system that replicates files across machines. It's meant for an environment where lots of users are writing to the files, the files are really big, and failures are common. Section 2-4 of the paper describe the design of GFS, Section 5 discusses how GFS handles failures, and Sections 6-7 detail their evaluation and real-world usage of GFS.

Note that this paper uses the term "master". This is outdated language that the community is moving away from (see here and here for examples of alternate terms). We use the word "controller" below in place of "master". We may update this term again before recitation, as we're working on finding out what Google uses these days in the context of GFS.

To check whether you understand the design of GFS, you should be able to answer the following questions: What is the role of the controller? How does a read work? How does a write work?

As you read, think about:

Question for Recitation

Before you come to this recitation, you'll turn in a brief answer to the following questions (really—we don't need more than a sentence or so for each question). Your TA will be in touch about exactly how to turn that in.

Your answers to these questions should be in your own words, not direct quotations from the paper.

As always, there are multiple correct answers for each of these questions.