viernes, 19 de febrero de 2016

Próxima Release de Ubuntu incluirá sistema de ficheros ZFS



 
La próxima distribución de Ubuntu 16.04 Xenial Xerox (como su versión indica, saldrá el 16 de Marzo) la sexta LTS (Long Term Support) contará con el sistema de archivos ZFS. Es una novedad con un impacto muy fuerte y una tecnología que tendrá repecursiones en la industria IT.

¿Qué es ZFS?

 El sistema de archivos ZFS viene del acrónimo Zetta-byte File System el cual fue desarrollado por la empresa Sun Microsystems, con la intención de ser utilizado en Solaris.

ZFS destaca por sobre los demás sistemas de archivos, en integrar los conceptos de sistemas de archivos y administrador de volumenes (que anteriormente se encontraban separados) y constante chequeo de integridad y reparación automática. Cabe notar que si bien un zettabyte equivale a 270 bytes, lo cual es lo suficientemente grande para todo propósito práctico, existe una unidad aún más grande, llamada yottabyte que equivale a 280 bytes.

Carácteristicas de ZFS

  • Integridad de datos comprobable: Esta característica permite que los datos en el archivo se mantengan siempre correctamente, siendo capaz de detectar datos corruptos y repararlo automáticamente. Esto se logra gracias a un modelo transaccional de archivos.
  • Modelo transaccional: Un modelo transaccional de archivos implica el almacenamiento de eventos o transacciones. Para esto se utiliza la técnica conocida como copy-on-write, de forma que cuando se modifican datos en el disco, estos no son sobreescritos, para lo que se crean nuevos bloques donde estos datos son grabados y luego se modifican las estructuras correspondientes para que apunten a estos nuevos bloques.
  • Snapshots: Los snapshots corresponden a copias del sistema de archivos en algún determinado momento. Son de creación muy rápida, permitiendo hacer respaldos o copias de seguridad de forma casi inmediata, con la salvedad que estas copias son de sólo lectura y la ventaja de no ser necesario software para crear imágenes del sistema.
  • Clones: De forma similar a los snapshots, los clones son copias del sistema de archivos en algún determinado momento, pero en los cuales se permite realizar escritura. Este sistema de archivos que se crea, comparte bloques en el disco con el original, con el fin de ahorrar espacio, pero se manejan de forma independiente.
  • Espacios de almacenamiento: ZFS hace uso de espacios de almacenamiento virtual (o virtual storage pool, o zpools), a diferencia de los sistemas de archivo tradicionales que se encuentran en un solo dispositivo y requieren un gestor de volumenes (ver figura). Un zpool se construye a partir de dispositivos virtuales (o conocidos como vdevs) que a su vez se construyen a partir de bloques de dispositivos (particiones de disco duro, o discos completos). Además, la capacidad de almacenamiento de todos los vdevs se encuentra disponible para todas las instancias del sistema de archivos en el zpool.  

  • Creación de sistemas de archivos livianos: Dado que la gestión de los sistemas de archivo es mucho más sencilla que en otros sistemas existentes, hace la tarea de creación de estos sistemas una operación muy ligera. Además, no existen cuotas de espacio por cada usuario, sino que existen cuotas por sistema de archivos, así se crean sistemas de archivos por cada usuario en vez de carpetas dentro de un mismo sistema de archivos.
  • Compresión: esto permite maximizar el espacio en el disco, removiendo los pequeños fragmentos de disco que no están siendo utilizados, y producto de esto, muchas veces maximizar la velocidad de lectura.