Tecnología RAID - Historia y Niveles

El sistema RAID fue propuesto por primera vez en 1988 por David A. Patterson, Garth A. Gibson y Randy H. Katz en la publicación "Un Caso para Conjuntos de Discos Redundantes Económicos (RAID)". Este fue publicado en la Conferencia SIGMOD de 1988: pág. 109 – 116. El término "RAID" comenzó en esta publicación.

La tecnología RAID (Rebundant Array of Inexpensive/Independent Disk), en español, arreglo redundante de discos independientes o económicos, busca subsanar algunos de los problemas comunes presente en los sistemas de almacenamiento tradicionales, y lograr importantes mejoras a un bajo costo. Las principales finalidades de un sistema RAID SON:

• Mejorar la tolerancia a fallos y errores
• Aumentar la integridad de los datos
• Mejorar el rendimiento
• Ofrecer una alternativa económica frente a los sistemas SCSI

En palabras sencillas, un arreglo se puede tomar como un conjunto de elementos, en este caso un conjunto de discos organizados en forma ordenada.


Esquema de un RAID0

En la actualidad existen una gran cantidad de niveles RAID, cada uno con sus características, ventajas y desventajas que veremos más adelante. Es importante aclarar que el RAID es un técnica de software que busca los objetivos antes descritos, esta puede viene implementada en controladoras RAID presentes hoy en día en la mayoría de las placas madres. Además el RAID no es exclusivo para las unidades SATA, comenzó con los discos tradicionales IDE e incluso con las controladoras actuales se pueden mezclar en RAID discos IDE y SATA al mismo tiempo.

Algunos de los niveles o tipos de RAID más conocidos son:

• RAID0
• RAID1
• RAID2
• RAID3
• RAID4
• RAID5
• RAID6
• RAID7
• RAID53
• RAID0+1

De estos, los más utilizados por los usuarios domésticos o normales son los niveles 0,1,5,0+1 o por lo menos los más conocidos, los demás están enfocados específicamente a empresas y tareas especificas como servidores o estaciones de trabajo o simplemente están fuera del alcance de la mayoría por el alto costo que tiene su implementación.

Para mayor claridad explicare a fondo los RAID´s más utilizados y conocidos (0, 1,0+1) y de los demás daré una pequeña reseña de cómo funcionan.

Otro concepto no estrictamente dentro de la tecnología RAID es el JBOD, tecnología que nos permitirá mezclar varios discos de distintos tamaños y características sin implementar ningún nivel de RAID. Este tiene como principal objetivo "unir" discos pequeños que en la práctica no serian utilizables. Esta característica también esta disponible en la mayoría de las controladoras RAID de hoy en día. Por eso queda claro su nombre JBOD ("Just a Bunch of Disks") algo así como "simplemente un montón de discos".


NIVELES DE RAID

RAID0 o Disk Striping (particionamiento de disco)

En un RAID0 se puede obtener un alto rendimiento gracias a la utilización de varios discos en paralelo (mino dos unidades), la gracias de este tipo de RAID es que se utilizan los distintos discos simultáneamente ya sea para leer o escribir, de lo cual se puede señalar que teóricamente el rendimiento debería ser el doble, triple, etc, etc, según la cantidad de disco que utilicemos.

Por ejemplo, supongamos que deseamos escribir un archivo de 50 megas en el disco duro. En un sistema normal esos 50 MB son copiados secuencialmente al disco duro y demoran un tiempo X dependiendo del disco y del sistema en si. En un RAID0 compuesto de dos discos, se copian simultáneamente "fragmentos" del archivo en los dos discos, 25MB en cada uno, por lo tanto esto demoraría un tiempo X/2 en las mejores situaciones.

La capacidad de un RAID0 seria = tamaño_disco_más_pequeño X n, n= número de discos que conforman el RAID0.



Uno de los temas más polémicos es que si los discos DEBEN ser de iguales características o no. La respuesta rotunda es no, si los discos son de diferentes tamaños se aplicara la formula de arriba para sacar el tamaño del RAID y si tienen características distintas cada uno funcionara independientemente, por ejemplo (siguiendo el anterior), si uno es más rápido y termina antes de escribir sus 25Mb deberá "esperar" que el otro termine. Como pueden ver lo ideal es que sean iguales aunque en los discos modernos no creo que haya tantos problemas y además el rendimiento final depende mucho de la controladora.

Ventajas
• Fácil de implementar
• Poca perdida de espacio (depende de la configuración)
• Alto rendimiento

Desventajas
• No es un RAID 100%, ya que no provee sistema de recuperación de errores o tolerancia de fallos, un error en un disco y muere el arreglo completo



RAID1 o disk Mirroring (disco espejo)

El RAID1 es bastante similar al 0 en su funcionamiento, salvo que en vez de copiar/leer los archivos desde los distintos discos (trozos de archivo) , este copia o lee el archivo ENTERO en los distintos discos. Es decir si deseamos grabar el mismo archivo de 50Mb del ejemplo anterior, este se copia en todos los discos que conforman el RAID1 simultáneamente, por lo cual el rendimiento es bastante similar al de 1 solo disco.

La capacidad del arreglo resultante será igual a la del disco más pequeño dentro del RAID1. Este sistema funciona con dos discos, actuando uno de ellos como espejo.

Este tipo de RAID es recomendado para entornos donde la infamación es muy delicada.

