|
This paper sketches the design of the Eliot File System
(Eliot), a mutable filesystem that maintains the pure im-
mutability of its peer-to-peer (P2P) substrate by isolating
mutation in an auxiliary metadata service.
The immutability of address-to-content bindings has several advantages in
P2P systems. However, mutable filesystems are desirable because they allow
clients to update existing files; a necessary property for many applications.
In order to facilitate modifications, the filesystem must
provide some atom of mutability. Since this atom of mutability is a fundamental
characteristic of the filesystem and not
the underlying storage substrate, it is a mistake to violate
the integrity of the substrate with special cases for mutability.
Instead, Eliot employs a separate, generalized metadata
service that isolates all mutation and client state in an auxiliary
replicated database.
Eliot provides fine-granularity
file updates with either AFS open/close or NFS-like consistency semantics.
Eliot builds a mutable filesystem on a
global resource bed of purely immutable P2P block storage.
|