The following lists identify, characterize, and link to more thorough information onfile systems.Many olderoperating systems support only their one "native" file system, which does not bear any name apart from the name of the operating system itself.
Disk file systems are usually block-oriented. Files in a block-oriented file system are sequences of blocks, often featuring fully random-access read, write, and modify operations.
These file systems have built-in checksumming and either mirroring or parity for extra redundancy on one or several block devices:
Solid state media, such asflash memory, are similar to disks in their interfaces, but have different problems. At low level, they require special handling such aswear leveling and differenterror detection and correction algorithms. Typically a device such as asolid-state drive handles such operations internally and therefore a regular file system can be used. However, for certain specialized installations (embedded systems, industrial applications) a file system optimized for plain flash memory is advantageous.
Inrecord-oriented file systems files are stored as a collection ofrecords. They are typically associated withmainframe andminicomputer operating systems. Programs read and write whole records, rather than bytes or arbitrary byte ranges, and can seek to a record boundary but not within records. The more sophisticated record-oriented file systems have more in common with simpledatabases than with other file systems.
Shared-disk file systems (also calledshared-storage file systems,SAN file system,Clustered file system or evencluster file systems) are primarily used in astorage area network where all nodes directly access theblock storage where the file system is located. This makes it possible for nodes to fail without affecting access to the file system from the other nodes. Shared-disk file systems are normally used in ahigh-availability cluster together with storage on hardwareRAID. Shared-disk file systems normally do not scale over 64 or 128 nodes.
Shared-disk file systems may besymmetric wheremetadata is distributed among the nodes orasymmetric with centralizedmetadata servers.
Distributed file systems are also called network file systems. Many implementations have been made, they are location dependent and they haveaccess control lists (ACLs), unless otherwise stated below.
Distributedfault-tolerant replication of data between nodes (between servers or servers/clients) forhigh availability andoffline (disconnected) operation.
Distributedparallel file systems stripe data over multiple servers for high performance. They are normally used inhigh-performance computing (HPC).
Some of the distributed parallel file systems use anobject storage device (OSD) (in Lustre called OST) for chunks of data together with centralizedmetadata servers.
Distributed file systems, which also areparallel andfault tolerant, stripe and replicate data over multiple servers for high performance and to maintaindata integrity. Even if a server fails no data is lost. The file systems are used in bothhigh-performance computing (HPC) andhigh-availability clusters.
All file systems listed here focus onhigh availability,scalability and high performance unless otherwise stated below.
Name | By | License | OS | Description |
---|---|---|---|---|
Alluxio | UC Berkeley,Alluxio | Apache License | Cross-platform | An open-source virtual distributed file system (VDFS). |
BeeGFS (formerly FhGFS) | Fraunhofer Society | GNUGPL v2 for client, other components areproprietary | Linux | A free to use file system with optional professional support, designed for easy usage and high performance, used on some of the fastestcomputer clusters in the world. BeeGFS allows replication of storage volumes with automatic failover and self-healing. |
CephFS | Inktank Storage, a company acquired byRed Hat | GNULGPL | Linux kernel,FreeBSD viaFUSE[25] | A massively scalable object store. CephFS was merged into the Linux kernel in 2010. Ceph's foundation is thereliable autonomic distributed object store (RADOS), which provides object storage via programmatic interface and S3 or Swift REST APIs, block storage to QEMU/KVM/Linux hosts, and POSIX filesystem storage which can be mounted by Linux kernel and FUSE clients. |
Chiron FS | GNUGPL v3 | Linux | AFUSE-based, transparent replication file system, layering on an existing file system and implementing at the file system level whatRAID 1 does at the device level. A notably convenient consequence is the possibility of picking single target directories, without the need of replicating entire partitions. (The project has no visible activity after 2008; a status request in Oct. 2009 in the chironfs-forum is unanswered.) | |
CloudStore | Kosmix | Apache License | Google File System workalike. Replaced byQuantcast File System (QFS) | |
dCache | DESY and others | Proprietary (free for non-commercial usage)[26] | Linux | A write once filesystem, accessible via various protocols. |
General Parallel File System (GPFS) | IBM | Proprietary | Linux, Windows and AIX | APOSIX-compliant, high-performance,parallel filesystem. Support synchronousreplication between attached block storage, and asynchronous replication to remote filesystems. Also support erasure coding on dual homed SAS attached storage, and distributed over multiple storage nodes. |
Gfarm file system | NPO Tsukuba OSS Technical Support Center | X11 License | Linux,macOS,FreeBSD,NetBSD andSolaris | UsesPostgreSQL for metadata andFUSE for mounting. |
GlusterFS | Gluster, a company acquired by Red Hat | GNUGPL v3 | Linux,NetBSD,FreeBSD,OpenSolaris | A general purpose distributed file system for scalable storage. It aggregates various storage bricks over InfinibandRDMA or TCP/IP interconnect into one large parallel network file system.GlusterFS is the main component in Red Hat Storage Server. |
Google File System (GFS) | Internal software | Focus onfault tolerance, highthroughput andscalability. | ||
Hadoop Distributed File System | Apache Software Foundation | Apache License | Cross-platform | Open source GoogleFS clone. |
IBRIX Fusion | IBRIX | Proprietary | ||
JuiceFS | Juicedata | Apache License | Cross-platform | An open-sourcePOSIX-compliant file system built on top ofRedis andobject storage (e.g.Amazon S3), designed and optimized for cloud native environment. |
LizardFS | Skytechnology | GNUGPL v3 | Cross-platform | An open source, highly available POSIX-compliant file system that supports Windows clients. |
Lustre | Originally developed byCluster File Systems and currently supported by OpenSFS | GNUGPL v2 &LGPL | Linux | APOSIX-compliant, high-performance filesystem used on a majority of systems in theTop-500 list ofHPC systems. Lustre hashigh availability via storagefailover. |
MapR FS | MapR | Proprietary | Linux | Highly scalable, POSIX compliant, fault tolerant, read/write filesystem with a distributed, fault tolerant metadata service. It provides an HDFS and NFS interface to clients as well as a noSQL table interface andApache Kafka compatible messaging system. |
MooseFS | Core Technology | GNUGPL v2 andproprietary[27] | Cross-platform (Linux,NetBSD,FreeBSD,macOS,OpenSolaris) | A fault tolerant, highly available and high performance scale-out network distributed file system. It spreads data over several physical commodity x86 servers, which are visible to the user as one namespace. For standard file operations MooseFS acts like any other Unix-like file systems. |
ObjectiveFS | Objective Security Corporation | Proprietary | Linux,macOS | POSIX-compliant shared distributed filesystem. Uses object store as a backend. Runs on AWS S3, GCS and object store devices. |
OneFS distributed file system | Isilon | Proprietary[28] | FreeBSD | BSD-based OS on dedicated Intel based hardware, serving NFS v3 and SMB/CIFS toWindows,macOS,Linux and otherUNIX clients under aproprietary software. |
OIO-FS | OpenIO | Proprietary | Linux | OIO-FS provides file-oriented access toOpenIO SDSobject storage backend. It is based onFUSE technology and presents aPOSIX file system to users. This access can be used locally, or over a network usingNFS orSMB.[29] |
PanFS | Panasas | Proprietary | Linux,macOS,FreeBSD | APOSIX-compliant, high-performance,parallel filesystem used byHPC clusters. It useserasure coding and snapshots for data protection, is based upon ascale-outobject store, and is focused on transparent failure recovery and ease of use. |
Quobyte DCFS | Quobyte | Proprietary | Linux,macOS,FreeBSD | A fault-tolerant,parallelPOSIX file system, with block (VMs) and object (S3) interfaces, and advanced enterprise features likemulti-tenancy, strong authentication, encryption.Split-brain safe fault-tolerance is achieved throughPaxos-basedleader election anderasure coding. |
RozoFS | Rozo Systems | GNUGPL v2 | Linux | APOSIXDFS focused onfault-tolerance and high-performance, based on theMojetteerasure code to reduce significantly the amount of redundancy (compared to plainreplication). |
Scality | Scality ring | Proprietary | Linux | A POSIX file system[citation needed] focused on high availability and performance. Also provides S3/REST/NFS interfaces. |
Tahoe-LAFS | Tahoe-LAFS Software Foundation | GNUGPL v2+ and other[30] | Linux,Windows,macOS | A secure, decentralized, fault-tolerant,peer-to-peerdistributed data store anddistributed file system. |
VaultFS | Swiss Vault | Proprietary | Linux,Unix | Peer-to-Peer dynamically configurable EC (any*Data + any*Parity) bitrot & HW fault-tolerant POSIX/S3distributed file system using intermixable CMR & SMRshingled magnetic recording disks. |
XtreemFS | Contrail E.U. project, the German MoSGrid project and the German project "First We Take Berlin" | BSD 3-Clause[31] | Linux,Solaris,macOS, Windows | Across-platform file system for wide area networks. It replicates the data for fault tolerance and caches metadata and data to improve performance over high-latency links.SSL andX.509 certificates support makes XtreemFS usable over public networks. It also supportsstriping for usage in acluster. |
In development:
Some of these may be calledcooperative storage cloud.
These are not really file systems; they allow access to file systems from an operating system standpoint.
We can now recommend H2 as the default root filesystem in non-clustered mode.