Английская Википедия:Comparison of distributed file systems

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску

Шаблон:Short description

Шаблон:See also

In computing, a distributed file system (DFS) 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 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.

Locally managed

FOSS

Client Written in License Access API High availability Shards Efficient Redundancy Redundancy Granularity Initial release year Memory requirements (GB)
Шаблон:Rh |Alluxio (Virtual Distributed File System) Java Шаблон:Free HDFS, FUSE, HTTP/REST, S3 Шаблон:No Шаблон:No Шаблон:No[1] Шаблон:Yes[2] 2013
Шаблон:Rh |Ceph C++ Шаблон:Free librados (C, C++, Python, Ruby), S3, Swift, FUSE Шаблон:Yes Шаблон:Yes Шаблон:Yes[3] Шаблон:No[4] 2010 1 per TB of storage
Шаблон:Rh |Coda C Шаблон:Free C Шаблон:Yes Шаблон:Yes Шаблон:No Шаблон:No[5] 1987
Шаблон:Rh |GlusterFS C Шаблон:Free libglusterfs, FUSE, NFS, SMB, Swift, libgfapi Шаблон:No Шаблон:Yes Шаблон:Yes[6] Шаблон:No[7] 2005
Шаблон:Rh |HDFS Java Шаблон:Free Java and C client, HTTP, FUSE[8] Шаблон:No Шаблон:No Шаблон:Yes[9] Шаблон:Yes[10] 2005
Шаблон:Rh |IPFS Go Шаблон:Free HTTP gateway, FUSE, Go client, Javascript client, command line tool Шаблон:Yes Шаблон:Yes Шаблон:No[11] Шаблон:Yes[12] 2015[13]
Шаблон:Rh |JuiceFS Go Шаблон:Free POSIX, FUSE, HDFS, S3 Шаблон:Yes Шаблон:Yes Шаблон:Yes Шаблон:Yes 2021
Шаблон:Rh |Kertish-DFS Go Шаблон:Free HTTP(REST), CLI, C# Client, Go Client Шаблон:Yes Шаблон:No 2020
Шаблон:Rh |LizardFS C++ Шаблон:Free POSIX, FUSE, NFS-Ganesha, Ceph FSAL (via libcephfs) Шаблон:No Шаблон:No Шаблон:Yes[14] Шаблон:Yes[15] 2013
Шаблон:Rh |Lustre C Шаблон:Free POSIX, NFS-Ganesha, NFS, SMB Шаблон:Yes Шаблон:Yes Шаблон:No[16][17] Шаблон:No[18][19] 2003
Шаблон:Rh |MinIO Go Шаблон:Free AWS S3 API, FTP, SFTP Шаблон:Yes Шаблон:Yes Шаблон:Yes[20] Шаблон:Yes[21] 2014
Шаблон:Rh |MooseFS C Шаблон:Free POSIX, FUSE Шаблон:No Шаблон:No Шаблон:No[22] Шаблон:Yes[23] 2008
Шаблон:Rh |OpenAFS C Шаблон:Free Virtual file system, Installable File System Шаблон:No Шаблон:No[24] 2000[25]
Шаблон:Rh |OpenIO[26] C Шаблон:Free Native (Python, C, Java), HTTP/REST, S3, Swift, FUSE (POSIX, NFS, SMB, FTP) Шаблон:Yes Шаблон:Yes[27] Шаблон:Yes[28] 2015 0.5
Шаблон:Rh |Ori[29] C, C++ Шаблон:Free libori, FUSE Шаблон:No Шаблон:No[30] 2012
Шаблон:Rh |Quantcast File System C Шаблон:Free C++ client, FUSE (C++ server: MetaServer and ChunkServer are both in C++) Шаблон:No Шаблон:No Шаблон:Yes[31] Шаблон:Yes[32] 2012
Шаблон:Rh |RozoFS C, Python Шаблон:Free FUSE, SMB, NFS, key/value Шаблон:Yes Шаблон:Yes[33] Шаблон:No[34] 2011[35]
Шаблон:Rh |SeaweedFS Go, Java Шаблон:Free HTTP (REST), POSIX, FUSE, S3, HDFS Шаблон:No Шаблон:Yes[36] Шаблон:No[37] 2015
Шаблон:Rh |Storj Go Шаблон:Free HTTP (REST), S3, Native (Go, C, Python, Java) Шаблон:Yes Шаблон:Yes Шаблон:Yes 2018
Шаблон:Rh |Tahoe-LAFS Python Шаблон:Free HTTP (browser or CLI), SFTP, FTP, FUSE via SSHFS, pyfilesystem Шаблон:Yes[38] Шаблон:Yes[39] 2007
Шаблон:Rh |XtreemFS Java, C++ Шаблон:Free libxtreemfs (Java, C++), FUSE Шаблон:No[40] Шаблон:Yes[41] 2009

Proprietary

Client Written in License Access API
Шаблон:Rh |BeeGFS C / C++ FRAUNHOFER FS (FhGFS) EULA,[42]

GPLv2 client

POSIX
Шаблон:Rh |ObjectiveFS[43] C Шаблон:Proprietary POSIX, FUSE
Шаблон:Rh |Spectrum Scale (GPFS) C, C++ Шаблон:Proprietary POSIX, NFS, SMB, Swift, S3, HDFS
Шаблон:Rh |MapR-FS C, C++ Шаблон:Proprietary POSIX, NFS, FUSE, S3, HDFS, CLI
Шаблон:Rh |PanFS C, C++ Шаблон:Proprietary DirectFlow, POSIX, NFS, SMB/CIFS, HTTP, CLI
Шаблон:Rh |Infinit[44] C++ Шаблон:Proprietary (to be open sourced)[45] FUSE, Installable File System, NFS/SMB, POSIX, CLI, SDK (libinfinit)
Шаблон:Rh |Isilon OneFS C/C++ Шаблон:Proprietary POSIX, NFS, SMB/CIFS, HDFS, HTTP, FTP, SWIFT Object, CLI, Rest API
Шаблон:Rh |Qumulo C/C++ Шаблон:Proprietary POSIX, NFS, SMB/CIFS, CLI, S3, Rest API
Шаблон:Rh |Scality C Шаблон:Proprietary FUSE, NFS, REST, AWS S3
Шаблон:Rh |Quobyte Java, C++ Шаблон:Proprietary POSIX, FUSE, NFS, SMB/CIFS, HDFS, AWS S3, TensorFlow Plugin, CLI, Rest API

Remote access

Name Run by Access API
Шаблон:Rh |Amazon S3 Amazon.com HTTP (REST/SOAP)
Шаблон:Rh |Google Cloud Storage Google HTTP (REST)
Шаблон:Rh |SWIFT (part of OpenStack) Rackspace, Hewlett-Packard, others HTTP (REST)
Шаблон:Rh |Microsoft Azure Microsoft HTTP (REST)
Шаблон:Rh |IBM Cloud Object Storage IBM (formerly Cleversafe)[46] HTTP (REST)

Comparison

Some researchers have made a functional and experimental analysis of several distributed file systems including HDFS, Ceph, Gluster, Lustre and old (1.6.x) version of MooseFS, although this document is from 2013 and a lot of information are outdated (e.g. MooseFS had no HA for Metadata Server at that time).[47]

The cloud based remote distributed storage from major vendors have different APIs and different consistency models.[48]

See also

References

Шаблон:Storage virtualization Шаблон:File systems


Шаблон:Compu-storage-stub