Wikipedia dice "RAID 2 es el único nivel RAID estándar, aparte de algunas implementaciones de RAID 6, que puede recuperar automáticamente datos precisos de la corrupción de un solo bit en los datos".
¿Alguien sabe si la implementación RAID 6 mdadm en Linux es una de esas implementaciones que puede detectar y recuperarse automáticamente de la corrupción de datos de un solo bit. Esto pertenece a CentOS / Red Hat 6 si son diferentes de otras versiones. Intenté buscar en línea pero no tuve mucha suerte.
Con tasas de error SATA de 1 en 1E14 bits, y un disco SATA de 2TB que contiene 1.6E13 bits, esto es especialmente relevante para prevenir la corrupción de datos.
EDITAR 17-jun-2015
Creo que esto es menos preocupante de lo que originalmente pensé (ver Disco duro / SSD) - detección y manejo de errores - ¿se evita de manera confiable la corrupción silenciosa de datos? para más detalles
fuente
RAID5 y RAID6 pueden detectar y, por lo general, corregir la corrupción de bits si verifica la paridad de toda la unidad. Esto se denomina "depuración" o "comprobación de paridad" y, por lo general, tarda entre 24 y 48 horas en la mayoría de los sistemas RAID de producción. Durante ese tiempo, el rendimiento puede verse significativamente degradado. (Algunos sistemas permiten al operador priorizar el fregado sobre el acceso de lectura / escritura o debajo de él). RAID6 tiene una mayor probabilidad de corregirlo, porque puede corregirlo si tiene dos fallas en la unidad, mientras que RAID5 solo puede manejar una falla en la unidad, y las fallas en la unidad son más probables cuando está fregando debido al aumento de la actividad.
fuente
Hubiera agregado esto como un comentario pero no tengo suficiente reputación; Quería aclarar: RAID5 puede DETECTAR la corrupción de bits, pero no sabe qué unidad tiene la corrupción sin un error de lectura. Como resultado, un exfoliante no pudo solucionar esto sin un error de lectura; lo más probable es que simplemente lo registre y actualice el bit de paridad para que coincida. El algoritmo de RAID6 depende de la posición, por lo que puede detectar qué unidad contiene el error y corregir la corrupción de bits.
fuente
Todas las respuestas anteriores son incorrectas con respecto a las capacidades de RAID 6. Los algoritmos RAID 6 operan byte por byte al igual que RAID 5, y si un solo byte en cualquier unidad está dañado, incluso si la unidad no indica ningún error, puede ser detectado y corregido. El algoritmo para hacerlo se explica completamente en
https://mirrors.edge.kernel.org/pub/linux/kernel/people/hpa/raid6.pdf
Para realizar esta verificación, las unidades de paridad P y Q también deben leerse junto con las unidades de datos. Si la paridad calculada P 'y Q' difiere sin errores de unidad, un análisis puede determinar cuál de las unidades es incorrecta y corregir los datos.
Además, si la identificación de la unidad es para una unidad que no está presente (como la unidad 137 si solo hay 15 unidades), más de una unidad está proporcionando datos corruptos PARA ESTE BYTE, lo que indica un error de error no corregible. Cuando hay mucho menos de 256 unidades en el conjunto, esto se detecta con alta probabilidad por byte, y dado que hay muchos bytes en un bloque, con una probabilidad extremadamente alta por bloque. Si la identificación de la unidad no es consistente para todos los bytes dentro del bloque RAID, nuevamente, más de una unidad está proporcionando datos corruptos, y generalmente uno puede rechazar la condición, pero siempre y cuando todas las identificaciones de la unidad sean válidas, el bloque no necesariamente necesita ser rechazado.
Se necesita más tiempo que el tiempo de verificación habitual para realizar esta corrección, pero solo se debe realizar con el cálculo del síndrome (P y Q) muestra un error.
Dicho todo esto, sin embargo, no he examinado el código mdadm para determinar si se maneja la corrupción de un solo byte. Soy consciente de que mdadm informa errores del síndrome RAID6 en la exploración mensual, pero del mensaje de error no está claro si se están corrigiendo; no detiene la matriz de unidades ni identifica ninguna unidad particular en el mensaje.
fuente