Category Archives: Storage Technology

Linux File Systems (BTRFS, Reiser, JFS) introduction

Jarret W. Buse has written a few posts explaining and summarising the differences of some older and newer file systems available for Linux: BTRFS, Reiser and JFS.

BTRFS

The B-Tree File System was created by Oracle in 2007. The file system was added to Linux Kernel 2.6.29 in 2009. The maximum number of files is 8,446,744,073,709,551,616 or 2 to the 64 power of files. The maximum file length is 255 characters. The theoretical max file size limit is 16 EB, or 8EB because of a kernel limitation in Linux.

Reiser

The Reiser File System (Reiser3) was created by Namesys in 2001 and added to the Linux Kernel in version 2.4.1. Reiser3 was the first Journaling file system included in the Linux Kernel. Reiser4 was introduced in 2004 which was an improved Reiser3 file system.

Journaled File System

The JFS file system is a 64-bit file system created by IBM and ported to Linux in 1999. A stable version was released in 2001. The first implementation was the Linux Kernel 2.4.18. JFS was originally released in 1990 with AIX version 3.1. It is sometimes referred to as JFS1.

Click on the links above for the full introduction into these file systems.

ZFSOnLinux 0.6.2 – Faster and supporting newer Kernels

A new release of ZFSOnLinux is now availableZFSOnLinux is the native ZFS file-system implementation for the Linux kernel that’s maintained as an out-of-tree kernel module.

Faster performance for the new ZFSOnLinux release comes for read performance on mirrors through using the least busy device and increased IOPS performance with L2ARC through using LZ4 compression. There are also numerous bug-fixes and other minor improvements.

Btrfs vs. EXT4 vs. XFS vs. F2FS benchmark performance

Phoronix has put together a comparison test of four of the currently leading Linux file-systems: Btrfs, EXT4, XFS, and F2FS (Flash Friendly File System) and concludes the post with:

Overall, while Btrfs is much of the focus for Linux file-system discussions these days being viewed as the next-generation solution, when it comes to the performance on a single SSD disk, EXT4 is still generally fairing the best. Of course, this is just looking at the stock performance and not at the feature-sets or reliability of each file-system.”

There are a lot of performance measures, and you’ll notice there are quite a few differences between file systems as well as between Linux kernel versions.

postgresql_performance

Btrfs vs. EXT4 vs. XFS vs. F2FS (phoronix.com)

ZFS on Linux is “ready for wide scale deployment”

Developer Brian Behlendorf has announced the release of version 0.6.1 of the native ZFS on Linux port. After over two years in experimental status, the developers now say the file system “is ready for wide scale deployment on everything from desktops to super computers.” The native ZFS on Linux is based on the Solaris Porting Layer (SPL) which emulates underlying features of Solaris in the Linux kernel.

In contrast to the FUSE (Filesystem in USErspace) implementation of ZFS, the native port delivers better performance by implementing the filesystem as a kernel module.

ZFS on Linux is “ready for wide scale deployment”