Hybrid of filesystem and RAID: BTRFS, ZFS, Drobo

At the moment there are two types of filesystems - "pure" filesystems like NTFS, EXT, and XFS and hybrid filesystems such as BTRFS, ZFS, and to some extent, BeyondRAID.

"Pure" filesystems operate only at the logical level and usually do not know on what physical devices they are used. Such filesystems occupy space allocated for them and cannot see separate disks through a RAID controller. Pure filesystem assumes all the space allocated for it is uniform.

Hybrid filesystems (BTRFS and ZFS) combine functions of a filesystem and a RAID controller that allows them to make better use of hardware capabilities. "Hybrid" filesystem can be made aware of the fact that different physical drives have different characteristics, and can control its layout down to the level of physical disks. However, it should be noted that this improvement comes at the cost of increasing the complexity of algorithms for data storage. In off-the-shelf devices BTRFS is used in NETGEAR ReadyNAS, and ZFS in NETGEAR ReadyDATA.

There is a third option when an array driver, while not being combined with a filesystem into one monolithic unit, can peek into the filesystem structure and adjust RAID behavior so that to provide the best speed and data integrity. Drobo uses this approach in their BeyondRAID devices.

Hybrid filesystems have a good flexibility and allow to create configurations that would not be possible in a typical RAID, like a configuration when different RAID levels are used for filesystem metadata and user files; up to an extreme case of having different RAID levels for different files. Additionally, the conjoint transaction log for a RAID and a filesystem allows to avoid write hole.

The disadvantage of such filesystems is very high complexity and impossibility to recover data in case of severe metadata damage. At the moment there is a few data recovery tools which can recover data from hybrid filesystems. ReclaiMe data recovery software is one of the few that can do at least BTRFS recovery, and even that only when filesystem metadata is not too severely damaged.

Continue to Parity functions.