Qué es ZFS?

18/11/2005

Extraído y traducido de su página en opensolaris.org:

ZFS es una nueva clase de sistema de ficheros que proporciona una administración simple, semántica transaccional, integridad de los datos, y una inmensa escalabilidad. ZFS no es una mejora incremental de la tecnología existente; es fundamentalmente un nuevo acercamiento a la administración/gestión de datos.

ZFS presenta un modelo reunido de almacenamiento que elimina totalmente el concepto de volúmenes y los problemas asociados de particiones, del aprovisionamiento, del ancho de banda perdido y del almacenamiento inmovilizado. Los millares de sistemas de ficheros pueden escribirse en un pool de almacenamiento común, cada uno consumiendo sólamente tanto espacio como realmente necesite.

El ancho de banda combinado de E/S de todos los dispositivos en el pool está siempre disponible para todos los sistemas de ficheros. Todas las operaciones son transacciones ‘copia-en-escritura’, así que el estado de los datos en disco son siempre válidos. No es necesario realizar fsck(1M) en ZFS, nunca. Cada bloque es comprobado para prevenir la corrupción silenciosa de datos y éstos son comprobados en (duplicado espejo ó en RAID) configuraciones replicadas. Si se daña una copia, ZFS la detectará y utilizará otra copia para repararla.

ZFS introduce un nuevo modelo de replicación de datos llamado RAID-Z. Es similar al RAID-5, pero emplea anchura variable para eliminar el agujero de escritura que deja RAID-5 (corrupción debido a pérdida de energía entre los datos y las actualizaciones de paridad). Todo el RAID-Z escribe en full-stripe. NO hay ninguna imposición de lectura-modificación-escritura, no hay agujeros en la escritura, y -la mejor parte-, ninguna necesidad de NVRAM en hardware. A ZFS le gustan los discos baratos.

Pero los discos baratos pueden fallar, así que ZFS proporciona “fregado” del disco. Al igual que la memoria ECC, la idea es leer todos los datos para detectar errores latentes mientras éstos puedan ser corregidos. Un “fregado” atraviesa el pool entero del almacenamiento para leer cada copia de cada bloque, validarla contra la suma de comprobación 256-bit, y repararla en caso de necesidad. Todo ésto sucederá mientras el pool de almacenamiento siga vivo y en uso.

ZFS tiene un motor canalizado de E/S, similar en concepto a las tuberías de la CPU. La tubería funciona sobre dependencias de E/S y proporciona scoreboarding, prioridad, programación de plazo, out-of-order y agregación de E/S . La carga de E/S que traen otros sistemas de ficheros a sus rodillas son manejadas con facilidad por la tubería de E/S de ZFS.

ZFS proporciona snapshots ilimitados y clonaciones. Un snapshot es una copia inalterable de un punto en el tiempo de un sistema de ficheros, mientras que una copia es una copia escribible de un snapshot. Las clonaciones proporcionan una manera extremadamente eficiente de almacenar muchas copias de datos sobre volúmenes compartidos, tales como espacios de trabajo (workspaces), instalaciones de software, y clientes diskless (sin discos).

Las copias de seguridad (backups) y el restaurado (restore) ZFS son realizados a través de snapshots. Cualquier snapshot puede generar un backup completo, y cualquier par de snapshot puede generar un backup incremental. Los backups incrementales son tan eficientes que pueden ser utilizados para la réplicados remotos -por ejemplo transmitir una actualización incremental cada 10 segundos-.

No hay límites arbitrarios en ZFS. Puedes tener tantos ficheros como desees; offsets de 64-bit del fichero; enlaces/links ilimitados, entradas de directorio, snapshots, etcétera.

ZFS proporciona compresión incorporada. Además de reducir uso del espacio en x2 ó x3, la compresión también reduce la cantidad de E/S de 2 a 3 veces. Por ésta razón, permitir la compresión hace realmente que algunas cargas de trabajo vayan más rápidamente. Además de sistemas de ficheros, los pools de almacenamiento ZFS pueden proporcionar volúmenes para usos que necesitan la semántica crudo-dispositivo (raw-device). Por ejemplo, los volúmenes de ZFS se pueden utilizar como dispositivos de intercambio ó swap. Y si permitimos la compresión en un volumen de intercambio/swap, ahora tendríamos memoria virtual comprimida.

La administración de ZFS es simple y poderosa. Mira por favor las página de manual zpool(1M) y zfs(1M) para más información, y échale un vistazo a la sección Comenzando con ZFS para un pequeño tutorial.

ZFS es ya absolutamente rapidísimo en la mayoría de cargas de trabajo, y eso que estamos empezando…

About these ads

Una respuesta to “Qué es ZFS?”


  1. [...] En la web de opensolaris.org podemos encontrar una demostración en flash de ZFS. En ésta demo veremos cómo funcionan los pool, los snapshots, quotas etc… además de una impresionante manera de hacer un mirror de 100 sistemas de ficheros en cuestión de pocos minutos. Éste fin de semana estuve jugando un poco con ZFS, y la verdad es que me quedé asombrado de la rapidísimo que funciona incluso en discos IDE. Ahora hay que ver el rendimiento que da en comparación con otros sistemas de ficheros como XFS ó reiserfs. ¿Alguno de mis lectores ha hecho algo con ésta cuestión? [...]


Comments are closed.

Seguir

Recibe cada nueva publicación en tu buzón de correo electrónico.

A %d blogueros les gusta esto: