Skip to content

Analysis of Linux Filesystems – How to Compare Ext3, Ext4, Btrfs and XFS

03/08/2014

Linux offers numerous filesystems, there’s little speed gain between them, but they are each optimised for a different task.   Here we compare each system.

1. Ext3

Journaling > Faster than Ext2 > Meta-data journaling

Negatives: FScheck is slow > Max filesize is  2 TB  >  Max Volume Size is 16 TB  > The limits are bad for data centres > Max number of Sub Directories is 32,000 > No Delayed Allocation > No Snapshots > No encryption > No Clones > No Compression > No Deduplication > No Integrated LVM.

2. Ext 4

Delayed Allocation = Minimises Fragmentation > Extends = Large file performance > No limit on number of Sub Directories > Journal uses Checksums for reliability > Backward compatible with Ext3 and Ext2 > Meta-data Journaling

Negatives: Theodore Ts’o considers Ext filesystems as 1970’s technology and would prefer Btrfs > Max filename length 255 > Max file size is 16 TB > Max Volume size is 1 EB > No Snapshots > No Clones > No Encryption > No Compression > No Deduplication > No Integrated LVM

3. Btrfs

Copy on Write filesystem > Built in Volume Manager > RAID Support for 0/1/5/6/10 > Checksums for data integrity > Copy on Write means all or nothing is written to disk.  Self healing using copies > supports Snapshots > SSD aware > Supports TRIM wear levelling block discard > Max filelength name is 255 > Max file size is 8 EB (Linux kernel limit) > Max volume size is 16 TB > Clones supported > Compression > Deduplication > Integrated LVM

Future plans include: In-Band Deduplication, improved on/offline filesystem checks, encryption, swap partitions, incremental backups.

Negatives: Relatively new, not tried and tested > features lead to minor performance penalties.  No Meta-data journaling > no Encryption

4. XFS

64 bit Journaling system > Stable > Handles large filesystems > Max file size is 8 EB (Linux kernel limit) > Max volume size is 16 EB > max filename length is 255 > Delayed Allocation > Meta-data journaling.

Negatives: No Snapshots, no encryption, no compression, no deduplication.

 

Comparison:

An SSD disk has a greater influence on I/O performance than filesystem selection.

This is little performance gain between the filesystems – they all perform well.

The latest features such as volume management, RAID integration, snapshots and self healing would lead to Btrfs.

Very large filesystems which require rock solid stability would tend towards XFS.

Ext4 is a balanced compromise, that excels at meta-data operations.

5 Comments
  1. This will help with my final project 🙂

    Like

    • Yay!
      I’m so pleased!!
      There is an article that I have with further comparisons.. it’s amazing, and will definitely earn you a point or two in your dissertation 🙂 So we earn the little points.. and suddenly the FIRST appears 🙂

      Like

  2. In Btrfs you have written. Max file size is 8 EB (Linux kernel limit) > Max volume size is 16 TB.
    How’s that? Please explain.

    Like

Leave a comment