Warum wird ext4 nur bis zu 16 TB empfohlen?

28

In dem Artikel im ext4-Wiki habe ich gesehen, dass ext4 bis zu 1 EiB verwendet werden kann, aber nur bis zu 16 TiB empfohlen werden. Warum ist das so? Warum wird XFS für größere Dateisysteme empfohlen?

(ELICS: Erkläre mir, wie ich ein CS-Student bin, aber ohne viel Wissen in Dateisystemen)

Martin Thoma
quelle
Wenn Sie mit großen Datenmengen arbeiten, ist das Zetabyte-Dateisystem möglicherweise einen Blick wert: en.wikipedia.org/wiki/ZFS : þ
Mioriin
16 TB ist die maximale Anzahl von 4096-Byte-Blöcken, die mit einem 32-Bit-Zähler berücksichtigt werden können. Es scheint, als gäbe es ein 64-Bit-Problem mit ext4. XFS ist seit den Anfängen von SGI vollständig 64-Bit-fähig.
Andrew Henle
@Andrew, das ext4-Limit liegt derzeit bei 48 Bit. Obwohl es sich um ein 64-Bit-Problem handelt, ist es nicht ganz so schlimm wie ein Limit von 32 Bit.
Stephen Kitt
1
Ja, auf der Wikipedia-Seite stehen 100 TB im Text und 16 TB in der Seitenleiste. Die Verweise auf das erste stammen von einem alten Red Hat und dem offensichtlich veralteten Ext4_Howto (das in den letzten 4,1 Jahren 5 Updates hatte). Vielleicht sollte jemand, der sich für das Thema interessiert, nach neueren Quellen suchen und die Seite aktualisieren? :)
ilkkachu

Antworten:

37

Das genaue Zitat aus dem Wikipedia-Eintrag ext4 ist

Red Hat empfiehlt jedoch die Verwendung von XFS anstelle von ext4 für Volumes mit mehr als 100 TB.

Das ext4-Howto erwähnt das

Der Code zum Erstellen von Dateisystemen mit mehr als 16 TiB ist zum Zeitpunkt des Schreibens dieses Artikels in keiner stabilen Version von e2fsprogs enthalten. Es wird in zukünftigen Versionen sein.

Dies wäre ein Grund, Dateisysteme mit mehr als 16 TiB zu vermeiden, aber dieser Hinweis ist veraltet: e2fsprogsSeit Version 1.42 (November 2011) können Dateisysteme mit mehr als 16 TiB durchaus erstellt und verarbeitet werden. mke2fsverwendet die bigund huge-Typen für solche Systeme (tatsächlich bigzwischen 4 und 16 TiB, hugedarüber hinaus); Diese erhöhen das Inode-Verhältnis, sodass weniger Inodes bereitgestellt werden.

Zurückkommend auf die Red Hat Empfehlung, wie von RHEL 7.3 , XFS ist das Standard - Dateisystem unterstützt bis zu 500 TiB und ext4 wird nur unterstützt bis 50 TiB auf. Ich denke, dies ist eher vertraglich als technisch, obwohl der Storage Administration Guide die Grenzen auf technische Weise formuliert (ohne auf Details einzugehen). Ich stelle mir vor, es gibt technische oder Leistungsgründe für die 50-TiB-Grenze ...

Die e2fsprogsVersionshinweise geben einen Grund, Dateisysteme mit mehr als 16 TiB zu vermeiden: Anscheinend muss die resize_inodeFunktion auf Dateisystemen mit mehr als 16 TiB deaktiviert werden.

Stephen Kitt
quelle
Was lässt Sie glauben, dass Gründe für die Verwendung von xfs über ext4 vertraglich sind?
HSchmale
5
@HSchmale Ich meine nicht, dass es vertragliche Gründe für die Verwendung von XFS über ext4 gibt. Ich meine, wenn Red Hat angibt, dass XFS bis 500 TiB und ext4 bis 50 TiB unterstützt werden, dann sind damit vertragliche Aspekte verbunden, dh Kunden können Support anfordern bis zu diesen Größen, aber darüber hinaus hätte Red Hat keine vertragliche Verpflichtung, wie ich es verstehe. (Beachten Sie, dass ich für Red Hat arbeite, aber nur für mich selbst spreche.)
Stephen Kitt