Niveles de RAID (Redundant Array of Independent Disks)


Actualmente los discos duros de los PC´s domésticos son un cuello de botella por muy rápidos que estos sean; así mismo los discos duros son piezas propensas a errores tarde o temprano, por lo que la pérdida de datos es más crítica que por ejemplo si se estropea otra pieza del ordenador (ej: una tarjeta gráfica, o un módulo de memoria RAM). Una manera de paliar esta “lentitud” y aumentar la seguridad de los datos en los discos duros es usando niveles RAID (Redundant Array of Independent Disks, Conjunto de Discos Redundantes Independientes/Baratos) que en función de su configuración (Nivel) tienen unas propiedades u otras. Existen 7 niveles RAID (Desde el 0 hasta el 6, algunos de ellos pueden mezclarse como el es caso del RAID 10 ó el del RAID 0+1):

RAID 0 (también llamado Stripping): une dos o más discos duros en una sola unidad lógica, es decir que si tenemos 3 discos duros de 80 Gb un RAID 0 crearía un solo disco de 240 Gb (80 Gb x3 Discos). De esta forma se consigue aumentar el rendimiento, esto se debe a que la información se distribuye en segmentos entre los diferentes discos que forman el RAID, simplificando un poco se podría decir que un RAID 0 divide un archivo en varias partes y guarda cada una de las partes en los discos del RAID de esta forma se aceleran los procesos de lectura y escritura del disco.

Ventajas:

  • El aumento de rendimiento en el sistema de almacenamiento (procesos de lectura y escritura de datos), frente a modelos sin RAID e incluso frente a discos más rápidos y mucho más caros; ej: un RAID 0 ATA100/SATA150 de dos discos duros tiene mejor relación precio/capacidad que un disco duro SCSI de 10.000 ó 15.000 Rpms.
  • Ser un sistema relativamente barato frente a opciones más caras como son los discos SCSI.
  • Aumentar la capacidad de almacenamiento, al unir las unidades de disco físicas en una sola unidad lógica.

Inconvenientes:

  • En caso de que uno de los discos del RAID falle la información puede darse por perdida ya que no existe integridad en los datos al estar repartidos entre los distintos discos del RAID.
  • El tiempo de acceso de los discos se mantiene, no se reduce por lo que el acceso a los datos es el igual, lo que si mejora es la tasa de transferencia de datos (lectura y escritura).

A causa de esto su uso se limita a entornos donde la información del RAID no sea crítica, ya que su pérdida supondría más problemas que ventajas.  Suele usarse en aplicaciones como: Edición y producción de vídeo; Edición de imágenes; y Aplicaciones que necesiten una gran tasa de transferencia de datos.

RAID 1 (Mirroring, Duplexing o Espejo): copia el contenido de un disco en uno o más discos duros (réplicas) de esta forma aumenta la seguridad de los datos frente a fallos, pero se pierden prestaciones ya que cada vez que actualiza la información del disco deben actualizarse los demás discos (réplicas).

Ventajas:

  • Aumento del nivel de seguridad de los datos, al estar como mínimo duplicados, por lo que en caso de fallo de uno de los discos la información se conserva intacta.

Inconvenientes:

  • Tiene mayor volumen de carga que otros niveles, ya que duplica la información tantas veces como discos tenga el RAID.
  • Se desaprovecha la capacidad de los discos réplica al estar ocupada por información redundante.
  • Es algo más lento en las operaciones de escritura ya que tiene que actualizar los discos réplica simultáneamente.
  • En caso de que entre algún tipo de código malicioso (virus; troyano,…) afectaría al resto de discos réplica ya que serían actualizados.

Se utiliza en entornos donde la integridad de los datos es crucial y el rendimiento es “secundario” como por ejemplo en: Contabilidad; Nóminas; Finanzas; Servidores; y Cualquier aplicación que requiera de alta disponibilidad.

RAID 2 (ECC: Error Correction Code, Código de Corrección de Error): usa los códigos de Hamming como método de corrección de errores, dichos códigos se almacenan en discos aparte, de tal forma que si tenemos un RAID 0 con 10 discos se necesitarían 4 discos mas para guardar los bit de paridad de los códigos Hamming correspondientes. Es un nivel de RAID poco usado ya que los niveles de RAID 1; 3 y 5 tienen una mejor relación coste/rendimiento.

