NetApp Logo
NetApp Tech OnTap
     

Jay White

Jay White
Ingeniero de Marketing Técnico
NetApp

PDF

Carlos Alvarez

Carlos Alvarez

Ingeniero Jefe de Marketing Técnico
NetApp

 


Esta es la tercera entrega de Conceptos básicos, una serie de artículos sobre los aspectos fundamentales de algunas de las tecnologías más conocidas de NetApp®.

Con el continuo crecimiento del tamaño de las unidades de disco, tener la flexibilidad necesaria para proteger los datos más importantes es cada vez más complicado. Aunque el tamaño de los discos ha aumentado, su fiabilidad general sigue siendo prácticamente la misma. Un mayor tamaño del disco implica un significativo incremento del tiempo necesario para reconstruir los discos con errores mediante la información de paridad de Conjunto Redundante de Discos Independientes (RAID), lo que conlleva una mayor posibilidad de que se produzca un segundo fallo en el disco u otro error antes de que finalice la reconstrucción. La probabilidad de que se produzcan errores de bits y bloques también aumenta de forma proporcional al incremento del tamaño de los medios, lo que no solo aumenta la posibilidad de que esto se produzca durante la reconstrucción sino que, además, aumenta las probabilidades de tener errores de dos discos que podrían interrumpir la actividad y generar pérdidas de datos en implementaciones RAID de paridad única.

NetApp fue pionero en el desarrollo de su exclusiva implementación de RAID de doble paridad, RAID-DP®, para solucionar este problema de flexibilidad. Aunque existen otras implementaciones de RAID 6 de doble paridad, solo RAID-DP protege contra los fallos de dos discos en el mismo grupo de RAID sin que se produzcan descensos significativos en el rendimiento.

RAID-DP presenta un rendimiento tal que constituye la opción predeterminada para los sistemas de almacenamiento de NetApp. En las comprobaciones, se aprecia un valor delta de rendimiento de escritura aleatoria de solo el 2% frente a la implementación de RAID 4 de NetApp. En comparación, el rendimiento de escritura aleatoria de RAID 6 de otro de los principales proveedores de almacenamiento se reduce en un 33% frente a la implementación de RAID 5 en el mismo sistema. (Tanto RAID 4 como RAID 5 son implementaciones del de paridad única). RAID 4 utiliza un disco de paridad designado. RAID 5 distribuye la información de paridad por todos los discos de un grupo de RAID con el fin de evitar que un disco de paridad experimente una carga excesiva. Esto no es necesario con RAID 4 de NetApp por la forma en que Data ONTAP® escribe los datos (como veremos más adelante).

RAID-DP ofrece otras ventajas importantes, como:

  • Máxima protección de datos: con RAID-DP de NetApp, la probabilidad de que se produzcan pérdidas de datos como resultado de fallos de dos discos es cientos de veces menor que en las configuraciones de RAID 5. Aunque RAID 1+0 ofrece una mejor protección de los datos que RAID 5, sigue existiendo el riesgo de que se produzcan pérdidas de datos si se genera un error de disco reflejado doble. RAID-DP ofrece una protección total contra fallos de dos discos por la mitad del coste de RAID 1+0.

  • Menor coste: las implementaciones de RAID 5 suelen limitar el tamaño de los grupos de RAID a 3+1 o 5+1 (lo que representa un coste de estructura de entre el 17 y el 25%). RAID 1+0 requiere 1+1 (unos gastos adicionales del 50%). Por el contrario, NetApp es compatible con grupos de RAID con un tamaño de hasta 28 (26+2) discos para conseguir unos gastos adicionales del 7% en términos de capacidad.

  • Rendimiento exigente: como se ha descrito anteriormente, las tecnologías de doble paridad de la competencia pueden provocar una considerable penalización en el rendimiento de escritura y podrían ser más adecuadas para los tipos de aplicaciones «principalmente de lectura». RAID-DP de NetApp conlleva una reducción del rendimiento prácticamente nula en comparación con RAID de paridad única, es la opción predeterminada de NetApp y su uso es adecuado con todas las cargas de trabajo.

  • Sin tarifas de licencia de software: la capacidad RAID-DP se incluye de serie en todos los sistemas NetApp. Su uso no generará ningún coste adicional, a excepción de los resultantes de la incorporación de discos de paridad, lo que se puede compensar al usar grupos de RAID de mayor tamaño.

En este capítulo de Conceptos básicos, se explora, entre otros aspectos, cómo implementar la tecnología RAID-DP de NetApp, los casos de uso aplicables y las mejores prácticas para ponerla en marcha.

Cómo se implanta RAID-DP en Data ONTAP

Estrecha integración con NVRAM y WAFL

La implementación de RAID-DP en Data ONTAP está íntimamente vinculada a NVRAM y WAFL® (Write Anywhere File Layout) de NetApp. Esta es la clave del excepcional rendimiento de RAID-DP frente a otras implementaciones de RAID 6.

Como escribir en memoria es mucho más rápido que en discos, los proveedores de sistemas de almacenamiento suelen utilizar una RAM no volátil (NVRAM) respaldada por batería para almacenar la escritura en caché y acelerar el rendimiento de la escritura. NetApp proporciona NVRAM en todos sus sistemas de almacenamiento, pero el entorno operativo Data ONTAP de NetApp la emplea de una forma muy diferente a la de las cabinas de almacenamiento típicas.

Se utiliza NVRAM como si fuera un diario de las solicitudes de escritura que Data ONTAP ha recibido desde el último punto de coherencia. Cada pocos segundos, Data ONTAP crea una copia Snapshot™ especial llamada «punto de coherencia», que es una imagen totalmente coherente con el sistema de archivo en disco. Los puntos de coherencia no se modifican, ni siquiera al escribir nuevos bloques en el disco, ya que Data ONTAP nunca sobrescribe bloques de discos existentes. Con este enfoque, si se produce un error, Data ONTAP solo tiene que regresar al punto de coherencia más reciente y reproducir de nuevo el diario de solicitudes de escritura desde NVRAM.

Esto supone un uso de NVRAM bastante diferente con respecto a las cabinas de almacenamiento tradicionales, que almacenan en caché las solicitudes de escritura en la capa dela controladora del disco. Además, reduce la cantidad de NVRAM necesaria, mejora el tiempo de respuesta del escritor y optimiza la escritura en disco.

Optimización de escritura: RAID 4

Este enfoque de almacenamiento en caché de las escrituras está estrechamente integrado en las implementaciones de RAID y permite que NetApp programe las escrituras de forma que se optimice el rendimiento de escritura en disco para la cabina de RAID subyacente. Empezaremos explicando cómo NetApp optimiza el proceso para la implementación de RAID 4 antes de abordar RAID-DP.

Las cabinas de RAID gestionan los datos en franjas (cada una de las cuales está compuesta por un bloque de cada disco de un grupo de RAID). Para cada franja, se designa un bloque como «bloque de paridad». En la figura 1, se muestra un grupo de RAID 4 tradicional que utiliza la paridad horizontal y consta de cuatros discos de datos (las primeras cuatro columnas, etiquetadas como «D») y un disco de paridad única (la última columna, etiquetada como «P»).

Figura 1) Ejemplo de paridad de RAID 4

Example of RAID 4 parity.

En este ejemplo, se ha calculado la paridad mediante la suma de los valores de cada franja horizontal y, a continuación, se ha almacenado el total como valor de paridad (3 + 1 + 2 + 3 = 9) a modo de demostración. En la práctica, la paridad se calcula mediante una operación de disyunción exclusiva (XOR).

Si es necesario reconstruir datos a partir de un solo error, solo habría que invertir el proceso utilizado para generar la paridad. Por ejemplo, si el primer disco fallase, RAID 4 recalcularía los datos de cada bloque del disco 1 a partir de los datos restantes; en nuestro ejemplo, esto se consigue restando los valores de los discos restantes al valor almacenado en paridad (9 – 3 – 2 – 1 = 3). Esto también explica el motivo de que RAID de paridad única solo proteja contra un único error de disco. Al no tener dos valores, no se dispone de suficiente información para volver a calcular los valores que faltan.

En las implementaciones de RAID típicas, para escribir datos nuevos en una franja que ya contiene información (y paridad), se debe leer el bloque de paridad y calcular un nuevo valor de paridad para la franja antes de escribir el bloque de datos y el nuevo bloque de paridad. Esto supone gastos adicionales significativos por cada bloque que va a ser objeto de escritura.

NetApp reduce esta penalización mediante el almacenamiento en búfer de las entradas en la memoria (protegidas por el diario en NVRAM) y, a continuación, la escritura de las franjas de RAID y la paridad siempre que sea posible. Así, no hay que leer los datos de paridad antes de escribir. Además, es posible realizar un único cálculo de paridad con WAFL para una franja completa de bloques de datos. (El número exacto de bloques depende del tamaño del grupo de RAID). Esto es posible porque WAFL no sobrescribe los bloques existentes cuando se modifican y a que se puede escribir datos y metadatos (la información de contabilidad que describe cómo se organizan los datos) en cualquier ubicación. En otras distribuciones, los bloques de datos modificados suelen sobrescribirse. Además, los metadatos deben estar en ubicaciones fijas.

Adición de paridad diagonal: RAID-DP

RAID-DP de NetApp utiliza dos discos de paridad por grupo de RAID. En un disco de paridad, esta se almacena calculada para las franjas horizontales, como se ha descrito anteriormente. En el segundo disco de paridad, esta se almacena calculada desde las franjas diagonales. En la figura 2, se agrega una franja de paridad diagonal, indicada por los bloques sombreados en azul, y un segundo disco de paridad, indicado como «DP», a la ilustración de paridad horizontal de la figura 1.

Figura 2) La adición de paridad diagonal.

The addition of diagonal parity.

La franja de paridad diagonal incluye un bloque del disco de paridad horizontal como parte de su cálculo. RAID-DP trata a todos los discos de la construcción de RAID 4 original (tanto datos como discos de paridad) del mismo modo. Observe que un disco se omite de la franja de paridad diagonal. En la figura 3, se muestran franjas de paridad diagonal y horizontal adicionales.

Figura 3) Varias franjas que muestran la paridad horizontal y diagonal.

Multiple stripes showing both horizontal and diagonal parity.

En cada franja de paridad diagonal, falta un único disco; mientras que, en cada franja de paridad diagonal, falta un disco diferente. Además, hay una franja diagonal (bloques blancos de la figura 3) que no tiene almacenada la paridad en el disco de paridad diagonal. Esto no afecta a la capacidad de recuperar todos los datos.

Recuperación de fallos de dos discos

La combinación de paridad horizontal y diagonal permite recuperarse tras la aparición de fallos de dos discos en el mismo grupo de RAID. Si falla un solo disco o se produce un error de bit o bloque incorrecto, disponer de la paridad horizontal necesaria es suficiente para volver a crear los datos que faltan.

Una vez que se produzca un fallo de dos discos, RAID-DP identifica en primer lugar la cadena en la que se empezará la reconstrucción, como se muestra en la figura 4. Recuerde que solamente es posible reconstruir los datos desde la paridad si no falta más de un elemento. Por este motivo, cada franja de paridad diagonal omite uno de los discos de datos.

Figura 4) Inicio de recuperación de RAID-DP mediante paridad diagonal

Start of RAID-DP recovery using diagonal parity.

Gracias a la recuperación del primer bloque mediante la paridad diagonal, es posible recuperar un segundo bloque con paridad horizontal (la primera fila de la figura 4). Esto, a su vez, permite recuperar otro bloque ausente mediante la paridad diagonal. Esta cadena de recuperación continúa hasta que finaliza a causa de la franja para la que no existe paridad diagonal. En ese punto, se detecta otro punto de entrada y se inicia la recuperación en otra cadena de franjas horizontales y diagonales. Finalmente, se habrán rellenado suficientes bloques ausentes como para poder recalcular todos los valores de la franja sin paridad solamente con la paridad horizontal. Este proceso se ilustra con más detalle en TR-3298: RAID-DP.

Hemos simplificado los ejemplos que aparecen en este documento para facilitar la comprensión de los conceptos básicos que se encuentran detrás de RAID-DP, pero es importante entender que los mismos procesos se aplican en las implementaciones de almacenamiento reales con docenas de discos en un grupo de RAID y millones de filas de datos. Aunque en el ejemplo del fallo se muestre la recuperación de dos discos de datos adyacentes, el proceso funciona con independencia de que los discos lo sean o no; al margen de si los discos que han fallado son discos de datos o de paridad.

Optimización de escrituras: RAID-DP

Como recordará de la explicación de RAID 4 anterior, WAFL intenta almacenar en búfer y escribir franjas completas de bloques en el disco siempre que sea posible. RAID-DP almacena en búfer los bloques de datos de la memoria para realizar varios cálculos de paridad horizontal y diagonal en una única operación de lectura. El 2% de los gastos adicionales de rendimiento de RAID-DP frente a RAID 4 procede de los gastos adicionales derivados del cálculo de la paridad diagonal y la escritura del segundo bloque de paridad.

Casos de uso

Con respecto a los casos de uso de la tecnología RAID-DP, su empleo se ha extendido tanto en el almacenamiento de NetApp que resulta más fácil enumerar las pocas situaciones en las que no debería utilizarse. Más del 90% de los clientes de NetApp ya utilizan RAID-DP (incluso para cargas de trabajo más esenciales y de rendimiento crítico). Es la opción predeterminada para todos los sistemas de almacenamiento nuevos de NetApp y recomendada en nuestras mejores prácticas. Además, utilizamos RAID-DP en las mediciones de referencia relativas a nuestro rendimiento. Todo el software de NetApp es totalmente compatible con RAID-DP. Ningún otro proveedor puede afirmar esto acerca de su implementación de RAID 6.

Las únicas situaciones en las que podría preferir el uso de RAID 4 en lugar de RAID-DP son las pocas en las que no importa la flexibilidad, como el espacio de desecho, las pruebas y los entornos de laboratorio.

Uso de RAID-DP

RAID-DP se introdujo en la versión 6.5 de Data ONTAP.

Creación de volúmenes de RAID-DP

Para crear un agregado (o volumen tradicional) con los grupos de RAID de RAID-DP, seleccione la opción al aprovisionar el almacenamiento con herramientas gráficas de NetApp o agregue el conmutador –t raid_dp a los comandos aggr create o vol create.

Si no se especifica el tipo de RAID, Data ONTAP utilizará el predeterminado, que es RAID-DP para todas las versiones de Data ONTAP que están en venta actualmente. Puede ver cuál es la opción predeterminada para sus sistemas al seleccionar su versión de Data ONTAP en la biblioteca de información de Data ONTAP. (Es necesario disponer de acceso a NetApp NOW®).

                                                                             
Tamaño de grupo de RAID predeterminado y máximo de Data ONTAP 8.0.1 por tipo de unidad
Tipo de unidad
Tipo de RAID
Tamaño de grupo de RAID predeterminado
Tamaño máximo de grupo de RAID
SSD
RAID-DP (predeterminado)
23 (21+2)
28 (26+2)
RAID 4
8 (7+1)
14 (13+1)
SAS/FC
RAID-DP (predeterminado)
16 (14+2)
28 (26+2)
RAID 4
8 (7+1)
14 (13+1)
SATA
RAID-DP (predeterminado)
14 (12+2)
20 (18+2)
RAID 4
7 (6+1)
7 (6+1)


Los grupos de RAID de RAID 4 existentes pueden convertirse a RAID-DP. Las conversiones tienen lugar a nivel de volumen tradicional o de agregado, y debe haber un disco disponible (que sea, como mínimo, tan grande como el disco de mayor tamaño del grupo de RAID) para el disco de paridad diagonal de cada grupo de RAID

Selección de un tamaño de grupo de RAID de RAID-DP

La capacidad para utilizar un mayor tamaño de grupo de RAID con RAID-DP puede compensar el efecto en la capacidad utilizable del disco adicional necesario para la paridad. Para reducir o, incluso, eliminar este efecto, puede utilizar el tamaño de grupo de RAID-DP predeterminado para el tipo de unidad de disco que esté utilizando. Cree agregados basados en varios tamaños de grupos de RAID de RAID-DP predeterminados.

Para las unidades de disco duro (SATA, FC y SAS), el enfoque de tamaño preferido consiste en establecer un tamaño de grupo de RAID que se encuentre entre 12 (10+2) y 20 (18+2) y que consiga una distribución de grupos de RAID equitativa (esto es, en la que todos los grupos de RAID contengan el mismo número de unidades). Si con varios tamaños de grupos de RAID se consigue una distribución equitativa de grupos de RAID, se recomienda utilizar el valor de tamaño de grupo de RAID más alto del intervalo. Si no puede evitar que los grupos de RAID estén incompletos (como ocurre en ocasiones), se recomienda que el valor del agregado no sea inferior a un número de unidades igual al número de grupos de RAID menos uno (de lo contrario, seleccione el tamaño de grupos de RAID inmediatamente inferior). Las deficiencias de unidades que hacen que los grupos de RAID estén incompletos se deben distribuir entre los grupos de RAID de forma equitativa, con el fin de que ningún grupo de RAID tenga una deficiencia superior a una sola unidad.

Gestión de RAID-DP

Apenas es necesario realizar cambios en los procedimientos de funcionamiento al utilizar RAID-DP o cambiar a este. Los sistemas de almacenamiento pueden contener una combinación de volúmenes y agregados de RAID 4 y RAID-DP. Además, los comandos utilizados para la gestión continúan siendo los mismos.

Reconstrucción de RAID-DP

Si se produce un fallo de dos discos, RAID-DP aumenta automáticamente la prioridad del proceso de reconstrucción para que la recuperación se lleve a cabo en menos tiempo. Como resultado, el tiempo necesario para reconstruir los datos cuando se producen este tipo de fallo es ligeramente inferior al tiempo necesario para reconstruir datos tras un fallo de un único disco. Cuando se producen fallos de dos discos, es muy probable que uno haya fallado algo antes que el otro y, al menos, se haya vuelto a crear cierta información mediante la paridad horizontal. RAID-DP se ajusta de forma automática para este caso iniciando la recuperación desde el fallo que se produjo en el segundo disco en los casos en que faltan dos elementos.

Data ONTAP incluye opciones para permitir que un administrador de almacenamiento ajuste el efecto de una reconstrucción de RAID en el rendimiento de un sistema.

La opción raid.reconstruct.perf_impact se define con el valor medio de forma predeterminada. Los tres valores posibles para esta opción son bajo, medio y alto. Si se configura esta opción en el valor bajo, podría aumentar el tiempo necesario para finalizar una reconstrucción de RAID, ya que se establece que la prioridad de los recursos del sistema sea responder a la I/O de primer plano. Al establecer esta opción en alto, las opciones de recuperación de RAID pueden competir con la I/O de primer plano para disponer de un mayor número de recursos del sistema (lo que reduciría el rendimiento de la I/O de primer plano).

En algunas situaciones, estaría justificado el ajuste de esta opción, pero debería ser el último recurso. NetApp recomienda, normalmente, conservar el valor predeterminado.

Si quiere todos los detalles sobre la gestión de RAID-DP, consulte las secciones pertinentes de la Guía de flexibilidad de subsistemas de almacenamiento (TR-3437).

Conclusión

La tecnología RAID-DP de NetApp es una herramienta de flexibilidad importante que se puede utilizar prácticamente con todas las cargas de almacenamiento comunes. Si quiere más información acerca de RAID-DP de NetApp, asegúrese de consultar los documentos TR-3298, sobre la Implementación de RAID de doble paridad para la protección de datos y WP-7005, sobre la Protección RAID 6 de doble paridad sin riesgos en el mercado de la tecnología RAID-DP de NetApp.

>¿Qué opina sobre RAID-DP?

Jay es el ingeniero de marketing técnico encargado de la flexibilidad de los sistemas, subsistemas de almacenamiento (bandejas, unidades, etc.) y RAID. Es autor de diferentes informes técnicos y preguntas frecuentes sobre la configuración y flexibilidad de los subsistemas de almacenamiento.

Carlos trabaja en NetApp desde 2008; está especializado en eficiencia del almacenamiento y tiene una gran experiencia en los campos de deduplicación, compresión de datos y thin provisioning. Suele proporcionar directrices para integrar las tecnologías de eficiencia del almacenamiento más adecuadas y eficaces de NetApp en las configuraciones de los clientes.

Explore
En profundidad

Más conceptos básicos

Información sobre los aspectos fundamentales de las principales tecnologías de NetApp. Publicaciones de esta serie hasta la fecha: