Skip to content

MarFS provides a scalable near-POSIX file system by using one or more POSIX file systems as a scalable metadata component and one ore more data stores (object, file, etc) as a scalable data component. Our initial implementation will use GPFS file systems as the metadata component and Scality and EMC ECS ViPR object stores as the data component.

License

thewacokid/marfs

 
 

Repository files navigation

MarFS provides a scalable near-POSIX file system by using one or more POSIX file systems as a scalable metadata component and one or more data stores (object, file, etc) as a scalable data component.

Our default implementation uses GPFS file systems as the metadata component and multiple ZFS instances, exported over NFS, as the data component.

The MetaData Abstraction Layer and Data Abstraction Layer (MDAL/DAL) provide a modular way to introduce alternative implementations (metadata and data implementations, respectively). The DAL is provided by LibNE ( hosted in the erasureUtils Repo: "https://github.com/mar-file-system/erasureUtils" ), which also adds the ability to use our own erasure + checksumming implementation, utilizing Intel's Storage Acceleration Library ( "https://github.com/intel/isa-l" ).

There is extensive documentation in the Documents directory, including theory and an install guide.

The following additional repos are required to build MarFS:

The following additional repos are recommended:

About

MarFS provides a scalable near-POSIX file system by using one or more POSIX file systems as a scalable metadata component and one ore more data stores (object, file, etc) as a scalable data component. Our initial implementation will use GPFS file systems as the metadata component and Scality and EMC ECS ViPR object stores as the data component.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 96.6%
  • Makefile 2.3%
  • M4 0.9%
  • Python 0.1%
  • Shell 0.1%
  • Batchfile 0.0%