¿Tiene sentido ZFS como almacenamiento local?

¿Tiene sentido ZFS como almacenamiento local?

Estaba leyendo sobre ZFS y por un momento pensé en usarlo en mi computadora, pero después de leer sobre sus requisitos de memoria lo pensé dos veces.

¿Tiene sentido utilizar ZFS como almacenamiento local o esto tiene más sentido para los servidores utilizados como almacenamiento? (Incluso para servidores con otros usos parece una exageración).

Respuesta1

ZFS no tiene requisitos de memoria particularmente altos.

Como se señala en los comentarios,ciertas característicasde ZFS (particularmente la deduplicación, pero también L2ARC) requieren una cierta cantidad de memoria para ser útiles.

Sin embargo, estas funciones no son las que probablemente utilizará a menos que tenga un caso de uso particular que implique su uso.

ZFS con su ARC de primera capa(Caché de reemplazo adaptativo) no consume mucha más memoria que cualquier otro sistema de archivos y caché. debido al usoARCOen lugar de por ejemplo unMenos usado recientementealgoritmo de caché, en algunas cargas de trabajo es capaz de hacer un uso más eficiente de la RAM de caché disponible.

¿Qué ZFS?hacerequerires RAM ECC. Esto es omnipresente en los servidores, pero rara vez se encuentra en los sistemas personales (muchas CPU Intel de gama baja ni siquiera admiten RAM ECC). Este requisito surge de las propiedades de autocuración de ZFS, porqueLos problemas de RAM pueden potencialmente destruir sus datosal ejecutar ZFS. No hay ningún código para verificar esto en ZFS, probablemente en parte porqueParece que no hay una forma 100% segura de diferenciarlo del software.si el sistema utiliza RAM ECC.

Que ZFS tenga sentido depende de lo que esté intentando hacer, de la misma manera que si NTFS tiene sentido también depende de lo que esté intentando hacer. Sin embargo, ZFS ofrece varias características que pocos o ningún otro sistema de archivos ofrecen y que pueden resultar muy útiles en determinados escenarios.Algunode estos son:

  • Integridad de datos garantizada de extremo a extremo. Sabrá con certeza que si una lectura en particular tiene éxito, devolvió los mismos datos que se escribieron originalmente en esa ubicación. Esto significa que no existe la corrupción silenciosa de datos; O recuperas tus datos o obtienes un error de E/S.
  • Redundancia y creación de bandas que tienen en cuenta el sistema de archivos. Los controladores RAID normales tratan todo el dispositivo de almacenamiento como solo un gran grupo de bloques, sin ningún conocimiento de ninguna estructura de datos en el disco. Debido a que ZFS combina la gestión de volúmenes y el sistema de archivos, es capaz de tomar decisiones más inteligentes ante los errores. También tiene un régimen de recuperación de "los más importantes primero", lo que significa que los datos que son críticos para el funcionamiento del sistema de archivos se recuperan primero después de una falla, y los datos menos críticos tienen que esperar, independientemente de en qué parte del disco se encuentren los datos. almacenado.
  • Almacenamiento en caché por niveles. Por ejemplo, puede tener una RAM ARC, complementada con un rápido SSD L2ARC, con la mayor parte del almacenamiento de datos en discos duros rotativos. Para cargas de trabajo donde el conjunto de datos de trabajo se puede estimar con un grado razonable de precisión, esto puede proporcionar enormes mejoras en el rendimiento de E/S a un costo relativamente bajo y ciertamente sin necesidad de utilizar SSD.
  • Sistemas de archivos prácticamente gratuitos. Con ZFS, crear un "sistema de archivos" es un poco diferente de crear un directorio en la mayoría de los sistemas de archivos contemporáneos. Los sistemas de archivos pueden tener diferentes cuotas, tanto máximas como garantizadas. Por esta razón, con ZFS, a menudo se recomienda utilizar sistemas de archivos como límites administrativos; por ejemplo, en un servidor grande, el directorio de inicio de cada usuario podría ser su propio sistema de archivos. Esto aísla partes del árbol de directorios entre sí sin la sobrecarga que implica la creación de particiones regulares y sistemas de archivos separados. Utilizo sistemas de archivos para separar, por ejemplo, mis archivos de correo electrónico por año o fotografías por mes.
  • Instantáneas prácticamente gratuitas. No sé cuántas veces el hecho de haber podido volver al aspecto de un archivo unas horas antes me ha salvado de algún error vergonzoso. Las copias de seguridad brindan una capacidad similar (y aún son necesarias, porqueninguna cantidad de RAID es una copia de seguridad), pero las instantáneas están mucho más disponibles. En ZFS, una instantánea en sí requiere sólo unos pocos kilobytes de almacenamiento de metadatos, independientemente de la cantidad de datos en el sistema de archivos relevante, y no tiene un costo de rendimiento significativo.

No es necesario utilizar ninguno de estos sólo porque utiliza ZFS.Pero están ahí, generalmente a solo un comando de distancia si desea habilitarlos.

Ahora bien, ¿son estos "exagerados"?Eso realmente depende mucho de lo que estés intentando hacer.Ejecuto ZFS (con ECC RAM) en el sistema de mi hogar. En su mayor parte, ha estado funcionando silenciosamente, sin hacer más ruido que cualquier otro sistema de archivos (y probablemente menos), pero en realidad me ha salvado de la corrupción de datos al menos una vez (una limpieza encontró un puñado de sectores que estaban mostrando problemas, yreparó los datos de forma automática y silenciosasin necesidad de intervención mía). Personalmente, creo queGuardé esos datos por una razón,y esa razón es muy probable que quiera referirme a los datos más adelante. Considere ahora queel universo odia tus datos.

Con tamaños de almacenamiento cada vez mayores y tasas de error de bits esencialmente constantes (por clase de medio), los errores de E/S no serán menos comunes. En cuanto a mi revendedor preferido, tanto Seagate como HGST ofrecen discos duros de 8 TB a precios altos pero no extremos, y ciertamente al alcance de las personas. Eso es aproximadamente 6,4 × 10 ^ 13 bits. Con una tasa de error de 10^-14 bits,incluso un único pase de lectura multimedia completoesestadísticamente muy probableencontrar un problema de E/S que hace ilegible un sector completo (4 KiB). (Para cuando alcancemos los discos duros de 10 TB, estadísticamenteuna sola lectura de disco completo encontrará al menos un sector ilegible.) Se han realizado estudios que demuestran queno detectadoLos errores de lectura ocurren con mucha más frecuencia de lo que queremos admitir, lo que desanima el esfuerzo de los fabricantes de HDD por mejorar los algoritmos ECC en el disco, aunque no tengo un enlace disponible. Los sistemas de archivos contemporáneos como NTFS, ext4, UFS+, HFS+, etc. simplemente no están preparados para manejar tal situación.

Ese es el nicho que los sistemas de archivos como ZFS y Btrfs pretenden llenar.

información relacionada