lunes, 10 de enero de 2011

Introducción a niveles anidados RAID-10, RAID-01 (Parte II)

Esta es la segunda parte del anterior, les estoy debiendo la segunda de este, pero sale hoy noche (tuve problemas con los vídeos). De nuevo, este es traducido desde aquí el autor es el mismo. Revisen el artículo de wikipedia que como les dije en el anterior, está muy claro. Hoy es lunes, les deseo una muy buena semana. Aquí les va.....

Introducción a niveles anidados RAID-10, RAID-01.
En el último artículo se revisaron los niveles de RAID básicos. En este artículo, llevaremos las cosas al siguiente nivel y discutiremos lo que se llaman niveles RAID anidados. Estos conceptos pueden proporcionar rendimiento y redundancia para un mundo atestado de datos. A continuación, veremos los niveles RAID-01 y RAID-10, dos de los niveles RAID anidados más comunes.
En nuestro último artículo, introducimos los niveles RAID estándar: RAID 0, RAID 1, RAID 2, RAID 3, RAID-4, RAID 5 y RAID-6. Si bien puede haber sido una recapitulación para muchos, creo que siempre es bueno volver atrás y repasar los conceptos fundamentales de vez en cuando. Estos eran los niveles RAID simples que tienen un número único asociado con ellos, tales como RAID-0, RAID 1, RAID 5, RAID-6, etc Recordarán que la intención de RAID es proporcionar un rendimiento y / o redundancia de datos adicional por lo que estos niveles simples de RAID se definen en función de estos principios.
Vimos que algunos de los niveles de RAID hacen hincapié en el rendimiento, y otros en la redundancia de datos. También que hay algunos que tratan de proporcionar un balance entre los dos propósitos, pero tal vez haciendo hincapié en la redundancia de datos más que en el rendimiento. Luego de un tiempo la gente entendió que estas configuraciones RAID simples podrían limitar lo que se podría lograr con RAID. Tal vez se podría utilizar múltiples configuraciones RAID para lograr un mejor equilibrio entre rendimiento y redundancia de datos.
En este artículo quiero hablar del siguiente paso de RAID que combina diferentes niveles para crear niveles RAID anidados. Los niveles anidados también son llamados RAID híbridos con la idea de combinar los niveles RAID estándar para crear tal vez nuevas y mejores configuraciones RAID.

Fundamentos de los niveles RAID anidados
Los objetivos del uso de RAID anidados son los mismos que para los niveles simples - mejor rendimiento y / o una mayor redundancia de datos. Pero por lo general, las configuraciones RAID anidadas buscar un equilibrio entre rendimiento y redundancia de datos, que se logran mediante la combinación de dos o más niveles estándar de RAID para crear configuraciones híbridas. Originalmente, los niveles RAID anidados se crean para mejorar tanto el rendimiento de un RAID de nivel estándar que hace hincapié en la redundancia, tal como RAID-1, o para mejorar la redundancia de un nivel de RAID estándar que hace hincapié en el rendimiento, tal como RAID-0.
Si usted desea ponerse un poco geek, puede pensar en los niveles RAID anidados como cocinar. Se espolvorea un poco de RAID-1 aquí, un poco de RAID-5 allá, a continuación, agregue RAID-0 al final para obtener buen rendimiento y ya tiene la solución. Ahora que por fin he utilizado una metáfora de cocina en una columna sobre almacenamiento en Linux vamos a pasar a los detalles técnicos.

Los niveles RAID anidados son generalmente etiquetados con una serie de números en lugar de un solo número como en los niveles de RAID estándar. Los más comunes tienen dos niveles o dos números. De forma genérica se puede escribir como RAID X + Y o RAID XY (suponiendo que son sólo dos niveles). Por ejemplo, podemos escribir RAID-10 donde X = RAID-1 y Y = RAID-0. En el esquema de numeración, el primer número de la izquierda, que es "X" en el esquema genérico, es el nivel más bajo en el nido. Así que en el caso de RAID-10, el RAID anidado se inicia con RAID-1 en el nivel más bajo.
A continuación, el esquema de numeración se mueve a la derecha. Usando la secuencia genérica RAID-XY, el nivel de RAID siguiente es "Y", que agrega el nivel superior del arreglo. En el ejemplo de RAID-10, el nivel más bajo es RAID-1, a continuación, RAID-0 es el nivel superior. Así RAID-0 es situado sobre RAID-1 (el rendimiento en la parte superior de la redundancia).
El orden de los niveles de RAID en la secuencia de nombres es significativa. RAID X + Y no es lo mismo que RAID Y + X (lo siento - no hay simetría). RAID Y + X comienza con RAID Y en el nivel más bajo y termina con RAID X en el nivel superior. En el caso de RAID 10 RAID (X + Y), X es RAID-1 y es el nivel más bajo, e Y es RAID-0 y es el nivel superior. Para RAID Y + X, lo opuesto es válido. RAID-0 es "Y" y es el nivel más bajo y RAID-1 es "X" y es el nivel superior.
Uno podría pensar que el RAID-10 (RAID 1 + 0) y RAID-01 (RAID 0 + 1) son la misma cosa y hasta cierto punto lo son. De hecho, tienen resultados similares, en capacidad y eficiencia de almacenamiento, pero la gran diferencia está en cuántos discos hay que leer, y escribir, durante la regeneración, cuando falla un RAID anidado. Hablaremos más sobre esto en las secciones siguientes.
Un último comentario. Usted no tiene que quedarse con sólo dos niveles, tales como RAID-XY. Puede crear tantos niveles como el hardware o el software, lo permitan. Así que puede crear fácilmente RAID-XYZ si gusta (y si el hardware o el software lo permiten).
Dicho esto, pasemos a ver algunas combinaciones comunes de RAID anidados, empezando con RAID-01 o RAID 0 + 1.

RAID 0 + 1
En esta configuración anidada, empiezas creando dos grupos idénticos de discos y aplicando un nivel RAID-0 en cada grupo. A continuación, usas un nivel RAID-1 para combinar los dos grupos. La Figura 1 muestra cómo quedará.
En este ejemplo, se utilizan cuatro discos. Se crean dos grupos de dos discos cada uno y cada grupo está integrado como un RAID-0 (para lograr rendimiento). Luego los dos grupos se combinan con un RAID-1 (en espejo) para lograr redundancia de datos.
El flujo de datos en la Figura 1 es bastante fácil de seguir. El bloque de datos "A" se envía al grupo RAID al más alto nivel (RAID-1). Los bloques que componen el bloque "A" se reflejan en el envío a los dos grupos (RAID-1). A continuación, los datos están fragmentados en los dos discos en cada grupo por el RAID-0. Así en la figura 1 se puede ver que los bloques A1, A2, A3, y así sucesivamente, residen en los discos. Nótese cómo el bloque espejo (RAID-1) funciona de manera que hay dos copias de cada bloque en la configuración (es decir, los discos 1 y 3 contienen los mismos bloques).
Puesto que es difícil profundizar con sólo cuatro unidades de disco, veamos un ejemplo con seis unidades, como se muestra en la Figura 2.

Este ejemplo en particular fue tomada de Wikipedia. Hay un total de seis unidades que son todas del mismo tamaño (120 GB). Esta matriz RAID-01 tiene dos juegos de tres unidades cada uno. Cada conjunto de tres unidades se construye con RAID-0 (el nivel más bajo) y luego se combinan con RAID-1 (en espejo).
La capacidad de una matriz RAID-01 es bastante simple de calcular. Y se calcula como,

Capacidad = (n / 2) * min (tamaño de disco)

