Pourquoi ext4 n'est-il recommandé que jusqu'à 16 To?

28

Dans l' article wiki d'ext4, j'ai vu qu'ext4 peut être utilisé jusqu'à 1 EiB, mais n'est recommandé que jusqu'à 16 TiB. Pourquoi est-ce le cas? Pourquoi XFS est-il recommandé pour les systèmes de fichiers plus volumineux?

(ELICS: Expliquez-moi comme si j'étais un étudiant CS, mais sans beaucoup de connaissances dans les systèmes de fichiers)

Martin Thoma
la source
Voir aussi: Qu'est
Martin Thoma
Si vous travaillez avec d'énormes ensembles de données, le système de fichiers Zetabyte pourrait valoir le coup d'œil: en.wikipedia.org/wiki/ZFS : þ
Mioriin
16 To est le nombre maximum de blocs de 4096 octets pouvant être pris en compte avec un compteur 32 bits. Il semble qu'il y ait un problème 64 bits avec ext4. XFS est entièrement compatible 64 bits depuis ses débuts SGI.
Andrew Henle
@Andrew, la limite ext4 est actuellement de 48 bits, donc bien qu'il y ait toujours un problème de 64 bits, ce n'est pas aussi mauvais que d'être limité à 32 bits.
Stephen Kitt
1
Oui, la page wikipedia indique 100 To dans le texte et 16 To dans la barre latérale, les références au premier sont d'un ancien Red Hat et du Ext4_Howto évidemment obsolète (qui a eu 5 mises à jour au cours des 4,1 dernières années). Peut-être que quelqu'un intéressé par le sujet devrait aller chercher de nouvelles sources et mettre à jour la page? :)
ilkkachu

Réponses:

37

La citation exacte de l'entrée Wikipedia ext4 est

Cependant, Red Hat recommande d'utiliser XFS au lieu d'ext4 pour les volumes supérieurs à 100 To.

Le howto ext4 mentionne que

Le code pour créer des systèmes de fichiers supérieurs à 16 TiB n'est, au moment de la rédaction de cet article, dans aucune version stable d'e2fsprogs. Ce sera dans les prochaines versions.

ce qui serait une raison d'éviter les systèmes de fichiers supérieurs à 16 TiB, mais cette remarque est dépassée: e2fsprogsdepuis la version 1.42 (novembre 2011) est tout à fait capable de créer et de traiter des systèmes de fichiers supérieurs à 16 TiB. mke2fsutilise les types biget hugepour ces systèmes (en fait, bigentre 4 et 16 TiB, hugeau - delà); ceux-ci augmentent le rapport des inodes de sorte que moins d'inodes soient provisionnés.

Pour revenir à la recommandation Red Hat, à partir de RHEL 7.3 , XFS est le système de fichiers par défaut, pris en charge jusqu'à 500 TiB, et ext4 n'est pris en charge que jusqu'à 50 TiB. Je pense que c'est contractuel plutôt que technique, bien que le Storage Administration Guide formule les limites de manière technique (sans entrer dans les détails). J'imagine qu'il y a des raisons techniques ou de performance pour la limite de 50 TiB ...

Les e2fsprogsnotes de version donnent une raison d'éviter les systèmes de fichiers supérieurs à 16 TiB: apparemment, la resize_inodefonctionnalité doit être désactivée sur les systèmes de fichiers supérieurs à celui-ci.

Stephen Kitt
la source
Qu'est-ce qui vous fait croire que les raisons d'utiliser xfs sur ext4 sont contractuelles?
HSchmale
5
@HSchmale Je ne veux pas dire qu'il existe des raisons contractuelles d'utiliser XFS sur ext4, je veux dire que lorsque Red Hat dit qu'ils prennent en charge XFS jusqu'à 500 TiB et ext4 jusqu'à 50 TiB, cette prise en charge implique des aspects contractuels, c'est-à - dire que les clients peuvent demander une assistance jusqu'à ces tailles, mais au-delà, Red Hat n'aurait aucune obligation contractuelle si je comprends bien. (Notez que je travaille pour Red Hat, mais je ne parle que pour moi.)
Stephen Kitt