Compartimos nuestra experiencia de cómo se muestran los SSD en RAID y qué nivel de matriz es más rentable

En el artículo anterior, ya abordamos la cuestión de "¿Será RAID aplicable a los SSD?", Utilizando las unidades Kingston como ejemplo, pero lo hicimos solo en el marco del nivel cero. En este artículo, analizaremos las opciones para usar soluciones NVMe profesionales y domésticas en los tipos más populares de matrices RAID y hablaremos sobre la compatibilidad de los controladores Broadcom con las unidades Kingston.



¿Por qué necesito RAID en un SSD?


Las ventajas de las matrices de almacenamiento basadas en SSD sobre las matrices de almacenamiento en disco duro incluyen un tiempo de acceso reducido a la unidad y un rendimiento superior de lectura / escritura. Sin embargo, para el rendimiento ideal de RAID basado en SSD, se requiere una combinación óptima de procesador, caché, software y hardware. Cuando todos estos factores funcionan perfectamente juntos, una matriz RAID de un SSD puede superar significativamente una configuración comparable utilizando los HDD tradicionales.

Un SSD típico consume menos energía que los discos duros, por lo que al combinar una gran cantidad de unidades de estado sólido en una matriz RAID, ahorrar energía en comparación con una matriz RAID de un HDD también puede reducir los costos al pagar las facturas de electricidad corporativas.

Sin embargo, SSD RAID tiene limitaciones y desventajas: en particular, un precio más alto por gigabyte de espacio en comparación con los discos duros de capacidad comparable. Y el MTBF flash está limitado por un cierto número de ciclos de reescritura. Es decir, las unidades SSD tienen una cierta vida útil, que depende de la operación: cuanto más activamente se reescriba la información, más rápido fallará la unidad. Los SSD empresariales, por otro lado, tienen una vida decente comparable a los discos duros mecánicos.

Cómo viven los SSD de Kingston en modo RAID con controladores Broadcom


En los albores del advenimiento de los SSD, los diseños RAID estaban cargados de muchos matices. Incluyendo debido al uso de unidades HDD menos tolerantes a fallas. Las unidades de estado sólido son mucho más confiables que sus contrapartes basadas en discos magnéticos. Como sabemos, no hay elementos móviles en las soluciones SSD, por lo que el daño mecánico se reduce a cero. La falla del SSD debido a sobretensiones también es poco probable, dado que a nivel de la PC de su hogar y de cualquier servidor está protegido por UPS, regletas e incluso una fuente de alimentación.

Al mismo tiempo, las unidades de estado sólido tienen otra ventaja importante: incluso si las celdas de memoria están gastadas para escribir, aún se pueden leer datos de ellas, pero si el disco magnético está dañado, por desgracia.



Hoy en día, el uso de soluciones SSD en matrices RAID de diferentes niveles es una práctica bastante normal. Lo principal es elegir las unidades de estado sólido adecuadas, cuya latencia es mínima. También es ideal para usar SSD del mismo fabricante y el mismo modelo para que no haya una mezcla de unidades que admitan diferentes tipos de cargas y se construyan sobre la base de diferentes tipos de memoria, controladores y otras tecnologías. Es decir, si decidimos comprar cuatro o 16 SSD Kingston NVMe para crear una matriz RAID, entonces sería mejor si todos provienen de la misma serie y gama de modelos.

Por cierto, en el último artículo, citamos los controladores Broadcom como ejemplo cuando hablamos sobre la SSD NVMe de Kingston. El hecho es que en los manuales de estos dispositivos, las unidades compatibles (incluidas las soluciones del fabricante estadounidense SSD) se registran de inmediato, con lo que el controlador funcionará sin problemas. Es necesario confiar en esta información al elegir el paquete "SSD del controlador" para RAID.

Analizamos el trabajo de los SSD de Kingston en los tipos de RAID más populares: "1", "5", "10", "50"


Por lo tanto, el nivel "cero" de RAID no proporciona redundancia de datos, sino que solo aumenta la productividad. RAID 0 no proporciona ninguna protección de datos, por lo tanto, no lo consideraremos dentro del segmento corporativo. RAID 1, por otro lado, proporciona redundancia completa, pero solo un aumento de rendimiento modesto, y por lo tanto, debe considerarse si la mejora del rendimiento no es un factor fundamental al crear una matriz RAID a partir de un SSD.

RAID 1 basado en SSD de Kingston y controladores Broadcom


Entonces, la matriz RAID de primer nivel basada en el controlador Broadcom MegaRAID 9460-16i combina de dos a 32 unidades Kingston, que son copias entre sí, y proporciona una redundancia completa. Si usa discos duros tradicionales, la velocidad de escritura y lectura de datos se mantuvo al nivel de este disco duro en sí, luego, al usar soluciones SSD NVMe, obtenemos un aumento de diez veces en el rendimiento. Especialmente en términos de tiempo de acceso a datos. Por ejemplo, con dos SSD Kingston DC1000M U.2 NVMe en el servidor RAID 1, obtenemos 350,000 IOPS al leer datos aleatorios y 75,000 IOPS al escribir.



