Comparison of distributed file systems

From Wikipedia, the free encyclopedia
Jump to: navigation, search

In computing, a distributed file system or network file system is any file system that allows access to files from multiple hosts sharing via a computer network. This makes it possible for multiple users on multiple machines to share files and storage resources.

Distributed File Systems (DFSs) differ in their performance, mutability of content, handling of concurrent writes, handling of permanent or temporary loss of nodes or storage, and their policy of storing content.[1]

Locally managed[edit]

Client Written in License Access API
Ceph C++ LGPL librados (C, C++, Python, Ruby), S3, Swift, FUSE
FhGFS C / C++ FRAUNHOFER FS (FhGFS) EULA,[2]

GPLv2 client

POSIX
GlusterFS C GPLv3 libglusterfs, FUSE, NFS, SMB, Swift, libgfapi
Quantcast File System C Apache License 2.0 C++ client, FUSE (C++ server: MetaServer and ChunkServer are both in C++)
Lustre C GPLv2 POSIX, liblustre, FUSE
OpenAFS C IBM Public License Virtual file system, Installable File System
Tahoe-LAFS Python GNU GPL 2+ and other[3] HTTP (browser or CLI), SFTP, FTP, FUSE via sshfs, pyfilesystem
HDFS Java Apache License 2.0 Java and C client, HTTP
XtreemFS Java, C++ BSD License libxtreemfs (Java, C++), FUSE
MooseFS[4] Java, C++ GPL

Remote access[edit]

Name Run by Access API
Amazon S3 Amazon.com HTTP (REST/SOAP)
Google Cloud Storage Google HTTP (REST)
SWIFT (part of OpenStack) Rackspace, Hewlett-Packard, others HTTP (REST)
Microsoft Azure Microsoft HTTP (REST)
Cleversafe Cleversafe HTTP (REST)

References[edit]

  1. ^ Yaniv Pessach (2013), Distributed Storage (Distributed Storage: Concepts, Algorithms, and Implementations ed.), Amazon 
  2. ^ "FRAUNHOFER FS (FhGFS) END USER LICENSE AGREEMENT". Fraunhofer Society. 2012-02-22. 
  3. ^ "About Tahoe-LAFS". 
  4. ^ "About MooseFS". 

See also[edit]