Ventajas
• 100% tolerante a fallos, si falla un disco queda disponible el otro sin pausas en el sistema
• Alta disponibilidad del sistema, igual que el anterior si falla un disco quedara disponible el otro.

Desventajas
• Sistema caro
• Capacidad de almacenamiento reducida, "se pierde" un disco completo.
• Puede ser un poco lento en ciertos entonos de trabajo



RAID 0+1

Combinación de los arrays anteriores que proporciona velocidad y tolerancia a fallos simultáneamente. El nivel de RAID 0+1 fracciona los datos para mejorar el rendimiento, pero también utiliza un conjunto de discos duplicados para conseguir redundancia de datos. Al ser una variedad de RAID híbrida, RAID 0+1 combina las ventajas de rendimiento de RAID 0 con la redundancia que aporta RAID 1. Sin embargo, la principal desventaja es que requiere un mínimo de cuatro unidades y sólo dos de ellas se utilizan para el almacenamiento de datos. Las unidades se deben añadir en pares cuando se aumenta la capacidad, lo que multiplica por dos los costes de almacenamiento.

El RAID 0+1 tiene un rendimiento similar al RAID 0 y puede tolerar el fallo de varias unidades de disco. Una configuración RAID 0+1 utiliza un número par de discos (4, 6, 8) creando dos bloques. Cada bloque es una copia exacta del otro, de ahí RAID 1, y dentro de cada bloque la escritura de datos se realiza en modo de bloques alternos, el sistema RAID 0. RAID 0+1 es una excelente solución para cualquier uso que requiera gran rendimiento y tolerancia a fallos, pero no una gran capacidad. Se utiliza normalmente en entornos como servidores de aplicaciones, que permiten a los usuarios acceder a una aplicación en el servidor y almacenar datos en sus discos duros locales, o como los servidores web, que permiten a los usuarios entrar en el sistema para localizar y consultar información. Este nivel de RAID es el más rápido, el más seguro, pero por contra el más costoso de implementar.

Esquema RAID0+1

Nota: los sistemas RAID2 al 7 son muy poco utilizados y enfocados a estaciones de trabajo y no disponibles en la mayoría de las controladoras actuales para equipos de escritorio, a continuación de definen brevemente para que los conozcamos.


RAID2
El esquema de redundancia en el RAID de nivel 2 es un código de Hamming, donde la unidad de separación es un bit simple. Dividir al nivel de bit tiene la implicación de que en un conjunto de discos con N discos de datos, la unidad más pequeña de datos de transferencia para una lectura es un conjunto de N bloques.

El RAID de nivel 2 es implementado en contadas ocasiones.

RAID3
Sistemas de disco en paralelo con disco de paridad para corrección de errores. Conocido también como Striping con paridad delicada.

Utiliza también un disco de protección de información separado para almacenar información de control codificada con lo que se logra una forma mas eficaz de proporcionar redundancia de datos. Este control de información codificada o paridad proviene de los datos almacenados en los discos y permite la reconstrucción de información en caso de fallas. Se requieren como mínimo 3 discos y se utiliza la capacidad de un disco para la información de control.

Los datos se dividen fragmentos que se transfieren a los discos que funcionan en paralelo, lo que permiten enviar mas datos de una sola vez, y aumentar en forma sustancial la velocidad general de transferencia de datos. Esta ultima característica convierte a este nivel en idóneo para que estas aplicaciones que requieran la transferencia de grandes ficheros contiguos hacia y desde el ordenador central.

RAID4
Sistemas de discos independientes con disco de control de errores.

En el nivel 4 de RAID los bloques de datos pueden ser distribuidos a través de un grupo de discos para reducir el tiempo de transferencia y explotar toda la capacidad de transferencia de datos de la matriz de disco. El nivel 4 de RAID es preferible al nivel 2 de RAID para pequeños bloques de datos , por que en este nivel , los datos son distribuidos por sectores y no por bits. Otra ventaja del nivel 4 de RAID frente a los niveles 2 y 3 es que al mismo tiempo puede estar activa mas de una operación de lectura escritura sobre el conjunto de discos .

Cada disco graba un bloque de datos distinto, y un disco adicional graba un código de corrección de errores. Si falla un disco, su información se puede recomponer; solo perdemos la capacidad de un disco, pero éste está muy saturado.

El nivel 4 de RAID tiene división a nivel de bloques y el acceso al arreglo de discos es paralelo, pero no simultaneo. Posee un bit delicado a paridad y corrección de errores. La operación de escritura se realiza en forma secuencial y la lectura en paralelo,

RAID5
igual que el anterior, pero el disco que graba el código de corrección se va alternando. Rápido, seguro, y sólo pierde la capacidad de un disco...pero se necesitan al menos 3 discos.

RAID6
Este tipo es similar al RAID-5, pero incluye un segundo esquema de paridad distribuido por los distintos discos y por tanto ofrece tolerancia extremadamente alta a los fallos y las caídas de disco. Hay pocos ejemplos comerciales en la actualidad.

RAID7
Este tipo incluye un sistema operativo incrustado de tiempo real como controlador, haciendo las operaciones de caché a través de un bus de alta velocidad y otras características de un ordenador sencillo. Tiene un tiempo de acceso cercano a cero.

Indice de Contenidos

Estás leyendo los contenidos de nuestro antiguo portal, te invitamos a revisar nuestro nuevo sitio.