Tuesday, March 26, 2013

zFS – A Scalable Distributed File System Using Object Disks


by O. Rodeh et al., MSST 2003.

Abstract:
zFS is a research project aimed at building a decentral- ized file system that distributes all aspects of file and stor- age management over a set of cooperating machines inter- connected by a high-speed network. zFS is designed to be a file system that scales from a few networked computers to several thousand machines and to be built from commodity off-the-shelf components.
The two most prominent features of zFS are its coop- erative cache and distributed transactions. zFS integrates the memory of all participating machines into one coher- ent cache. Thus, instead of going to the disk for a block of data already in one of the machine memories, zFS re- trieves the data block from the remote machine. zFS also uses distributed transactions and leases, instead of group- communication and clustering software.
This article describes the zFS high-level architecture and how its goals are achieved.

Link to the full paper:
http://www.cse.buffalo.edu/faculty/tkosar/cse710_spring13/papers/zfs.pdf

Ivy: A Read/Write Peer-to-Peer File System

by A. Muthitacharoen et al., OSDI 2002.


Abstract: Ivy is a multi-user read/write peer-to-peer file system. Ivy has no centralized or dedicated components, and it provides useful integrity properties without requiring users to fully trust either the underlying peer-to-peer storage system or the other users of the file system. 

An Ivy file system consists solely of a set of logs, one log per participant. Ivy stores its logs in the DHash distributed hash table. Each participant finds data by consulting all logs, but performs modifi cations by appending only to its own log. This arrangement allows Ivy to maintain meta-data consistency without locking. Ivy users can choose which other logs to trust, an appropriate arrangement in a semi-open peer-to-peer system.

Ivy presents applications with a conventional file system interface. When the underlying network is fully connected, Ivy provides NFS-like semantics, such as close-to-open consistency. Ivy detects confl icting modifi cations made during a partition, and provides relevant version information to application-specifi c confl ict resolvers. Performance measurements on a wide-area network show that Ivy is two to three times slower than NFS.

Link to the full paper:
http://www.cse.buffalo.edu/faculty/tkosar/cse710_spring13/papers/ivy.pdf