in linux

A new generation of filesystems for Linux: NiLFS and exofs

Log-based filesystems

NiLFS(2) is another filesystem with the feature of taking «snapshots» of the data. Other filesystems that include snapshots are ZFS, LFS or Ext3cow.

 

It is an ideal filesystem for solid state disks (SSD), since writes and erases are minimised, which extends the lifetime of these memories.

 

John Ousterhout and Fred Dougles already proposed this kind of system in 1988 and it was implemented in the Sprite operating system in 1992.  A log-based filesystem conceives the system as a circular log in which data and metadata are written at the front and free space is reclaimed at the tail.  With this system the data can appear 2 more times in the log, but since the log moves forward chronologically, only the most recent data is taken as active data.

 

The NiLFS(2) demonstration

was done on linux kernel 2.6.27 and version 2.6.30-rc1 already includes NiLFS(2) in the main branch.

 

 

 

Object-based storage systems

 

In traditional storage systems blocks are used to store the data, and the metadata takes up part of those blocks.  In an object-based storage system, instead of working with fixed-size blocks you work with variable-size objects and their associated metadata.

 

exofs was created at IBM by Avnishay Traeger and was called OSD file system (osdfs). Currently, Panasas continues the project and has renamed it exofs.

 

 

For more information on how to install and use these filesystems, see the reference.

 

Reference:

NiLFS(2) and exofs