Login
Newsletter
Werbung

Mo, 23. Januar 2012, 09:04

Software::Systemverwaltung

XFS greift nach Dateisystem-Krone

Im kommenden Linux 3.3 wird nach zahlreichen Optimierungen auch der »Delayed Logging«-Journal-Modus für XFS eingeführt, wodurch die Engpässe beim Schreiben von Metadaten beseitigt werden.

Das neue XFS im Vergleich

Dave Chinner

Das neue XFS im Vergleich

XFS ist ein Hochleistungs-Dateisystem, das von SGI entwickelt wurde und oft auf Servern, aber auch bei ambitionierten Benutzern zum Einsatz kommt. Die Vorzüge von XFS liegen zum einen in der hohen Lese- und Schreibgeschwindigkeit, aber auch darin, dass das Dateisystem keinen Check benötigt und eine Online-Vergrößerung äußerst schnell ist. Der Schwachpunkt von XFS war bisher das Schreiben von Metadaten, wie sie beispielsweise beim Anlegen und Löschen von Dateien anfallen. Hier war XFS bisher kaum über eine einzelne CPU hinaus skalierbar und diese Operationen waren extrem ineffizient. Selbst bei optimalen Einstellungen wurde nur die halbe Geschwindigkeit beim Anlegen von Dateien wie bei ext4 erreicht; manche Operationen waren 20-50-mal langsamer als bei ext4.

Als Ursache wurde mittlerweile das Schreiben ins Journal erkannt, das im schlimmsten Fall fast den gesamten Traffic zur Festplatte ausmachte. Nun konnte Dateisystem-Entwickler Dave Chinner in einem Vortrag auf der linux.conf.au verkünden, dass nach diversen Algorithmenänderungen das Problem wohl gelöst ist. Im kommenden Linux-Kernel 3.3 wird der Journal-Modus auf »Delayed Logging« geändert, und dieser Modus wird der einzige angebotene sein. Es werden keine Änderungen an bestehenden Dateisystemen nötig sein, um in den Genuss der Optimierungen zu kommen. Neben dem »Delayed Logging« wurden in den letzten Monaten aber noch viele weitere Optimierungen vorgenommen.

Das Ergebnis ist laut Chinner eine lineare Skalierbarkeit von XFS bis zu acht Threads; oberhalb dieser Marke werden Engpässe im Linux-VFS merklich, die noch behoben werden müssen. Bei bis zu vier Threads ist XFS noch etwas langsamer als ext4, doch ext4 bricht bei mehr als vier Threads ein. Noch schlechter skaliert allerdings btrfs. Die Allokierung von Platz ist um mehrere Größenordnungen schneller als bei ext4. Man kann ext4 zwar um zwei Größenordnungen beschleunigen, doch erfordert das große Blöcke, was mit einigen Nachteilen verbunden ist. ext4 arbeitet mit einer Architektur, die Dateisystemen der 80er-Jahre entspringt, und kann nach Meinung von Chinner nicht auf wirklich große Geräte skalieren. Auch in diesem Punkt ist btrfs noch langsamer, kann aber dank seiner moderneren Architektur noch optimiert werden.

Die weitere Optimierung von XFS setzt zunächst voraus, dass die VFS-Schicht von Linux weiter optimiert wird, woran bereits gearbeitet wird. In XFS selbst wird der Schwerpunkt in der nächsten Zeit auf Zuverlässigkeit liegen. Darunter ist zu verstehen, dass Dateisystem-Checks - die bei XFS normalerweise gar nicht nötig sind - im laufenden Betrieb stattfinden. Bei Dateisystemen im Petabyte-Bereich ist es nicht mehr akzeptabel, das System während eines Checks offline zu nehmen, zumal solch ein Check mit wachsender Datengröße immer länger dauert. Bei XFS will man das Erkennen von Problemen, die einen Check nötig machen, durch Korrektheitsprüfungen der Metadaten erreichen. Eine Prüfung der eigentlichen Daten soll nicht in XFS implementiert werden. Dies würde naturgemäß das System verlangsamen. Die Entwickler sind aber auch der Ansicht, dass solche Prüfungen besser in den Speicher-Arrays oder auf Anwendungsebene aufgehoben sind.

Der Einbau von Metadaten-Prüfungen in XFS wird eine Änderung des Dateisystemformats mit sich bringen. Laut Chinner wird das neue Format nicht mit dem alten kompatibel sein und es wird keine Werkzeuge zur Konvertierung geben.

Werbung
Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten
Werbung