RAID consiste en una serie de algoritmos de escritura de bloques de datos (data blocks) en múltiples discos duros. Cada modo o nivel de RAID especifica de qué forma se realizará esta escritura en los discos.
Las dos propiedades que hacen indispensable a RAID son: redundancia y velocidad. Cada nivel de RAID especifica la forma que se aprovecharán estas propiedades, velocidad de lectura/escritura, redundancia de datos o una combinación de ambas propiedades.
NIVELES DE RAID
Los niveles de RAID se nombran con un número entero, siendo los niveles más utilizados: RAID0, RAID1, RAID5 y combinaciones de los mismos (RAID0+1, RAID1+0)
RAID0 (stripping): es el nivel de RAID en que se sacrifica la redundancia en favor de la eficiencia. En este nivel se consiguen unas tasas de transferencia de lectura/escritura ideales calculables con la siguiente fórmula:
eficiencia lectura = velocidad lectura de 1 disco * número de discos
eficiencia escritura = velocidad escritura 1 disco * número de discos
Existe la creencia entre las comunidades de usuarios de en nivel 0 los bits se distribuyen de forma equitativa bit a bit entre los discos. Esto no es cierto, la repartición de datos se realiza bloque a bloque, de forma que dos bloques de datos consecutivos estarán en dos discos duros diferentes que conformen el RAID.
Al no disponer de redundancia, en nivel 0 no se dispone la posibilidad de recuperación de datos.
El mínimo número de discos necesarios para conformar un RAID0 es 2.
RAID1 (mirroring): es probablemente el nivel más utilizado en pequeños servidores. Se provee de redundancia aunque la eficiencia en escritura se ve sacrificada (debido a la redundancia). La eficiencia de este nivel puede calcularse en condiciones ideales con la siguiente fórmula:
eficiencia lectura = velocidad lectura 1 disco
eficiencia escritura = velocidad escritura 1 disco / número de discos
En este nivel cada bloque de datos es copiado en todos los discos de conforman el RAID, de forma que si un disco duro ?se cae?, los datos pueden regenerarse en un nuevo disco a partir de las copias contenidas en los restantes discos que conforman el RAID.
El número mínimo de discos necesarios para conformar un RAID1 es 2.
RAID5 (stripping with parity): es una mezcla entre RAID0 y RAID1 con la salvedad de que los bloques de datos y paridad se distribuyen entre todos los discos, en lugar de mantener imágenes de los mismos. Los cálculos de paridad se efectúan con cada proceso de escritura y son utilizados para regenerar los bloques de datos ante un fallo. Al mismo tiempo los bloques de datos consecutivos se almacenan en discos diferentes con lo que se aumenta al rendimiento tanto en lectura como en escritura. La eficiencia de un RAID5 en condiciones ideales podría calcular con la siguiente fórmula:
eficiencia lectura = velocidad 1 disco * número de discos
eficiencia escritura = velocidad 1 disco * (número de discos - 1)
RAID0+1 y RAID1+0 son modos avanzados que juntan los beneficios de RAID0 y RAID1 realizando ?grupos de RAIDs?. RAID0+1 por ejemplo, es el modo ?stripping? de un grupo de discos creando una unidad lógica mayor que los contenga en un nivel ?mirroring?. A modo de ejemplo, un RAID0+1 de 100GB estaría compuesto por 10 discos de 20GB, donde cada bloque de datos sería escrito en modo RAID0 sobre 5 discos y luego replicado en modo RAID1 sobre el otro RAID0 con los 5 discos restantes. El modo RAID1+0 es el efecto inverso.