¿Qué es un RAID de discos duros?

Las siglas RAID significan Redundant Array of Inexpensive Disks. Se trata de una solución para incrementar el ancho de banda del sistema de almacenamiento y al mismo tiempo majorar su disponibilidad y tolerancia a fallos.

¿En qué consiste un RAID?. La idea principal es repartir los datos entre diferentes discos duros para que puedan ser accedidos en paralelo (esta técnica se denomina stripping).
Pero así se disminuye la fiabilidad del sistema de almacenamiento: si se utilizan varios discos duros, aumenta la probabilidad de que se produzca un fallo en alguno de ellos. Por eso la técnica de stripping suele combinarse con redundancia (normalmente por mirroring o utilizando información de paridad). De esta manera se tiene tolerancia a fallos, porque si hay un error con un dato en un determinado disco, ese mismo dato estará almacenado en otro/s discos o existirá información en el RAID que permitirá recuperarlo.

A la hora de diseñar un RAID, hay que tomar dos decisiones fundamentales:
  • Granularidad del stripping: Es decir, tamaño de las unidades de información que se reaprten entre los discos. Si es muy fina (las unidades de información son muy pequeñas), un acceso de E/S siempre involucrará a todos los discos. Se aumenta el ancho de banda pero no es posible hacer varias operaciones de E/S en paralelo. Si es más gruesa (unidades de información de tamaño mayor), un acceso puede ser servido por un único disco y por lo tanto, si el controlador lo permite, se podrán hacer varios accesos en paralelo.
  • Tipo de redundancia: Es lo que especifica el nivel de RAID. Podemos tener mirroring (copia de la información) o paridad (con distintos tipos de códigos). Y la información de redundancia puede estar localizada en discos concretos o distribuida entre todos los discos.
Por lo tanto existen diferentes niveles de RAID dependiendo de cómo se combinen y se utilicen las técnicas de stripping y de tolerancia a fallos: RAID0, RAID1, RAID5, etc.


No hay comentarios: