¿Por qué se recomienda ext4 solo hasta 16 TB?

28

En el artículo wiki de ext4 , he visto que ext4 se puede usar hasta 1 EiB, pero solo se recomienda hasta 16 TiB. ¿Por qué es ese el caso? ¿Por qué se recomienda XFS para sistemas de archivos más grandes?

(ELICS: Explícame como si fuera un estudiante de CS, pero sin mucho conocimiento en sistemas de archivos)

Martin Thoma
fuente
Consulte también: ¿Qué limita la cantidad de unidades en RAID?
Martin Thoma
Si está trabajando con grandes conjuntos de datos, el sistema de archivos Zetabyte podría ser algo que vale la pena ver: en.wikipedia.org/wiki/ZFS : þ
Mioriin
16 TB es el número máximo de bloques de 4096 bytes que se pueden contabilizar con un contador de 32 bits. Parece que hay una preocupación de 64 bits con ext4. XFS ha sido totalmente capaz de 64 bits desde sus primeros días de SGI.
Andrew Henle
@Andrew el límite ext4 es actualmente de 48 bits, por lo que aunque todavía existe una preocupación de 64 bits, no es tan malo como estar limitado a 32 bits.
Stephen Kitt
1
Sí, la página de Wikipedia dice 100 TB en el texto y 16 TB en la barra lateral, las referencias al primero son de un viejo Red Hat y el Ext4_Howto obviamente obsoleto (que ha tenido 5 actualizaciones en los últimos 4.1 años). ¿Quizás alguien interesado en el tema debería buscar algunas fuentes más nuevas y actualizar la página? :)
ilkkachu

Respuestas:

37

La cita exacta de la entrada de Wikipedia ext4 es

Sin embargo, Red Hat recomienda usar XFS en lugar de ext4 para volúmenes mayores de 100 TB.

El cómo ext4 menciona que

El código para crear sistemas de archivos de más de 16 TiB es, al momento de escribir este artículo, no en ninguna versión estable de e2fsprogs. Será en futuras versiones.

lo cual sería una razón para evitar sistemas de archivos de más de 16 TiB, pero esa nota está desactualizada: e2fsprogsdado que la versión 1.42 (noviembre de 2011) es bastante capaz de crear y procesar sistemas de archivos de más de 16 TiB. mke2fsusa los tipos bigy hugepara tales sistemas (en realidad, bigentre 4 y 16 TiB, hugemás allá); estos aumentan la relación de inodo para que se aprovisionen menos inodos.

Volviendo a la recomendación de Red Hat, a partir de RHEL 7.3 , XFS es el sistema de archivos predeterminado, compatible con hasta 500 TiB, y ext4 solo es compatible con hasta 50 TiB. Creo que esto es contractual en lugar de técnico, aunque la Guía de administración de almacenamiento establece los límites de manera técnica (sin entrar en muchos detalles). Me imagino que son razones técnicas o de funcionamiento para el límite de 50 TiB ...

Las e2fsprogsnotas de la versión dan una razón para evitar sistemas de archivos de más de 16 TiB: aparentemente, la resize_inodefunción tiene que estar deshabilitada en sistemas de archivos de más de esto.

Stephen Kitt
fuente
¿Qué te lleva a creer que las razones para usar xfs sobre ext4 son contractuales?
HSchmale
55
@HSchmale No quiero decir que haya razones contractuales para usar XFS sobre ext4, quiero decir que cuando Red Hat dice que admiten XFS hasta 500 TiB y ext4 hasta 50 TiB, ese soporte involucra aspectos contractuales, es decir , los clientes pueden exigir soporte hasta esos tamaños, pero más allá de eso Red Hat no tendría ninguna obligación contractual como yo lo entiendo. (Tenga en cuenta que trabajo para Red Hat, pero hablo solo por mí mismo.)
Stephen Kitt