Ventajas:

  • Mejora la velocidad de transferencia.
  • Podemos recuperar los datos gracias a los discos de código de error.

Inconvenientes:

  • Es una solución cara ya que se necesitan muchos discos para guardar los códigos de error.
  • Tiempo de escritura de datos es bastante lentos, incluso aunque los datos se separen el los diferentes discos.

RAID 3 (Sistemas de disco en paralelo con disco de paridad para corrección de errores también conocido como Striping con paridad delicada): se necesita un mínimo de tres discos duros para crear un RAID 3, este nivel de RAID utiliza una paridad de intervalo de bit (Paridad de Richard M. Price) dedicando uno de los discos a guardar la información de paridad, esta información ECC se utiliza para la detección de errores, de esta forma se reduce el numero de discos dedicados a guardar la información de paridad, de tal forma que si tenemos un RAID de 10 discos solo se necesitaría 1 para los códigos, en lugar de 4 como en RAID 2, al igual que el anterior no esta muy extendido.

Ventajas:

  • Alto rendimiento para aplicaciones de velocidad de transferencia alta.
  • Gracias al disco de paridad se pueden recuperar los datos.

Inconvenientes:

  • Si perdemos el disco de paridad perdemos toda la información redundante.
  • Tipo de escritura de datos bastante lento.

RAID 4 (Unidad de paridad dedicada, o Paridad de intervalo de bloque): Necesita al menos 3 discos para montar un RAID 4, Los discos son divididos, como en RAID 0, basa su tolerancia a fallos en la utilización de un disco dedicado a guardar la información de paridad calculada a partir de los datos guardados en los otros discos. Si uno de los discos falla, la información es reconstruida en un disco de repuesto utilizando la información de paridad. Si el disco de paridad falla, la paridad de la información es recalculada en un disco de repuesto. Los datos se distribuyen por sectores y no por bits como ocurre en otros niveles RAID.

Ventajas:

  • Buen rendimiento en las escrituras de datos.
  • Tiene integridad de datos.

Inconvenientes:

  • Si perdemos el disco de paridad, perdemos toda la información redundante.
  • Menor rendimiento en las lecturas de datos.
  • El disco de paridad puede ser un cuello de botella durante las operaciones de escritura.

RAID 5 (Discos de datos independientes con bloques de paridad distribuidos, Bloques de Intervalo de Paridad Distribuida): Consiste en distribuir los códigos de corrección de errores en los diferentes discos de tal manera que se evita el cuello de botella que supone almacenarlos en un solo disco (RAID 3), ya que diferentes operaciones de escritura en diferentes discos del grupo no deberían esperar al disco de códigos. No es necesario un disco para guardar las paridades puesto que los propios discos del RAID 5 pueden guardarlas. En el nivel 5 de RAID las unidades de disco actúan independientemente, cada unidad es capaz de atender a sus propias operaciones de Lectura/Escritura, lo que aumenta el numero de operaciones de entrada salida simultanea .Esta característica mejora considerablemente el tiempo de acceso.

Ventajas:

  • Alto rendimiento en aplicaciones de velocidad de demanda interactiva.
  • Costo efectivo; no se desaprovecha un disco exclusivamente para paridad.
  • Se pueden recuperar datos.

Inconvenientes:

  • El rendimiento en las escrituras de datos es bajo porque necesita una operación adicional de escritura al almacenar los datos ya que tanto los datos como la información se actualizan en operaciones distintas y en unidades de disco diferentes.
  • No aumenta el rendimiento en las aplicaciones, aunque la velocidad de transferencia de datos es alta.
  • Las aplicaciones implican numerosas operaciones de escritura y sufren descensos en el rendimiento.

Se utiliza en entornos de: Servidores de Archivos y de Aplicaciones; Servidores de Bases de Datos; Servidores de web, e-mail y de noticias; Servidores de Intranet; es el nivel de RAID más versátil.

