Blog » CASO DE ESTUDIO – “Raid 5 vs Raid 10 para video on demand”

Categorias: Blog | Tags: , , ,

Como empresa dedicada a la distribución de contenidos a través de la red nos hemos encontrado en el camino con  múltiples situaciones en las cuales ha sido necesario tomar una decisión muy crítica respecto del tipo de almacenamiento, tecnología y prestaciones necesarias para garantizar una alta disponibilidad y performance en el “delivery” de video bajo demanda (llamado por sus siglas en inglés VOD) independizando hasta donde ha sido posible los costos involucrados en las inversiones necesarias para ello.

Normalmente en nuestro país se ha establecido la condición “de facto estándar” que asigna a los sistemas RAID-5 el estatus de “mejor alternativa de almacenamiento” por sus características de redundancia y performance en lectura respecto de otros modelos de RAID, lo cual históricamente se ha hecho tomando como consideración fundamental el bajo costo por Gigabyte inherente a este modelo versus el almacenamiento ligado a los esquemas con redundancia completa y directa como el RAID-10.

Pero antes de comenzar la batalla hagamos una descripción general de estos esquemas y qué ofrece cada uno de ellos.

Los contendores muestran sus dones!

1.- Capacidad (CA):

Dentro de los esquemas redundantes el RAID-5 es una de las mejores alternativas en términos de uso del espacio de almacenamiento entregando una capacidad útil (CU) igual a la capacidad del la suma nominal de la capacidad de todos los discos (S) multiplicado por la cantidad de discos (CD) menos uno, todo dividido por la cantidad de discos.

CU = S*(CD-1)/CD

Por su lado el RAID-10 es simplemente un doble espejo de RAID-1 (también llamado RAID1+0 pues hace un “stripe” de dos espejos RAID-1) lo cual implica que el almacenamiento efectivo de un arreglo cualquiera es la suma de todas las capacidades de los discos divididas por dos.

CA = (Cd1+Cd2+Cd3+Cd4)/2

Donde Cdx es la capacidad de un disco cualquiera en este ejemplo de un arreglo de cuatro discos

En general tenemos que el espacio aprovechable para un arreglo clásico de 4 discos (por ejemplo con unidades de 600 GBytes) es, en el RAID-5 hasta un máximo de 1.800 Gbytes y en el RAID-10 solo de 1.200 Gbytes.

2.- Redundancia:

La forma en que un RAID-5 maneja las paridades ha resultado históricamente compleja de entender para la mayoría de los administradores de redes. Una forma simple de explicar el modo en el que se distribuye la información, es entendiendo el algoritmo “round robin” que almacena los datos de manera alterna y ordenada con una paridad saltando consecutivamente de un disco al siguiente cuando se suman datos al registro.

Se entiende entonces que el RAID-5 puede presentar fallas sin perder integridad – en uno y solo uno de sus discos – en tanto que el RAID-10 puede tolerar hasta dos fallos, siempre que ellos no estén en el mismo sub-espejo del sistema (o span físico).

3.- Velocidad secuencial (MB/s o MBps):

Suponiendo que se ha elegido un adecuado “strip size” para el formato de los discos tenemos que el RAID-10 puede ser hasta un 15% mas lento que el RAID-5 bajo ciertos escenarios. Por su parte en la escritura el RAID-5 sufre de un importante penalidad de hasta un 100% de pérdida de performance general, debido al cálculo de paridad que se realiza por la unidad reguladora de discos antes de localizar la redundancia en el arreglo

4.- Velocidad random (IOPS):

Siguiendo la misma premisa de tamaño de bloques y política de lectura de datos ambos esquemas proveen de un desempeño equivalente (en especifico para VOD es un 10% mas bajo para el RAID-10) y en el caso de la escritura el RAID-5 sufre la misma penalidad de un 100% comparado con el RAID-10 por los mismos efectos que se heredan del modelo de paridad distribuida descritos en el punto anterior.

5.- Uso de recursos:

Usualmente encontraremos que los servidores, NAS, DAS y sistemas de almacenamiento para propósito VOD de alto nivel SAN siempre descansarán el cálculo de paridad y control de unidades lógicas sobre una o dos controladoras de discos con memorias caché de entre 512MB y 2GB. Serán ellas quienes asumirán la mayor parte de la carga transaccional dejando el procesador del servidor (en caso que se esté usando uno) libre para operaciones de proceso general y los datos de mayor acceso listos a ser leídos desde la memoria de la controladora y no del sistema de discos.

Esto, de todas formas no quita que los esquemas de RAID-5 tengan un uso muy intensivo de recursos de cálculo de paridades (similar al del RAID-6), situación que es completamente ajena al RAID-10 pues en él se escriben los datos de manera directa sin cálculos en tiempo real en los discos y sus correspondientes parejas.

En general, el concepto de aplicación de un sistema crítico para Grupo Z se basa en el siguiente precepto: “Los sistemas de almacenamiento no solo se evalúan por cómo se comportan cuando funcionan sino también cuando fallan pues algún día podrían hacerlo…”

DATOS A CONSIDERAR:

En general un RAID-5 resulta ser entre un 8% a un 10% más veloz que un RAID-10 en lectura tanto secuencial como aleatoria para archivos de video. Esto sin embargo no significa que el RAID-10 sea siempre mas lento que el RAID-5 ya que para todos los otros tipos de aplicaciones tales como son el webserving, las bases de datos, los servidores de correos e incluso el live streaming el RAID-10 supera al RAID-5 por un margen que oscila entre un 5% a un 90%.

Aqui es importante destacar que el rendimiento de un RAID-5 se perjudica de forma inversamente proporcional a el tamaño de la “granularidad” o “strip-size” que se haya determinado al inicio del formato del arreglo RAID pues al contrario que en el RAID-10 donde la información se almacena de manera directa, en el RAID-5 el sistema tiene que escribir una paridad en todos y cada uno de los discos para mantener la redundancia y al momento de la lectura debe “saltarse” cada una de estas paridades de clúster en clúster para reconstruir la data lo cual (para estos casos) deja mas o menos las respectivas performances al mismo nivel entre los dos niveles aquí descritos.

Por la naturaleza compleja del RAID-5 e independientemente de los algoritmos de corrección de errores, la tecnología involucrada en la confección y manufactura de los discos de clase empresarial y sus indemnizaciones (entre las cuales se encuentran los algoritmos TLER, los sistemas de aislamiento para vibraciones en configuraciones de múltiples discos e incluso las garantías extendidas de hasta 5 años) siempre existe la posibilidad de que la controladora o uno de los discos “comience” a fallar de manera sutil y esporádica devolviendo datos corruptos.

Este error es conocido en la industria como “falla parcial de medios” y en algunos casos puede no reportarse de manera adecuada al sistema operativo, lo que deja espacio para datos catastróficamente perdidos, fallas no recuperables e interminables dolores de cabeza (que con suerte no nos despertarán a mitad de la noche).

La posibilidad de falla natural y mínima de un RAID-10 es por concepto 50% menor al del RAID-5 pues se necesita que dos discos fallen simultáneamente en el arreglo y ellos estén en un mismo espejo (lo que disminuye aún más la probabilidad).

En estado degradado un RAID-5 pierde hasta un 70% de performance tanto en lectura como en escritura en tanto que un RAID-10 pierde menos de un 8%.

Dada la baja de performance en estado degradado, el RAID-5 debe forzar sus recursos para poder atender la misma concurrencia VOD, por tanto, los discos restantes pueden fallar en línea mientras el RAID está en este estado. Particularmente el punto más delicado ocurre con la sobredemanda de IOPS si el equipo de almacenamiento es productivo y se solicita la reconstrucción del arreglo  en un momento de alto tráfico.

En comparación, un RAID-10 no sufre estrés más allá del producido por la copia de un disco a su correspondiente espejo, a diferencia del RAID-5 que debe reconstruir la información acudiendo a todos y cada uno de los discos sobrevivientes. Esto implica que la reconstrucción de un disco en este último raid tiende a tomar un número de horas considerable dependiendo del tamaño del volúmen total.
En algunos casos la reparación a nivel productivo de los modelos RAID-5 y RAID-6 ha llegado a tomar varios días en vez de las pocas horas o incluso minutos en que un RAID-10 levanta su espejo desde cero.

Los RAID-10 tienen ventajas administrativas que permiten dividir el arreglo, declarar un disco como inactivo (supongamos un mantenimiento programado) para hacer un backup del disco y luego pedir el regenerado del disco.

Adendum:

Es importante entender que los estudios de prestancia de los fabricantes de discos sobre sus sobre unidades de almacenamiento se hacen,  - para todos los efectos – siguiendo criterios que usan inferencia estadística, cosa que muchas empresas dedicadas al almacenamiento han malinterpretado erróneamente en las especificaciones MTBF y AFR como elementos “de ciencia cierta” que garantizan el comportamiento de la unidad.

Para el caso particular son conocidas las especificaciones de discos que aseguran 1.2 millones de horas de operación sin fallas ó MTBF (mean time between faliure) pero ellas solo indican que sobre una gran muestra de discos se sumaron todos los tiempos de operación y al momento de fallo se cronometró un tal o cual error.

Teniendo esto claro será más eficaz y real tomar nota de variables como son la AFR (Anualized Fail Rate) que indica el inverso MTBF o bien, dice en buen castellano que “de un grupo de cien unidades de discos se puede esperar un cierto porcentaje de fallas a lo largo de un año de uso estándar”.

El AFR es una variable que por lo general se mueve entre 0,4 y 1 lo que significa que si tenemos cien discos nos preparemos para que al menos 0,4 presenten un problema el primer año calendario de uso y que este número subirá conforme se vaya completando la vida útil de medio.

Muchos se preguntarán porque hemos insistido en hablar de discos en vez de sacar a colación las nuevas memorias SSD. La razón es simple! y es que el VOD tal cual está planteado aqui hoy requiere de cantidades de almacenamiento medidas en la escala de los terabytes y al menos que se trate de un proyecto que requiera de un altísimo performance no resulta económicamente viable pensar en estas tecnologías por el momento.

EN NUESTRO PROXIMO POST…

Los administradores de servicios de alta demanda y en especial aquellos que requieren del acceso a videos de la forma más veloz y económica que la tecnología pueda ofrecer han hecho uso de técnicas que explicaremos en un próximo análisis de nuestro Blog y que ejercitan prácticas de localización a través de la aplicación de tecnologías de grabación perpendicular, número de platos y adecuada ubicación de archivos en los cilindros de los arreglos RAID, de modo que se aprovechen las ventajas físicas ligadas a la densidad de data por unidad de área y la velocidad lineal tangencial en los extremos de los platos de los discos.

Continúa a la siguiente parte AQUÍ

Transmisión “HD” Chile – (Uruguay / Paraguay)

El Desafío: Realizamos las transmisiones masivas y en alta calidad de los partidos de fútbol Chile – (Uruguay / Paraguay) en simultáneo para dos estaciones de TV líderes proporcionándoles TODOS los medios para esta realización en un escenario con tiempos de respuesta menores a 24 [...]  Leer Más »

Los 4 Jinetes del Apocalipsis (En Video)

En nuestro post anterior desmitificamos algunas verdades “a medias” en el mundo de la alta definición para HDTV y en esta oportunidad hemos decidido escribir el siguiente artículo que versa sobre los defectos recurrentes del [...]  Leer Más »