RAID (Redundant Array Of Independent/Inexpensive Disks) es un término inglés que hace referencia a un conjunto de discos redundantes independientes/baratos. Este tipo de dispositivos se utilizan para aumentar la integridad de los datos en los discos,
mejorar la tolerancia a los fallos y errores y mejorar el rendimiento.
En general permiten proveer discos virtuales de un tamaño mucho mayor
al de los discos comúnmente disponibles. Inicialmente un sistema RAID
era un conjunto de discos redundantes económicos.
Oficialmente los sistemas RAID se implementan en 7 configuraciones o
niveles: RAID 0 a RAID 6. También existen combinaciones de niveles de
RAID, las combinaciones más comunes son RAID 10 y RAID 0+1. Los
sistemas RAID son comúnmente implementados con discos de la misma
capacidad para todo el conjunto.
A nivel práctico y comercial, sólo los RAID impares, junto a las
combinaciones de estos, se han impuesto en el mercado: RAID 1, 3, 5, 7,
10, y 0+1. Destacan por su aceptación sobre los demás el RAID 1, 5, 10,
y 0+1.
Hardware vs. Software
Cualquiera de los niveles de RAID que aparecen listados abajo pueden ser implementados en hardware o software.
Con la implementación por software, el sistema operativo maneja los
discos del conjunto a través de una controladora de discos normal (IDE,
Serial ATA, SCSI o Canal de Fibra). Esta opción puede ser lenta, pero
no requiere de la compra de hardware adicional.
Una implementación de RAID basada en hardware requiere (por lo
menos) una tarjeta controladora RAID. Esta controladora maneja la
administración de los discos, y efectúa los cálculos de paridad
(necesitados para RAID 4,5). Esta opción ofrece un mejor rendimiento y
hace que el soporte por parte del sistema operativo sea más sencilla.
Las implementaciones basadas en hardware típicamente soportan
intercambio en caliente, permitiendo que los discos que fallen sean
reemplazados sin necesidad de detener el sistema.
El RAID de nivel 0 requiere al menos 2 discos para ser implementado.
El RAID 0 implementa un conjunto de discos divididos, la información
es separada en bloques y cada bloque es grabado en una unidad de disco
diferente. El rendimiento de Entrada/Salida se ve muy beneficiado por
la dispersión de la carga de Entrada/Salida a través de muchos canales
y discos.
El mejor rendimiento se alcanza cuando los datos son divididos a
través de múltiples controladoras con tan solo un disco por
controladora. No existe sobrecarga por el cálculo de paridad. Un diseño
muy simple. Fácil de implementar..
No es realmente un RAID ya que no es tolerante a fallos. El
fallo de una sola unidad produciría una pérdida de información en el
conjunto. No se debe utilizar en sistemas de misión crítica que
impliquen modificación de datos. (Algunas aplicaciones trabajan con
información de control almacenada en un sistema de archivos en RAID1 ó
5 y los datos multimedia en RAID 0, los cuales son respaldados a cinta
o a medios ópticos.)
Para el mejor rendimiento, la controladora debe ser capaz de
realizar dos lecturas concurrentes separadas por cada par espejeado o
dos escrituras duplicadas por cada par espejeado.
El nivel de RAID 1 requiere al menos dos unidades de disco para ser implementado
Son posibles una escritura o dos lecturas por par. El doble de la
tasa de transacciones de lectura de un disco simple, la misma tasa de
escritura que un disco simple. Redundancia del 100% en los datos
significa que no es necesaria la reconstrucción en el caso de fallo de
un disco, solo una copia para el reemplazo de disco.
La tasa de transferencia por bloque es igual a la de un disco
simple. Bajo ciertas circunstancias, el RAID 1 puede sostener fllas en
múltiples hunch.
Es el diseño de un subsistema de almacenamiento en RAID más sencillo.
Debido a que un disco es espejeado en par y contiene toda la
información, puede ser potencialmente utilizado sin software o hardware
para RAID.
El más alto volumen de carga de todos los tipos de RAID, (100%) ineficiente.
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.
El RAID de nivel 3 tiene un disco de comprobación y solamente procesa una E/S a la vez.
El RAID de nivel 3 es implementado en contadas ocasiones.
Los discos son divididos, como en RAID 0. La paridad de información
para la división es calculada, y almacenada en un disco de paridad. 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.
El disco de paridad puede ser un cuello de botella durante las operaciones de escritura.
Cada vez que un bloque de datos (algunas veces llamado pedazo)
es escrito en un disco dentro de un conjunto, un bloque de paridad es
generado dentro de la misma división. (Un bloque o pedazo esta
compuestos de muchos sectores consecutivos en un disco, algunas veces
tanto como 256 sectores. Una serie de pedazos [un pedazo de cada disco
dentro de un conjunto] es llamada colectivamente una división.)
Si otro bloque, o alguna porción del bloque es escrita en la misma
división, el bloque de paridad (o una parte del bloque de paridad) es
recalculada y vuelta a escribir. El disco utilizado por el bloque de
paridad es escalonado desde una división hasta la siguiente, de ahí el
término bloques de paridad distribuidos.
Es interesante que, los bloques de paridad no son leídos en las
lecturas de datos, ya que esto sería una sobrecarga innecesaria y
podría disminuir el rendimiento. Los bloques de paridad son leídos, sin
embargo, cuando la lectura de un sector de datos resulta en un error
CRC. En este caso, el sector en la misma posición relativa en cada uno
de los bloques de datos restantes en la división y dentro del bloque de
paridad en la división son utilizados para reconstruir el sector
erróneo. El error CRC se encuentra oculto para la computadora. De
cualquier manera, si un disco falla en el conjunto, los bloques de
paridad en los discos sobrevivientes son combinados matemáticamente con
los bloques de datos de los discos sobrevivientes para reconstruir los
datos de la unidad que ha fallado al vuelo. Esto es algunas
veces llamado Modo Interno de Recuperación de Datos. La computadora no
se entera de que el disco ha fallado. La acción de leer y escribir al
conjunto de discos continúa normalmente, aunque con alguna degeneración
de rendimiento. En RAID 5, en los conjuntos que solo tienen un bloque
de paridad por división, la falla de una segunda unidad de disco
resulta en la pérdida total de la información.
El RAID de nivel 5 requiere de al menos 3 unidades de disco para ser
implementado. El número máximo de discos teóricamente es ilimitado,
pero es una práctica común mantener un máximo de 14 unidades de disco o
menos para implementaciones de RAID 5 que tienen un solo bloque de
paridad por división. La razón para esta restricción es que existe una
gran concordancia en cuanto a que una unidad de disco fallará en el
conjunto cuando exista un gran número de unidades de disco. (El valor
del Tiempo Estimado Entre fallas MTBF
para una unidad de disco dentro de un conjunto se vuelve más pequeño.)
En implementaciones con más de 14 unidades de disco, el RAID 5 con
paridad dual (también conocido como RAID 6) es algunas veces utilizado
ya que puede sobrevivir a la falla de dos discos.
Mayor tasa de transacciones de lectura. De media a pobre tasa de
transacciones de escritura, especialmente cuando el CPU realiza
chequeos de paridad por software. Bajo coeficiente de discos ECC
(Paridad) para los discos de datos significa alta eficiencia. Buena
tasa de transferencia agregada.
El fallo de unidades de disco tiene un impacto medio en el caudal de
salida. Diseño de controladoras más complejo. Dificultad para
reconstruir en el caso de fallo de una unidad de disco (comparada con
el RAID de nivel 1). En bloques de datos individuales la tasa de
transferencia es la misma que en un disco individual. Alta sobrecarga
para escrituras pequeñas. Para cambiar 1 byte en un archivo, la
división completa debe ser leída, el byte modificado, la información de
paridad recalculada, y la división entera vuelta a escribir. Sin
embargo, el hecho de que los sistemas de archivos tienden a dirigirse a
los discos naturalmente en clusters oculta parcialmente este efecto.
(necesito que le pongan imagenes)
Bloques de datos enteros son grabados en el disco; la paridad es generada y escrita a las dos líneas, en dos unidades separadas.
El RAID de nivel 6 requiere un mínimo de tres unidades, pero cuatro
son requeridas para exceder la eficiencia en espacio de RAID 1.
El conjunto de mayor redundancia en paridad, muy ineficiente con
pocos discos, pero mucho más tolerante a fallas. Las unidades pueden
ser organizadas en matrices ortogonales, donde las filas de discos
forman grupos de paridad, similar al RAID 5, mientras las columnas
también mantienen una paridad consistente entre cada una de ellas. Si
un solo disco falla, ya sea su fila o columna de paridad puede ser
utilizada para reconstruirlo, Varias unidades dentro del conjunto
pueden fallar antes de que este se vuelva corrupto. Cualquier grupo de
discos no coincidentes puede fallar antes de que el conjunto se
corrompa.
Recomendado para: aplicaciones de imágenes y fileserver en general
Se crean múltiples espejos de RAID 1, y una línea de RAID 0 es
creada sobre estas. Este no es uno de los seis niveles originales, sino
la combinación de RAID 1 y 0, algunas veces también llamada RAID 1+0.
Potencialmente puede manejar múltiples fallas de discos simultáneas,
mientras uno de los discos de cada par espejeado continúe trabajando.
Las mismas ventajas y desventajas del RAID 1.
Dos líneas de RAID 0 son creadas, y un espejo en RAID 1 es creado
sobre estas. Este tampoco es uno de los 6 niveles originales de RAID.
No es tan robusto como el RAID 1+0. No puede tolerar dos fallos simultáneos de discos, si no son de la misma línea etc.
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.
Fue un trabajo particularmente excepcional en el que los conceptos
son “obvios”. Esta publicación generó la industria de los conjuntos de
disco. Powered by AkoComment 2.0! |