En términos de velocidad de lectura secuencial, los resultados corresponderán a las características de la unidad: 3200 MB / s. Pero, dado que ambos SSD NVMe están operativos, los datos se pueden leer al mismo tiempo, lo que hace que las operaciones de lectura sean bastante rápidas. Pero la velocidad de escritura (que se afirma es de 2000 MB / s) será más lenta, porque cada operación de escritura se realiza dos veces.



La matriz RAID 1 es ideal para bases de datos pequeñas o cualquier otro entorno que requiera tolerancia a fallas pero poca capacidad. La duplicación de unidades ayuda especialmente en escenarios de recuperación ante desastres (el rendimiento se deteriora un poco), ya que proporciona una "reanimación" instantánea de datos importantes si falla una de las unidades de la matriz. Pero, dado que este nivel de protección requiere duplicar la capacidad para almacenar una copia espejo de datos (100 TB requerirán 200 TB de espacio de almacenamiento), muchos sistemas empresariales usan opciones de almacenamiento más económicas: RAID 5 y RAID 6.

RAID 5 basado en SSD de Kingston y controladores Broadcom


Para organizar una matriz RAID de quinto nivel, necesitamos al menos tres unidades, cuyos datos están divididos (escritos cíclicamente en todas las unidades de la matriz), pero no están duplicados. Al organizarlos, uno debe tener en cuenta su estructura más compleja, ya que aquí aparece un concepto como "suma de verificación" (o "paridad"). Este concepto se refiere a la función algebraica lógica XOR (también es el exclusivo "OR"), que dicta el uso de al menos tres unidades en la matriz (máximo - 32). En este caso, la información de paridad se registra en todos los "discos" de la matriz.



Para una serie de cuatro SSD SATA DC500R de Kingston con una capacidad de 3.84 TB cada una, obtenemos 11.52 TB de espacio y 3.84 para las sumas de verificación. Y si combina 16 unidades Kingston DC1000M U.2 NVMe en un RAID de quinto nivel con una capacidad de 7.68 TB, le enseñaremos 115.2 TB con una pérdida de 7.68 TB. Como puede ver, cuantas más unidades, mejor. También es mejor porque mientras más unidades tengan RAID 5, mayor será el rendimiento total de escritura. Y la lectura lineal alcanzará RAID 0.



Un grupo de unidades RAID 5 proporciona un alto rendimiento (especialmente para archivos grandes) y redundancia con una pérdida de potencia mínima. Este tipo de organización de matriz es el más adecuado para redes que realizan muchas operaciones de E / S pequeñas al mismo tiempo. Pero no vale la pena usarlo para tareas que requieren una gran cantidad de operaciones de escritura de bloques pequeños o pequeños.
Hay un matiz más: si al menos una de las unidades NVMe falla, RAID 5 entra en modo de degradación y la falla de otro dispositivo de almacenamiento puede volverse crítica para todos los datos. En el caso de una falla de una sola unidad en la matriz, el controlador RAID usa la información de paridad para recrear todos los datos faltantes.

RAID 10 basado en SSD de Kingston y controladores Broadcom


Entonces, RAID 0 nos proporciona un aumento doble en velocidad y tiempo de acceso, y RAID 1 brinda confiabilidad. Sería ideal combinarlos, y aquí RAID 10 (o 1 + 0) viene al rescate. "Diez" se ensambla a partir de cuatro unidades SSD SATA o NVMe (máximo - 32) e implica una serie de "espejos", el número de unidades en el que siempre debe ser un múltiplo de cuatro. Los datos en esta matriz se escriben particionando en bloques fijos (como en el caso de RAID 0) e intercalando entre unidades, distribuyendo copias entre las "unidades" en la RAID 1. Y debido a la posibilidad de acceso simultáneo a varios grupos de unidades, RAID 10 muestra un alto rendimiento.



Dado que RAID 10 puede distribuir datos a través de múltiples pares de espejos, esto significa que puede permitir la falla de una unidad en un par. Sin embargo, en el caso de una falla de ambos pares de espejos (es decir, las cuatro unidades), se producirá una pérdida de datos inevitable. Como resultado, también obtenemos buena tolerancia a fallas y confiabilidad. Pero vale la pena tener en cuenta que, como RAID 1, una matriz de décimo nivel usa solo la mitad de la capacidad total y, por lo tanto, es una solución costosa. Sí, y difícil de configurar.

RAID 10 es adecuado para su uso con almacenes de datos que requieren 100% de redundancia de grupos de discos espejo, así como un mayor rendimiento de E / S RAID 0. Es la mejor solución para bases de datos medianas o cualquier entorno que requiera mayor tolerancia a fallas que RAID 5)

RAID 50 basado en SSD de Kingston y controladores Broadcom


Una matriz combinada, similar a RAID del décimo nivel, que es una matriz de nivel cero creada a partir de matrices del quinto nivel. Como en el caso anterior, el objetivo principal de esta matriz es obtener un rendimiento duplicado mientras se mantiene la confiabilidad de los datos en las matrices RAID 5. Al mismo tiempo, RAID 50 proporciona un mayor rendimiento de escritura y una mejor protección de datos que la RAID 5 estándar en caso de falla del disco, y también es capaz de recuperación más rápida en caso de falla de una de las unidades.



Un grupo de discos RAID 50 divide los datos en bloques más pequeños y luego los distribuye a cada matriz RAID 5. Un grupo de discos RAID 5, a su vez, también divide los datos en bloques más pequeños, calcula la paridad, realiza una operación lógica OR en los bloques, y luego realiza operaciones de escritura en bloques de datos y paridad para cada disco en el grupo de discos.

Si bien el rendimiento disminuye inevitablemente en caso de falla de una de las unidades, no es tan significativo como en una matriz RAID 5, ya que una falla afecta solo a una de las matrices, dejando la otra completamente operativa. De hecho, un RAID 50 puede soportar hasta ocho fallas de la unidad HDD / SSD / NVMe si cada unidad fallida está en una matriz RAID 5 separada.



RAID 50 se utiliza mejor para aplicaciones que requieren alta confiabilidad y deben manejar una gran cantidad de solicitudes, manteniendo altas tasas de transferencia de datos y unidades de menor costo que RAID 10. Sin embargo, dado que se requieren al menos seis unidades para configurar RAID 50, el costo no está completamente excluido como factor. Uno de los inconvenientes de RAID 50 es que, como RAID 5, necesita un controlador sofisticado: como el Broadcom MegaRAID 9460-16i que mencionamos en un artículo anterior.

También vale la pena señalar que RAID 50 tiene menos espacio en disco que RAID 5, debido a la asignación de capacidad para el contenido de los registros de paridad. Sin embargo, todavía tiene más espacio utilizable que otros niveles de RAID, especialmente aquellos que usan la duplicación. Con un requisito mínimo de seis unidades, RAID 50 puede ser una opción costosa, pero el espacio extra en el disco justifica el costo al proteger los datos corporativos. Este tipo de matriz se recomienda para trabajar con datos que requieren alta confiabilidad de almacenamiento, alta frecuencia de solicitudes, alta velocidad de transmisión y alta capacidad de alojamiento.

RAID 6 y RAID 60: no nos hemos olvidado de ellos


Como hemos hablado de las matrices de los niveles quinto y quincuagésimo, es un pecado no mencionar tipos de organización de matrices como RAID 6 y RAID 60.



El rendimiento de RAID 6 es similar al RAID 5, pero aquí se dan al menos dos unidades bajo paridad, lo que permite que la matriz sobreviva al fallo de dos unidades sin pérdida de datos (en RAID 5, esta situación es extremadamente indeseable). Esto asegura una mayor fiabilidad. De lo contrario, todo es igual que en la matriz de quinto nivel: en caso de falla de uno o dos discos, el controlador RAID usa bloques de paridad para recrear toda la información que falta. Si fallan dos unidades, la recuperación no ocurre simultáneamente: primero, la primera unidad se reanima, luego la segunda. Por lo tanto, se realizan dos operaciones de recuperación de datos.



Es fácil adivinar que si RAID 50 es una matriz de nivel cero de matrices de quinto nivel, entonces RAID 60 es una matriz de nivel cero de matrices de sexto nivel, del que acabamos de hablar. Es decir, una organización de almacenamiento RAID de este tipo le permite sobrevivir a la pérdida de dos SSD en cada grupo de unidades RAID 6. El principio de funcionamiento es similar al descrito en la sección RAID 50, pero el número de fallas que puede soportar una matriz del sexagésimo nivel aumenta de 8 a 16 unidades. Por lo general, estas matrices se utilizan para el servicio al cliente en línea, que requiere una alta tolerancia a fallas.

Para resumir:


Aunque la duplicación proporciona más tolerancia a fallas que RAID 50/60, también requiere mucho más espacio. Dado que la cantidad de datos se duplica, en realidad solo recibe el 50% de la capacidad total de las unidades instaladas en el servidor para registrar y almacenar información. Elegir entre RAID 50/60 y RAID 10 probablemente dependerá de sus presupuestos, capacidad del servidor y sus necesidades de protección de datos. Y el costo se destaca cuando hablamos de soluciones SSD (tanto de clase corporativa como de consumo).

Es igualmente importante que ahora lo sepamos con certeza: RAID basado en SSD es una solución completamente segura y una práctica normal para las empresas modernas. Como parte del uso doméstico, también hay una razón para cambiar a NVMe, si los presupuestos lo permiten. Y si todavía tiene una pregunta, por qué todo esto es necesario, regrese al comienzo del artículo: ya lo hemos respondido en detalle.

Este artículo fue preparado con el apoyo de nuestros colegas de Broadcom, quienes proporcionan sus controladores a los ingenieros de Kingston para que los prueben con unidades SATA / SAS / NVMe de clase empresarial. Gracias a esta simbiosis amigable, los clientes no tienen que dudar de la confiabilidad y estabilidad de las unidades Kingston con los controladores HBA y RAID de Broadcom.

Puede encontrar información adicional sobre los productos Kingston en el sitio web oficial de la compañía.

Source: https://habr.com/ru/post/482248/


All Articles