Donde "n" es el número de discos de la matriz y "mín (tamaños de disco)" es la capacidad mínima entre las "n" unidades (lo que indica que se pueden utilizar unidades de distintos tamaños). Esta ecuación también significa que el RAID-01 no es muy eficiente en capacidad dado que pierde la mitad de las unidades para obtener un mejor redundancia de datos (mirroring).
Examinar la disposición RAID para lograr redundancia de datos y sus fallos es muy esclarecedor. En particular ¿que ocurre cuando una unidad se pierde? Supongamos que la unidad 2 se pierde (segunda unidad de la izquierda). Inmediatamente, el grupo RAID-0 al que pertenece fallará. Sin embargo, dado que tenemos un espejo del grupo RAID-0, no perderemos los datos (lo cual siempre es algo bueno). Incluso podemos tolerar la falla de los discos 1 y 3, mientras que el disco 2 está fuera sin perder datos porque son parte del primer grupo RAID-0 . Sin embargo, después de perder el disco 2, no podemos tolerar la falla de cualquier disco en el segundo grupo RAID-0 (los discos del 4 al 6). Así que la redundancia de RAID-01 es de un disco (en el peor caso) y n / 2 en el mejor de los casos (pero es poco probable que suceda).
La tabla 2 a continuación muestra un breve resumen de RAID-01 con algunos puntos destacados.

Clic para ampliar.

RAID 1 + 0 (RAID-10)
RAID-10 es una de las configuraciones anidadas RAID más populares y construye la configuración en el orden inverso de RAID-01. En la figura 3, se muestra una configuración mínima de cuatro discos.
Para RAID-10 la configuración comienza con dos pares de grupos RAID-1 (suponemos que el RAID-1 se hace con sólo dos discos). A continuación, se utiliza un RAID-0 para combinar los grupos RAID-1 . En oposición a RAID-01 ahora utilizamos un nivel de redundancia de datos RAID-1 en el nivel mas bajo, y luego un nivel para rendimiento RAID-0 en el nivel superior.
El flujo de datos en RAID-10 es fácil de seguir. Los datos de la porción "A" primero son distribuidos entre los dos pares RAID-1 utilizando RAID-0 (el nivel más alto del RAID). Luego, cada grupo (abajo) RAID refleja su bloque particular a través de los dos discos (RAID-1). Así que los bloques de datos replicados están más cerca entre sí en RAID-10 que en RAID-01.
Para compararlo directamente con RAID-01 veamos la misma configuración de seis discos que en la figura 2. La figura 4 muestra una configuración RAID-10 con seis unidades.


En este caso hay tres pares de discos RAID-1 que se combinan en un RAID-0. En comparación con RAID 01, RAID-10 primero distribuye los datos con RAID-0 y luego usa RAID-1 para lograr redundancia de datos. RAID-01 hace lo contrario - los datos se replican primero y se distribuyen a continuación.
La capacidad de un array RAID-10 es sencilla de calcular y es exactamente la misma que RAID-01. La capacidad se calcula como,

Capacidad = (n / 2) * min (tamaños de disco)

Donde "n" es el número de discos de la matriz y "mín (tamaños de disco)" es la capacidad mínima entre las "n" unidades (lo que indica que se pueden utilizar unidades de distintos tamaños). Esta ecuación también significa que el RAID-10 no es muy eficiente ya que pierde la mitad de la capacidad de las unidades para obtener un mejor redundancia de datos (mirroring).
Pero ¿que sucede en RAID-10 si se pierde un disco? Por ejemplo, vamos a asumir de nuevo que se pierde el disco 2 (segundo disco de la izquierda). Ahora se puede tolerar la pérdida de otro disco, siempre y cuando no sea el disco 1. En realidad puede perder un disco en cada par RAID-1 sin perder datos. Sin embargo, si pierden los dos discos en uno de los pares RAID-1 la configuración RAID-0 se perderá. Así, al igual que RAID-01, usted puede perder un disco sin perder el acceso a los datos. Pero usted puede perder hasta n / 2 discos sin perder el acceso a los datos, si son los discos correctos (lo cual es muy poco probable que suceda). Así como en RAID-01, la redundancia de RAID-10 es de un disco (el peor caso) y n / 2 en el mejor de los casos (poco probable que suceda).
La tabla 2 a continuación muestra un breve resumen de RAID-1 con algunos puntos destacados.

Clic para ampliar.

Comparación de RAID-01 y RAID 10
Las configuraciones RAID anidadas son todas combinaciones de niveles RAID estándar para producir mejores estructuras en términos de rendimiento o redundancia de datos (acceso a los datos). Cómo combinamos los niveles RAID estándar es la clave para producir lo que deseamos (al igual que en la cocina), pero hay que examinar los resultados desde todos los ángulos para juzgar cuál es mejor (si de hecho, alguno es mejor). Una vez más - al igual que en la cocina (puede oler y verse bien, pero sabe a tierra). Así que vamos a examinar RAID 01 y RAID 10, desde ángulos diferentes.
La eficiencia de la capacidad y el almacenamiento son dos aspectos comunes que deben compararse. Ambos RAID-01 y RAID-10 sólo usan la mitad de los discos en términos de capacidad. Esto se debe a el RAID 1 (espejo) en la configuración RAID. El resultado es que la eficiencia de la capacidad y almacenamiento de RAID-01 y RAID-10 son los mismos.
Otro aspecto que puede ser examinado es el número de unidades que se pueden perder sin perder el acceso a los datos. En este caso, ambos RAID 01 y RAID 10 también son iguales. La pérdida de una unidad es el peor de los casos para ambas configuraciones (es decir, menor número de unidades perdidas antes de perder el acceso a los datos). Sin embargo, ambas configuraciones también pueden perder hasta n / 2 unidades antes de que se pierda el acceso a los datos, aunque el patrón de los discos no es igual para cada configuración y es poco probable que ocurra en la vida real
Es difícil comparar el rendimiento de RAID-01 y RAID-10, ya que en muchos casos el rendimiento depende en gran medida el rendimiento de la controladora RAID. En consecuencia, solo podemos decir objetivamente, que el rendimiento de ambas configuraciones el mas o menos igual. Pero también podemos decir que el rendimiento de ambos es mucho mejor que en los niveles de RAID estándar, excepto para RAID-0 (rendimiento puro), el cual es uno de los objetivos de las configuraciones RAID anidadas.
La última categoría en la comparación de RAID-01 y RAID-10, es la reconstrucción del RAID. Esta categoría define el número de unidades utilizadas en la reconstrucción del RAID que afecta a la cantidad de tiempo necesario para reconstruir la matriz. Cuando una unidad falla ud querrá que el arreglo se restablezca lo mas rápido posible, ya que quizás pueda ser capaz de tolerar la pérdida de otra unidad, pero lo más probable es que no pueda. Así que mientras mas rápido reconstruya el arreglo de modo que no existan discos fallados, mas fiable sera el acceso a sus datos.
En el caso de RAID-01, necesita tener acceso a todas las unidades que quedan en la matriz para recuperarse de la pérdida de una sola unidad. La razón es que tienes un RAID-1 por sobre dos conjuntos de unidades es RAID-0. La pérdida de una sola unidad significa que el grupo RAID-o entero ha fallado. La única manera de restaurar los datos perdidos es copiar todos los bloques de la parte "sana" del RAID-1 a las unidades "viejas" en el RAID-0 fallado, así como a la nueva unidad en el mismo grupo. Así que en el caso de la configuración en la Figura 2 asumiendo que la unidad 2 ha fallado, usted tiene que leer todos los bloques de los discos 4, 5 y 6, y escribirlos en las unidades 1 y 3, que ya estaban allí, así como en el nuevo disco 2. Esto significa que tendrá que acceder a cada uno de los disco en el arreglo fallado requiriendo así mas tiempo para la reconstrucción. El resultado es un aumento en la vulnerabilidad de acceso a datos, mientras la reconstrucción está ejecutándose.
En el caso de RAID-10, si falla una unidad, solo deberá ser accedida su unidad par. Utilizando el ejemplo en la Figura 4, si falla la unidad 2, entonces sólo se accede a la unidad 1 para restaurar los datos en la nueva unidad 2. Como que tienes que leer los datos en una sola unidad el tiempo de reconstrucción será mucho más rápido.
Además, puesto que sólo una unidad tiene que ser tocada nos mantendremos alejados de pegarle a la cifra mágica de los bloques que nos puede llevar a un URE (error de lectura irrecuperable). Así que en el caso de RAID-01 se corre un riesgo mucho mayor de llegar a un URE durante la reconstrucción, en comparación con RAID-10.
Usando las figuras 2 y 4 podemos hacer los cálculos sobre la cantidad de datos tienen que ser leídos y que tanto debe escribirse durante una reconstrucción.

RAID-01: Cantidad de datos leídos = 360GB
RAID-10: Cantidad de datos leídos = 120GB
RAID-01: Ccantidad de datos escritos = 360GB
RAID-10: Cantidad de datos escritos = 120GB

Así que para este ejemplo en particular, RAID-01 tendrá que leer y escribir tres veces más datos que RAID-10 (aunque puede leer los datos un poco más rápido debido a que están distribuidos). Si lo desea, podemos elaborar esto en fórmulas sencillas:

RAID-01: Cantidad de datos leídos = (n / 2) * capacidad de una sola unidad
RAID-10: Cantidad de datos leídos = capacidad de una sola unidad
RAID-01: Cantidad de datos escritos = (n / 2) * Capacidad de una sola unidad
RAID-10: Cantidad de datos escritos = capacidad de una sola unidad

Así a medida que aumenta el número de unidades y la capacidad de una sola unidad, más tiempo tardará RAID-01 para la reconstrucción. Sin embargo, el tiempo de reconstrucción de RAID-10 sólo se ve afectado por la capacidad de un disco único no por el número de ellos.
La tabla a continuación resume RAID-01 y RAID-10 de la discusión anterior.

Clic para ampliar.

Linux es especial
Si bien podemos estar jugando con una pistola un poco al hablar de las implementaciones específicas de RAID, Linux tiene algunos modos de RAID especiales que afectan a RAID-10 y proporcionar configuraciones únicas.

Recuerde que Linux tiene algo llamado RAID por software (el controlador md que se pueden gestionarse utilizando mdadm). Este es un RAID implementado por software en el núcleo de Linux que emplea los CPUs para el procesamiento del RAID (en oposición a una tarjeta RAID dedicada). Hace unos años, la persona que mantenía "md" y "mdadm", Neil Brown, creó algunas opciones RAID-10 bastante singulares para Linux, que, en algunos casos, pueden utilizar menos de 4 unidades (lo mínimo "normal" para RAID-10) y utilizar un número impar de unidades. Hay dos conceptos que se utilizan en RAID-10 para "md": "cerca" y "lejos".

En el concepto "cerca" cada trozo de datos se repite m veces en una banda "k-forma". Sin embargo, no se requiere que m divida equitativamente a "k" como en el RAID-10 normal . Con dos unidades y suponiendo que m es dos, la configuración "especial" cerca de RAID-10 sólo se reduce a RAID-1.

Disco 1     Disco 2
------       ------
  A1             A1
  A2            A2
  A3            A3
   ..               ..

Tenga en cuenta que podemos perder una unidad y aún mantener el acceso a los datos como en RAID-1. Pero el controlador md de Linux piensa que es un RAID-10 (lo que facilita la actualización y expansión).
Pero, una de las cosas interesantes acerca de RAID-10 utilizando el controlador md en Linux es que podemos utilizar un número impar de unidades. En el caso de tres unidades de la distribución de datos tiene el siguiente aspecto.

Disco 1      Disco 2     Disco 3
------        ------       ------
  A1              A1            A2
  A2,             A3,          A3
  A4,             A4,          A5
  A5,             A6           A6
  ..                  ..              ..

Tenga en cuenta que tiene dos copias de cada fragmento de datos a través de las unidades al igual que RAID-10, pero los pedazos se agregan en un round-robin. Al igual que con RAID-10 también pueden tolerar la pérdida de una sola unidad sin perder el acceso a los datos. Sin embargo, esta configuración nos permite utilizar un número impar de unidades y obtener una mayor capacidad. La capacidad de esta configuración es la siguiente:

Capacidad = 2/3 * La capacidad de un solo disco

Para cuatro discos, el diseño de datos se ve como un RAID-10.

Disco 1      Disco 2      Disco 3      Disco 4
------        ------         ------       ------
  A1              A1                A2            A2
  A3,            A3,               A4,           A4
  A5              A5               A6             A6
  A7              A8               A7             A8
  ..                  ..                 ..                 ..
Al igual que con RAID-10 puede tolerar la pérdida de una unidad en general, y hasta dos unidades si no se pierden fragmentos de ciertos datos. La frase "cerca" viene del hecho de que los datos replicados (en espejo) quedan cerca uno del otro. Según Neil Brown, esto significa que usted puede conseguir rendimientos de lectura y escritura similares al RAID-0, pero con la mitad del número de unidades.
El concepto "lejos" organiza los datos más como RAID-01 que como RAID-10. Para una disposición de datos "lejos", se dividen las unidades de disco en secciones f. Todos los fragmentos de datos se repiten en cada sección, pero se introduce un offset con un dispositivo que pone los pedazos de datos espejeados "más" aparte en las unidades. Supongamos que f es 2 lo que significa que una unidad se divide en dos partes. Un diseño de dos discos "lejos" con f = 2 se vería como lo siguiente.

Disco 1     Disco 2
------       ------
  A2            A1
  A3,           A4
  A5,           A6
  ..                ..
  A2            A1
  A4           A3
  A6,          A5
  ..                ..
Observe cómo los mismos trozos de datos residen en diferentes unidades por lo que puede perder una unidad y seguir teniendo acceso a todos los datos (al igual que RAID-1). Sin embargo, la capacidad total con dos unidades de disco será la siguiente.

Capacidad = (n / 2) * Capacidad de un solo disco

Donde n es el número de unidades.
Una configuración de tres disco con f = 2 tiene el siguiente aspecto:

Disco 1        Disco 2         Disco 3
------          ------           ------
  A1                A2                A3
  A4,              A5,               A6
  A7,              A8,                A9
  ..                   ..                    ..
  A3,              A1,                A2
  A6                A5               A4
  A7                A8               A9
  ..                    ..                  ..
Una vez más, podemos perder hasta una unidad y mantener el acceso a todos los datos, pero hemos aumentado la capacidad de RAID a lo siguiente:

Capacidad = 3.2 * Capacidad de un solo disco

Que es igual a la configuración "cerca". Tenga en cuenta que para la configuración "lejos" se hace hincapié en el almacenamiento distribuido. Esto significa que las lecturas también pueden ser distribuidas lo que las hace muy rápidas, pero las escrituras están limitadas de cierto modo por el movimiento de las cabezas en las dos unidades (los datos replicados). Según este artículo, el rendimiento es,

  • El rendimiento en lecturas secuenciales es excelente ya que es un RAID-0 distribuido.
  • Las lecturas aleatorias son quizás un 10-20% mejor que en el RAID-10 convencional debido a la utilización de los sectores exteriores mas rápidos del disco (recorridos cortos) y un menor promedio de tiempo de búsqueda
  • Las escrituras secuenciales y aleatorias ofrecen el mismo rendimiento que RAID-1 (es decir, no tan bueno)

La conclusión es que las configuraciones "lejos" son buenas para la lectura, pero no tanto para las escrituras. Sin embargo, ambas configuraciones "cerca" y "lejos" permiten utilizar menos de cuatro discos y utilizar números impares de unidades.
Así como los niveles anidados RAID que permite combinar niveles de RAID estándar, Linux md le permite combinar configuraciones RAID "cerca" y "lejos" . Por ejemplo, en una configuración m = 2 y f = 2 con cuatro unidades (el mínimo permitido) el diseño de datos se ve como sigue:

Disco 1     Disco 2     Disco 3     Disco 4
------        ------       ------       ------
  A1              A1            A2             A2
  A3,             A3,          A4,            A4
  A5              A5           A6             A6
  A7              A8           A7             A8
  ..                  ..               ..               ..
  A2              A2            A1             A1
  A4              A4            A3            A3
  A6              A6            A5            A5
  A8              A8            A7            A7
  ..                  ..               ..                ..

Tenga en cuenta que hay cuatro copias de cada fragmento de datos! Observe también que podemos perder dos unidades de disco sin perder el acceso a los datos. Sin embargo, a diferencia de un RAID-10 normal se pueden perder dos unidades (cuales quiera que sean) y aún mantener el acceso a todos los datos. Esto es mucho mejor que RAID-10, donde se puede perder una sola unidad, pero sólo combinaciones específicas de dos unidades. La capacidad de esta configuración RAID especial de cuatro unidades "cerca" y "lejos" es la siguiente.

Capacidad = (n / 2) * Capacidad de un solo disco

Por lo tanto, no se obtiene ninguna capacidad adicional en relación con RAID-10, pero se gana la posibilidad de perder cualquier unidad (una gran ventaja en mi libro).
Recuerde que con RAID-10, tiene que tener un número par de unidades. La unidad RAID-10 md le permite utilizar un número impar de unidades. Para una idéntica combinación "cerca" y "lejos" con m = 2 y f = 2, una configuración con cinco unidad se vería como sigue:

Disco 1     Disco 2     Disco 3     Disco 4     Disco 5
------        ------      ------       ------       ------
  A1             A1             A2            A2            A3
  A3,           A4,            A4,           A5            A5
  A6            A6,            A7,           A8,           A7
  A9            A8            A9            A10          A10
  ..                ..               ..                ..                ..
  A2,           A3,           A1             A1             A2
  A5            A5            A3,           A4,             A4
  A8            A7            A6            A6,             A7
  A10         A10,         A8,           A9              A9
  ..                 ..              ..               ..                 ..
Una vez más, observe que hay cuatro copias de los datos en los arrays, pero hemos aumentado la capacidad de la formación RAID, porque tenemos una quinta unidad. Así que hemos conservado la capacidad de perder dos unidades de disco sin perder los datos (una gran ventaja en mi opinión), y hemos ganado la capacidad que es,

Capacidad = 5.3 * Capacidad de un solo disco

Resumen
Los niveles RAID anidados se crearon para combinar el rendimiento y / o las características de redundancia de datos de los niveles RAID estándar para darnos una gama más amplia de comportamiento de RAID. Además, nos permiten mejorar la redundancia de datos estándar de los niveles RAID que se centran en el rendimiento o mejorar el rendimiento de los niveles RAID normales que se centran en la redundancia de datos.
En este artículo revisamos los conceptos básicos de los niveles RAID anidados y la nomenclatura típica convencional para ellos. No olviden que el primer número de la izquierda es el nivel RAID inferior y moviéndose a la derecha en el nombre del RAID, se agregan mas niveles RAID. Por ejemplo, RAID-01 se inicia con dos grupos de RAID-0 y luego los combina con un RAID-1 (en espejo).
La manera en que se combinan los niveles RAID estándar puede afectar el comportamiento general. Esto significa que RAID-01 no es lo mismo que RAID-10. Aunque son muy similares, RAID-10 tiene un mejor comportamiento de recuperación si se pierde una unidad y tiene un tiempo corto de reconstrucción, si un disco se pierde. Así que la moraleja de la historia es que RAID X + Y no es el mismo que RAID Y + X.
Finalmente se analizó el controlador md de Linux y sus capacidades únicas. md utiliza dos conceptos: "cerca" y "lejos" a la hora de decidir dónde colocar los trozos de datos en las unidades. Para ambos conceptos, le permiten utilizar tan sólo dos unidades (normalmente RAID-10 requiere un mínimo de cuatro unidades) y también permite el uso de un número impar de unidades (de nuevo, algo que un RAID-10 normal no permite ) lo que aumenta la capacidad. También puede combinar los conceptos "cerca" y "lejos" con un mínimo de cuatro unidades, lo que le permite perder dos unidades de la matriz sin perder los datos. Por el contrario, RAID-10 le permite perder una unidad y seguidamente ciertas otras unidades, sin pérdida de datos (un escenario poco probable).
En el próximo artículo de nuestra serie de RAID, vamos a examinar el uso de RAID-5 y RAID 6 en RAID anidados para descubrir qué tipo de combinaciones de RAID que pueden crear y cómo se comportan