Mailing List Archive


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [tlug] Help with fsck and ocfs2 (or even ext4?)...



Raymond Wan quotes Christian Horn:

 > > a) NFS server
 > > b) NFS server, clustered: 2 systems, cluster like pacemaker,
 > > c) Ceph: all of the systems have a bit local storage, i.e.

There's a minor file system from Carnegie-Mellon U called Coda which
has the following characteristics:

1)  Files are the unit of storage.
2)  Files are grouped into volumes, which are the unit of replication.
3)  Volumes are stored on servers, and may be replicated.
4)  The client is a cache which downloads and uploads files (not
    volumes) on demand.
5)  The client presents POSIX file semantics to the applications via a
    kernel extension (module on Linux, kext on MacOS, whatever on Windows).
    Caveats:
    a)  Large files are limited to the size of the cache (and if you
        need to use multiple "large" files, cache thrash is
        prohibitive, see b).
    b)  open() takes a long time for large files not in cache, as the
        whole file must be cached before any reads or writes are
        allowed.  IIRC up to about 1MB, there was no perceptible
        difference between NFS and Coda, bigger than that Coda
        performance gradually degraded for infrequently used files.
        But if you know what files were needed in advance, you can
        pre-cache them, and then you get local filesystem performance
        for all files up to the cache size limit.
    c)  Read concurrency with multiple clients is wonderful, write
        concurrency is prohibitively slow.

I was really happy with it for certain personal applications ($HOME,
$GITDIRs) until MacOS made some major change to its kernel module
interface, and the Mac kernel module stopped building.  I haven't used
it in some years, but I'm still on the mailing list and there's a
trickle of maintenance going on.  The code base has been very stable
(except for the kernel modules) for a decade.  I'm not sure if the
FUSE module ever became stable, I should look into that.

Steve


Home | Main Index | Thread Index