ZEVO: ZFS retorna a Mac OS X de la mano de Ten’s Complement

30/01/2012 por Carlos Burges

TensComplementMedium.original_4mwuxxh3jek53e9s.jpgLa compañía Ten’s Complement LLC ha anunciado la disponibiliad de su implementación del formato de archivos ZFS a Mac OS X. Durante el desarrollo y versión beta del producto, su nombre ha sido Z-410 Storage pero la versión comercial y definitiva del producto se llama Zevo.

Zevo viene con un modelo de negocio de tres tipos de licencia que empiezan en los 19,95 dólares para la versión básica (silver) ya disponible, y una versión avanzada (gold) a 39,95 dólares (disponible durante el primer trimestre de este año) y una versión profesional (platinum) disponible en primavera de 2012. También anuncian una licencia para desarrolladores de la que todavía no hay detalles. Un problema de esta solución ZFS para Mac es que es imposible compartir volúmenes ZEVO vía AFP en Mac OS X 10.7.2 Lion, aunque el desarrollador está trabajando en una solución.

A pesar de que Apple hizo público en Octubre de 2007 un documento titulado ZFS on Mac OS X Preview 1.1 para los desarrolladores y en el que se indicaba que Leopard daría soporte oficial a ZFS restringido a solo-lectura y que los desarrolladores recibieron la última versión ZFS con acceso a lectura y escritura sobre este sistema de archivos en Leopard (incluyendo la posibilidad de crear y destruir ZFS pools y sistemas de archivos), todos los esfuerzos previos para incluir el soporte para el sistema de archivos ZFS en Mac OS X se desbarataron en Leopard y con el lanzamiento de Snow Leopard, incluso el soporte de lectura para este sistema de archivos fue abandonado.

Diferentes analistas especularon acerca de este abandono por parte de Apple, y apuntan a que el problema no está en la implementación técnica (aunque ZFS no es precisamente el sistema de archivos mas rápido del mundo e incluso puede considerarse como "lento") sino en problemas legales. Sun fue adquirido por Oracle y éste pudo ser uno de los puntos del abandono de Apple, concretamente, las demandas de Sun sobre las licencias.

ZFS es un sistema de ficheros libre, diseñado e implementado por un equipo de Sun liderado por Jeff Bonwick para su sistema operativo Solaris. El significado original era 'Zettabyte File System', pero ahora es un pseudoacrónimo.

El anuncio oficial de ZFS se produjo en Septiembre del 2004. El código fuente del producto final se integró en la rama principal de desarrollo de Solaris el 31 de octubre del 2005 y fue lanzado el 16 de noviembre de 2005 como parte del build 27 de OpenSolaris.

ZFS destaca por su gran capacidad, integración de los conceptos anteriormente separados de sistema de ficheros y administrador de volúmenes en un solo producto, nueva estructura sobre el disco, sistemas de archivos ligeros, y una administración de espacios de almacenamiento sencilla. (Wikipedia)

¿Qué nos ofrece ZFS?

Igual que pasar de números de 32 bits a números de 64 bits permitió pasar de 2GB de tamaño máximo a 16 mil millones de GB… ZFS utiliza números de 128 bits para los tamaños de sus archivos, de modo que estaríamos hablando de trillones —millones de millones de millones— de GB. Tantos, que se considera prácticamente imposible que exista ningún medio de almacenamiento que pueda ser mayor que lo que se puede gestionar con ZFS, porque el número de partículas del universo es inferior… y de algo habrá que hacer los discos duros ;-)

La capacidad de direccionar información de ZFS es tan grande, que lo que se hace es distribuir los archivos en diferentes pools, o zonas de almacenamiento, que son transparentes a la hora de acceder al sistema de archivos. Sun dice que ZFS es a los sistemas de archivos como la memoria virtual es a la memoria.

Otra capacidad, posiblemente la más interesante, es la de GARANTIZAR la integridad de los datos. En un sistema ZFS, un dato que está en disco siempre se graba bien… y se puede comprobar que no está bien, o que ha sido alterado de forma ajena al sistema de archivos —algo que sólo puede ser un error— en la primera relectura que se haga del archivo. No pueden existir errores “silenciosos”.

Además, también se garantiza la escritura por transacciones. Esto significa que no hay que llevar un registro de operaciones en disco que reconstruir en caso de fallo: el estado del disco siempre es coherente. Un apagón no puede dejar ningún disco ZFS en un estado incoherente. Y una subida de tensión, que alterase bits en los datos, sería registrada.

Aún mejor: ZFS dispone de un sistema de instantáneas (snapshots) del sistema de archivos, que permite retroceder al estado que tenía el sistema de archivos en cualquier momento pasado. Y por la forma en que se hacen las escrituras, y se garantiza la coherencia, es más sencillo mantener esas instantáneas que descartarlas. Y como las instantáneas contienen información suficiente no sólo para detectar errores, sino también para repararlos… la mayoría de los fallos que se pueden producir en un disco ZFS son recuperables, y en el peor de los casos, una versión anterior del fichero es recuperable. Esas instantáneas, además, sólo se producen de los archivos que cambian. Los archivos que no cambian no ocupan espacio adicional en disco.

Todo lo anterior tiene pinta de hacer el sistema de archivos muy lento. Y lo sería, para aplicaciones que accediesen al disco a bajo nivel. Pero ZFS organiza las escrituras y lecturas de forma que se agrupan previamente las operaciones, acelerando las escrituras, y todos los pasos necesarios para las verificaciones exhaustivas propias de ZFS.

Por último, y posiblemente lo más importante desde un punto de vista de tecnología con toque Apple, ZFS abstrae completamente del usuario, e incluso del administrador, una vez configurado, la noción de disco y volumen, y todo vive en un mismo pool de información. Imaginad que le pudierais poner un disco duro externo al portátil, y automáticamente tuviéseis más capacidad en un único “disco”, y que en cuanto se desconectase dejaseis de tenerla de forma transparente. Adiós a las particiones, salvo las que no existiesen dentro de ZFS, y que fueran necesarias para otros sistemas operativos, menos avanzados…

Lo que no ofrece ZFS

Pues, en primer lugar, por todo lo que implementa, ZFS no es el sistema de archivos más rápido del mundo para operaciones por bloques… aunque sí es el más rápido que ofrece sus características (algo que es tautológico, puesto que ninguno ofrece lo mismo ;-) ),

Además, la ocupación del disco es mucho mayor que con cualquier otro sistema, debido al sistema de imágenes, y la ocupación de memoria también, por la necesidad de crear en RAM todas las transacciones antes de intentar realizarlas en disco.

Lo que esto quiere decir es que, probablemente, no sea algo que vaya a sustituir a HFS+ como sistema de archivos estándar, pero sí podría haber sido una opción, especialmente en Mac OS X Server, y para la gestión de grandes volúmenes de datos, como los que puede manejar Xsan. De hecho, Xsan se queda en los 2 PB de tamaño de archivo (2 millones de GB)

Enlaces relacionados: Memoria de acceso Aleatorio

0
Comentarios