Dateisystem-Benchmark: ext2, ext3, ext4, xfs, jfs, reiserfs, btrfs und ntfs-3g im Vergleich

1 April 2010 Kein Kommentar Autor: Jürgen (jdo)

Seit das Dateisystem ext4 im Dezember 2008 Einzug in den Linux-Kernel 2.6.28 gehalten hat, setzen es immer mehr Linux-Distributionen als Standard ein. Für Linux gibt es eine ganz ordentliche Auswahl an Dateisystemen. Aber auf welches sollte man setzen? Eine Möglichkeit ist natürlich den Distributoren zu vertrauen – die werden schon wissen, was sie uns anbieten. Vertrauen ist gut, Kontrolle ist besser. Wollen wir uns das Ganze an Hand eines Benchmarktests mal genauer ansehen. Unter die Lupe genommen wurden die stabilen Dateisysteme ext2, ext3, ext4, xfs, und jfs.

Zusätzlich wurden btrfs und ntfs via ntfs-3g aufgenommen. Diesen beiden laufen aber außerhalb der Konkurrenz. Btrfs soll irgendwann ext4 ablösen und befindet sich in einem frühen Entwicklungs-Stadium. Es ist alles andere als ratsam, dieses Dateisystem für produktive System einzusetzen. Ntfs-3g setzt auf Fuse auf, gilt als stabil und bietet Zugang zum Windows-Dateisystem ntfs. Auf einem Linux-Server wird niemand ntfs einsetzen. Im Privatgebrauch gibt es jedoch häufig Dual-Boot-Konfigurationen zwischen Linux und Windows. Manchmal möchte man eben von Linux auf gewisse Daten der Windows-Partition zugreifen. Dies ist in den meisten Fällen mit ntfs-3g problemlos möglich. Aber ist es wirklich performant?

Wie haben wir gebenchmarkt?

Der Benchmark wurde mit der Phoronix Test Suite 2.0.0 durchgeführt. Als Betriebssystem diente eine jungfräuliche Installation von Ubuntu 9.10 „Karmic Koala“ (32-bit) ohne das Einspielen jeglicher Updates. Als Kernel diente somit 2.6.31. Der Test wurde auf folgender Hardware durchgeführt: Intel Core 2 Duo E8400@3.00GHz, MSI LTD MS-7345 (Chipsatz: P35 + ICH9R), 3 Gbyte RAM und 750 Gbyte Samsung HD753LJ.

Benchmarktests sind nicht unumstritten. Gewisse Tuning-Praktiken können zwar die Leistung einzelner Komponenten erhöhen, aber auch die Ergebnisse verfälschen. In diesem Test wurden keine leistungssteigernden Mittel verwendet. Sie spiegeln also wieder, was ein Anwender nach einer Standard-Installation dieser Linux-Variante erhalten würde. Andere Linux-Distributionen könnten natürlich andere Ergebnisse liefern. Das gilt ebenso für alternative Hardware.

Lesen mit IOzone

IOzone Lesetest (zum Vergrößern klicken)

IOzone Lesetest (zum Vergrößern klicken)

Im ersten Test wurden alle Dateisysteme einem Lesetest einer Datei mit vier Gbyte Größe mittels IOzone unterzogen. Die Speerspitze bildet das Dateisystem ext4. Als einziges schaffte es mehr als 70 Mbyte pro Sekunde. Aber auch der mögliche Nachfolger btrfs macht hier schon einen guten Eindruck. Das Dateisystem ext2 ebenfalls ein exzellentes Ergebniss auf. Es ist aber auch das einzige in der Testreihe, das kein Journal mit sich bringt. Dies ist ein nicht zu unterschätzender Nachteil. Auch das über Fuse eingebundene ntfs-3g kommt ganz gut hinterher. Es hat sogar eine höhere Performance als das native reiserfs. IOzone wurde drei mal durchgeführt und die Grafik zeigt einen Mittelwert.

Schreiben mit IOzone

IOzone Schreibtest (zum Vergrößern klicken)

IOzone Schreibtest (zum Vergrößern klicken)

Wie sieht es nun mit dem Schreibzugriff aus? Ebenfalls wurde mit IOzone und einer vier Gbyte großen Datei getestet. Hier zeigen sich nun ganz klar die Nachteile von ntfs-3g. Im Lesen noch ganz gut, beim Schreiben unterirdisch langsam. Es ist fast fünf Mal so langsam als der Gewinner – abermals ext4. Auch xfs und ext3 können sich im Schreibtest ganz gut behaupten. IOzone wurde drei mal durchgeführt und die Grafik zeigt einen Mittelwert.

PostgreSQL-Benchmark pgbench

pgbench (zum Vergrößern klicken)

pgbench (zum Vergrößern klicken)

Im PostgreSQL-Benchmark zeigt reiserfs die Muskeln und liegt knapp vor ext4. Warum xfs und btrfs hier komplett versagten, ist nicht ganz klar. Für diese beiden Dateisysteme lief der Test anstatt drei sogar sieben mal durch. Es kamen aber immer ähnliche Werte raus. Im Durchschnitt schaffte xfs nur 48,22 Transaktionen pro Sekunde und btrfs 22,81.

MP3-Encoding

MP3-Encoding (zum Vergrößern klicken)

MP3-Encoding (zum Vergrößern klicken)

Im letzten Test haben wir eine 75 Mbyte große WAV-Datei in das MP3-Format mittels lame umgewandelt. Wie zu erwarten ist das Dateisystem bei Aktionen wie diesen völlig irrelevant. Hier ist zum Großteil die CPU gefragt. Die minimalen Unterschiede darf man getrost vernachlässigen.

Fazit:

Für die meisten Anwender dürfte im Moment das Dateisystem ext4 die richtige Wahl sein. Das sich derzeit in der Entwicklung befindliche btrfs sieht allerdings schon recht vielversprechend aus. Btrfs-Systeme lassen sich übrigens aus ext-Partition mittels btrfs-convert /dev/hdX erzeugen. Es sei allerdings an dieser Stelle noch mal ausdrücklich gewarnt, dass es sich nicht für produktive Systeme eignet. Datenverlust ist nicht auszuschließen. Ntfs-3g sollte man wirklich nur einsetzen, wenn man ein Dual-System hat und auf die Windows-Partition zugreifen möchte. Davon Lesen – ja. Festplatten-intensive Anwendungen darüber laufen lassen – wenn man Zeit hat. Warum Reiser4 im Test nicht auftaucht? Es wird vom Linux-Kernel bis heute nicht offiziell unterstützt. Auch die Weiterentwicklung des Dateisystems steht in den Sternen.

Du kannst gerne Deinen Senf zu diesem Beitrag geben: Hier geht es zu den Kommentaren




Schreiben macht durstig! Eine kleine Erfrischung kann daher nie schaden. Wem dieser freie Artikel gefallen hat, der darf mir gerne einen frisch gezapften Hopfen-Tee ausgeben (Paypal - der Spenden-Knopf
oder bitcoin - Adresse: 1NacVNwcLLePUVv8uSafu5Ykdwh8QyDfgK). Ich freue mich über jede noch so kleine Spende. Vielen Dank und Prost!
 Alle Kommentare als Feed abonnieren

Antworten