RAID 6 (Sistemas independientes de disco con integración de código de error mediante una doble paridad): requiere un mínimo de tres unidades, pero se necesitan cuatro para mejorar la eficiencia en espacio de RAID 1 (Mirroring o Espejo). Se puede considerar una extensión del RAID 5 , para ello guarda una segunda paridad. Este nivel proporciona muy buena integridad de los datos y repara diversos errores en los discos. El RAID 6 añade un nivel más de disco, resultando una organización con dos dimensiones de disco y una tercera que corresponde a los sectores de los discos la ventaja de este nivel consiste en que no solamente se puede recuperar un error de entre dos discos, sino que también es posible recuperar muchos errores de 3 discos. La operación de escritura es difícil debido a la necesidad de sincronizar todas las dimensiones. No tiene mucha implantación ya que otros niveles de RAID son algo más asequibles y tienen gran seguridad (ej :RAID 5).

Ventajas:

  • Podemos recuperar diversos errores simultáneamente.
  • Nivel de integridad muy elevado solución perfecta para aplicaciones criticas.

Inconvenientes

  • El rendimiento en escritura de datos es bastante lento.
  • No se dispone de muchas implementaciones comerciales en el nivel de RAID 6 ya que las controladoras son bastante más caras.

Estos niveles de RAID pueden mezclarse dando lugar a otros tipos de RAID como son el RAID 1+0 (también conocido como RAID 10); el RAID 0+1 (no es igual que el RAID 10); el RAID 3+0 (también conocido como RAID 30) ó el RAID 5+0 (también conocido como RAID 50).

Normalmente un sistema RAID se efectúa a través de hardware, utilizando una controladora (sea IDE; SATA; SCSI o SAS) adecuada al nivel de RAID que se quiere implementar (ej: si queremos hacer un RAID 5 será necesario que la controladora RAID sea compatible con el nivel RAID que queremos crear); así mismo también pueden crearse niveles RAID por software pero estos son muy limitados tanto en niveles soportados (normalmente 0, 1 y 5) como en prestaciones:

  • Las particiones no son vistas por sistemas como MS-DOS.
  • Los RAID por software no funcionan como particiones de arranque, es decir que no se puede cargar el sistema operativo en ellas, por lo que se necesita un disco duro adicional en el que instalar el sistema operativo)
  • Es soportado por pocos sistemas operativos: versiones Server de Windows y Linux.

Por último en web de Intel hay una presentación Flash en formato “EXE” sobre los tipos de RAID más comunes (RAID 0; RAID 1 y RAID 5) y su funcionamiento.

Además muchas controladoras RAID incorporan tecnología:

  • Hot Plug (Conexión/Desconexión en caliente) o Hot Swap (Cambio en caliente) como ocurre con los dispositivos USB/Firewire actuales que permite reconstruir el RAID sin detener el sistema cambiando el/los disco/s afectado/s (Información de wikipedia en inglés).
  • Hot Spare o Hot Standy (Unidad de reposición) son discos duros que permacen inactivos (Son de “reserva”) y que el RAID conecta en caso de que uno de los discos del mismo falle (Información de wikipedia en inglés).

Más información:

Anuncios

4 comentarios

  1. […] Niveles de RAID (Redundant Array of Independent Disks) […]

  2. I found this site using google.com And i want to thank you for your work. You have done really very good site. Great work, great site! Thank you!

    Sorry for offtopic

  3. […] duros en RAID (En esta entrada del Blog hay más información sobre los niveles RAID), que proporciona redundancia hardware para los discos […]

  4. […] Sufren una degradación del rendimiento con el uso (A los discos duros mecánicos les pasa algo similar y es necesario desfragmentarlos con cierta frecuencia), esto en parte se ha solucionado con software de limpieza manual (Ej: Sanity Erase o Intel SSD Tool Box) o bien con las intrucciones como Garbage Collection (Integradas en algunos OCZ) o las intrucciones TRIM (Información de Wikipedia) que por cierto las intrucciones TRIM actualmente no son compatibles con los niveles RAID (Hay más información sobre RAID en esta entrada del Blog). […]

Los comentarios están cerrados.

A %d blogueros les gusta esto: