CS6963 Distributed Systems

FDS Quiz

Answer each of the following questions with a few sentences at most.
Send the answers in an email
to stutsman@cs.utah.edu and
CC shweta@cs.utah.edu
with the subject "CS6963 FDS Quiz"
by Sep 1 23:59 MDT.

  1. The TLT when a cluster is first started consists of m permutations of the server list (Section 2.2). But, in Section 3.2 when a tractserver fails the master "picks random tractservers to fill in the empty space in the TLT where the dead tractserver appeared".
    1. What will be the state of the TLT after every host has crashed at least once?
    2. Why isn't the original TLT generated randomly?
    3. Is there a contradiction here?
  2. Review Section 3.5.
    • A blob has contents I at tract 0.
    • Consider client A that writes A tract 0 to the blob and
    • client B that concurrently writes B to tract 0 of the same blob.
    • Client A and B both receive positive acknowledgement that their writes succeeded.
    • Finally, both client A and B read tract 0.
    • What are the results the two clients could observe if there were no intervening tractserver failures?
  3. Initially, the author's put forward the TLT as a simple solution to improving distributed datacenter filesystem scalability/performance. After reading the paper does FDS achieve its goal of simplicity? If you had to build a datacenter filesystem would you use this approach? What might you do the same/differently? Just give a couple of sentences.