Archive for August, 2009

» Linux Filesystems

By ivc at 21:53, August 9, 2009

I’m trying out new filesystems for the drives going into the file-server. After relaying on ext3 for the last years, I’ve always wanted to figure out of there’s a better FS more suitable for storing large files.

The alternatives are XFS, ReiserFS, JFS, Ext3, and Ext4. Ext3 is excellent is an excellent system boot FS and for lots of smal files, but not as efficient for larger files.

Drive: Hitachi 7K1000.B 1TB via Promise SATA300 TX2plus PCI card (I know)
Software: Bonnie++ 1.03d harddrive benchmark, executed by bonnie++ -u 500:500

hdparm – for reference, shows the cache and disk read speeds
Test done using: hdparm -tT /dev/sda

  • Timing cached reads: 976 MB in 2.00 seconds = 487.76 MB/sec
  • Timing buffered disk reads: 294 MB in 3.02 seconds = 97.39 MB/sec

The test will first create then rewrite a 1GB file.

Ext3
Formatted using: mkfs.ext3 -j -c 1 /dev/sda1

  • Block write: 74 781 KB/s
  • Rewrite: 38 624 KB/s
  • IOPS: 209.7

XFS
Formatted using: mkfs.xfs -f /dev/sda1

  • Block write: 91 373 KB/s
  • Rewrite: 45 176 KB/s
  • IOPS: 212.2

XFS tuned
Formatted using: mkfs.xfs -f -l size=128m,lazy-count=1 /dev/sda1

  • Block write: 91 828 KB/s
  • Rewrite: 44 565 KB/s
  • IOPS: 215.9

ReiserFS3
Formatted using: mkfs.reiserfs /dev/sda1

  • Block write: 83 391 KB/s
  • Rewrite: 43 003 KB/s
  • IOPS: 225.0

JFS
Formatted using: mkfs.jfs /dev/sda1

  • Block write: 81 466 KB/s
  • Rewrite: 43 330 KB/s
  • IOPS: 234.0

The benchmarks look good, but they only tell a small part of the puzzle. It’s important to not to forget the stability and reliability record for each FS. How it will behave in a power failure and unexpected situations? From experience will ext3/4 perform great in these scenarios, XFS, ReiseFS, and JFS not so much according to forum reports.

More testing and experience is needed to figure out how these filesystems stack up.