XFS vs ext4-Leistung [geschlossen]

geschlossen . Diese Frage ist meinungsbasiert . Derzeit werden keine Antworten akzeptiert.

Kommentare

  • Dateisysteme ändern sich … Kernel-Scheduler ändern sich … Speicher selbst ändert sich. Unterschiedliche Anwendungen haben unterschiedliche Anforderungen. Es hängt alles von zu vielen Variablen ab, um sie zu zählen, und Leistung ist nicht alles – Sie müssen auch in der Lage sein, ihr zu vertrauen und zu wissen, wie man damit umgeht, wenn die Dinge nach Süden gehen. Am Ende müssen Sie Ihre eigenen Benchmarks erstellen und Ihre eigene Wahl treffen …
  • Alles, was Sie gesagt haben, ist konsistent, es gibt keine Widersprüche. Sie müssen jedoch Ihre Arbeitsbelastung testen. Optimierungsannahmen verlangsamen häufig ein System. Immer messen.
  • EXT4 belegt im Vergleich zu XFS auch einen bestimmten Speicherplatz für Inodes. Und wie Frostschutz sagte … alles ändert sich mit der Zeit. Als BTRFS auf den Markt kam, sollte es ein fantastischer FS sein, aber es sieht so aus, als hätten sich die Dinge geändert.
  • Ich ' habe nur eine gute Leistung von XFS gesehen, beide in Benchmarks und in der Praxis. Ich bezweifle, dass es Benchmarks gibt, die etwas anderes anzeigen (für neuere Versionen von XFS). Spezialisierte Dateisysteme schlagen XFS möglicherweise für spezielle Aufgaben, aber XFS sollte eine Leistung aufweisen, die mit den anderen performanten Dateisystemen vergleichbar ist.

Antwort

In einer früheren XFS-Frage / Antwort wurde diese Seite erwähnt: So wählen Sie Ihr Red Hat Enterprise Linux-Dateisystem aus . Ich denke, es wird Ihre Frage zur Leistung beantworten :-). Dies ist aus der offiziellen Red Hat Knowledgebase. Es wäre unangemessen, die gesamte Seite zu kopieren. Hier ein Vorgeschmack:

Eine andere Möglichkeit, dies zu charakterisieren, besteht darin, dass die Ext4-Dateisystemvarianten auf Systemen mit eingeschränkter E / A-Fähigkeit tendenziell eine bessere Leistung erzielen. Ext3 und Ext4 bieten eine bessere Leistung bei begrenzter Bandbreite (< 200 MB / s) und bis zu ~ 1.000 IOPS-Funktionen. Für alles mit höheren Fähigkeiten ist XFS tendenziell schneller. XFS verbraucht im Vergleich zu Ext3 und Ext4 etwa doppelt so viel CPU pro Metadaten. Wenn Sie also eine CPU-gebundene Arbeitslast mit geringer Parallelität haben, sind die Ext3- oder Ext4-Varianten schneller. Im Allgemeinen ist Ext3 oder Ext4 besser, wenn eine Anwendung einen einzelnen Lese- / Schreibthread und kleine Dateien verwendet, während XFS leuchtet, wenn eine Anwendung mehrere Lese- / Schreibthreads und größere Dateien verwendet.

Vorherige Antwort

Hier ist eine frühere Version dieser Antwort. Ich habe es angepasst und erweitert, um den Kontext bereitzustellen und die obige Quelle zu bestätigen. Es ist nicht alles wesentliche Lektüre.


Es ist nicht sinnvoll, XFS zu vermeiden, weil es alt ist. Es gibt viele Ähnlichkeiten zwischen XFS und ext2 / ext3 / ext4, einschließlich ihrer langen und aktiven Lebensdauer.

XFS ist das wichtigste unterstützte Dateisystem für RedHat Enterprise Linux. Es wurden große Anstrengungen unternommen, um XFS im Laufe der Zeit zu entwickeln, insbesondere von RHEL. Die schiere Anzahl neuer und erweiterter Funktionen ist in XFS höher :-). Siehe z. Unterstützung für „Reflink“.

„Desktop Linux“ -Installationen, die auch auf moderne Laptops abzielen, verwenden im Allgemeinen immer noch ext4. ext4 bietet eine sehr vertraute und bekannte Umgebung.

Auf einem durchschnittlichen Desktop-PC gelten die Vorteile von XFS nicht unbedingt. ext4 kann Vorteile haben, einschließlich Leistungsvorteile. Wenn Sie die obigen Zahlen zum Nennwert nehmen, deuten sie darauf hin, dass XFS auf schnellen modernen Laptops einen Vorteil haben könnte!

Derzeit wird der ext4-Betreuer von Google eingesetzt. ext4 wird in Googles Android-Betriebssystem verwendet. Daher wird ext4 in vielen Telefonen und Tablets verwendet, die über weniger leistungsstarke Hardware verfügen. [1] [2]

Ich finde ext4 auch praktisch, weil Sie die Dateisystempartitionen verkleinern können. Dies ist möglicherweise nützlich, wenn Sie den von verschiedenen Installationen verwendeten Speicherplatz verwalten möchten Eine einzelne Festplatte. XFS unterstützt das Verkleinern nicht, sondern wächst nur. (Im Prinzip kann dies innerhalb von LVM mithilfe von „Thin Provisioning“ behoben werden. Siehe Stratis Storage, das XFS zusammen mit Thin Provisioning verwendet. Möglicherweise wird Stratis dies in Zukunft tun Aus, und alle Distributionen können auf Stratis installiert werden.

In einigen Fällen wurde das ext4-Design als alt und chaotisch beschrieben. XFS hat hier eindeutig etwas besser verwaltet: Einfaches Kopieren (oder Schreiben) von Dateien verursacht eine Latenz von zehn Sekunden + im Linux-Dateisystem . UPDATE: Dieser Link erwähnt jetzt Patches, die zur Verbesserung von ext4 hier eingereicht wurden, wahrscheinlich für v5. 3 des Linux-Kernels. Und es könnte auch in Zukunft erhebliche Verbesserungen geben.

XFS „Leistung kleiner Dateien“

Die XFS-Leistung beim Umgang mit vielen kleinen Dateien war ursprünglich eine große Schwachstelle im Vergleich zu anderen Dateisystemen. Im Laufe der Zeit wurden Verbesserungen vorgenommen.

Eine große Änderung, die Sie beachten sollten, ist die verzögerte Protokollierung, irgendwann zwischen 2010 und 2012. Das heißt, Falls Sie Leistungsvergleiche für kleine Dateien sehen, die vor dieser Funktion erstellt wurden, sind diese nicht mehr relevant. Das verzögerte Protokollierungsdesign basierte stark auf der ext3-Protokollierung :-). Trotzdem gab es in verschiedenen Fällen immer noch Leistungsunterschiede zwischen den beiden. Siehe: https://lwn.net/Articles/476263/

(Zuvor wurde anscheinend „das Protokollformat der Version 2 im Jahr 2002 hinzugefügt, wodurch die Leistung von Metadaten erheblich verbessert wurde“. Dies hilft jedoch wahrscheinlich nicht bei der Beantwortung dieser Frage :-).

Seitdem gibt es einige weitere Änderungen. Z.B. Das Red Hat-Dokument spiegelt möglicherweise nicht alle neuesten Änderungen wider. Ich habe dieses Zitat bemerkt:

[…] freie Inode B + -Bäume (finobt) für eine bessere Leistung auf „gealterten“ Dateisystemen, und Dateitypen sind jetzt Standardmäßig im Verzeichnis gespeichert (ftype = 1), wodurch die Leistung in bestimmten Szenarien mit vielen (normalerweise kleinen) Dateien erheblich verbessert wird.

– Kommentar zu Was ist das leistungsstärkste Linux-Dateisystem zum Speichern vieler kleiner Dateien (Festplatte, nicht SSD)?

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.