¿Qué es exactamente un URE?

13

He estado investigando RAID5 Vs RAID6 últimamente y sigo viendo que RAID5 ya no es lo suficientemente seguro debido a las clasificaciones URE y al aumento del tamaño de las unidades. Básicamente, la mayor parte del contenido que encontré dice que en RAID5, en caso de que tenga una falla en el disco, si el resto de su matriz es de 12TB, entonces tiene casi un 100% de posibilidades de cumplir con un URE y perder sus datos.

La cifra de 12 TB proviene del hecho de que los discos tienen una capacidad de lectura de 10 ^ 14 bits para alcanzar un URE.

Bueno, hay algo que no entiendo aquí. La cabeza del sector realiza una lectura, lo que puede hacer que la lectura falle es que la cabeza muere o el sector muere. También puede ser que la lectura no funcione por alguna otra razón (no sé, como una vibración hizo que la cabeza saltara ...). entonces, déjenme abordar las 3 situaciones:

  • la lectura no funciona: eso no es irrecuperable, ¿verdad? Se puede volver a intentar.
  • la cabeza muere: esto seguramente sería irrecuperable, pero eso también significa que el plato completo (o al menos el lado) sería ilegible, sería más alarmante, ¿no?
  • el sector muere: también totalmente irrecuperable, pero aquí no entiendo por qué el disco de 4TB tiene una calificación de 10 ^ 14 para la URE y el 8TB también tiene una calificación de 10 ^ 14 para la URE, eso significaría los sectores en el 8 TB (probablemente tecnología más nueva) son la mitad de confiables que las de 4 TB, eso no tiene sentido.

Como puede ver, de los 3 puntos de falla que identifico, ninguno tiene sentido. Entonces, ¿qué es exactamente una URE, quiero decir concretamente?

¿Hay alguien que me pueda explicar eso?

Editar 1

Después de la primera ola de respuestas, parece que la razón es la falla del sector. Lo bueno es que el firmware, el controlador RAID y el sistema de archivos OS + tienen un procedimiento para detectarlo y reasignar sectores de manera temprana.

Bueno, ahora sé qué es una URE (en realidad, el nombre se explica por sí mismo :)).

Todavía estoy desconcertado por las causas subyacentes y principalmente por la calificación estable que otorgan.

Algunos atribuyeron el sector defectuoso a fuentes externas (ondas cósmicas), luego me sorprende que la tasa de URE se base en el recuento de lectura y no en la edad, las ondas cósmicas deberían impactar más en un disco más viejo simplemente porque ha sido expuesto Además, creo que esto es más una fantasía, aunque podría estar equivocado.

Ahora viene la otra razón que se relaciona con el desgaste del disco y algunos señalaron que las densidades más altas dan dominios magnéticos más débiles, eso tiene mucho sentido y yo seguiría la explicación. Pero como se explica muy bien aquí , los discos más nuevos de diferentes tamaños se obtienen principalmente al colocar más o menos del mismo plato (y luego la misma densidad) en el chasis del HDD. Los sectores son iguales y todos deberían tener la misma fiabilidad, por lo que los discos más grandes deberían tener una calificación más alta que los discos más pequeños, los sectores se leen menos, este no es el caso, ¿por qué? Sin embargo, eso explicaría por qué los discos más nuevos con tecnología más nueva no obtienen una mejor calificación que los antiguos, simplemente porque la mejor ganancia de tecnología se ve compensada por la pérdida debido a una mayor densidad.

Memes
fuente
"URE y perder sus datos" afaik (y puedo estar equivocado), un URE solo significa que se pierden algunos datos, no todos, y puede intentar la reconstrucción nuevamente después de golpear el URE. Dicho esto, la incursión 10 o zfs es algo así como en estos días.
Sirex
1
"los sectores [en los discos más nuevos] son ​​la mitad de confiables que [en los viejos], eso no tiene sentido " No estoy seguro de estar de acuerdo. A medida que las zonas magnéticas se vuelven cada vez más pequeñas (lo que implica una mayor densidad de datos en el paquete del mismo tamaño), es muy razonable que se vuelvan cada vez más susceptibles de borrado accidental (emisiones de rayos gamma locales, eventos de rayos cósmicos, etc.). Esta creciente susceptibilidad de las unidades modernas es la razón por la cual ninguno de nosotros desplegaría unidades no RAID en todo lo que importa, y una razón por la cual la mayoría de nosotros hemos renunciado a RAID-5.
MadHatter
El verdadero problema aquí es que demasiadas matrices RAID están convirtiendo una única URE en un error de matriz completa. Un solo URE debería causar la pérdida de un solo bloque RAID. Deje que el sistema de archivos descubra si ese bloque estaba incluso en uso, lo más probable es que realmente no importe.
MSalters
1
@Memes no, los números se cancelan. El doble de sectores también es el doble de oportunidades de falla, por lo que la misma tasa de error de lectura equivale a la misma confiabilidad por byte. Por eso se usa en primer lugar.
hobbs

Respuestas:

12

Un URE es un error de lectura irrecuperable. Algo ha sucedido que ha provocado que falle la lectura de un sector que la unidad no puede reparar. La electrónica de la unidad es sofisticada, solo pasarán los datos si han podido leerlos correctamente desde el disco. La electrónica del variador intentará leer un sector defectuoso varias veces antes de declararlo dañado.

Qué causa el error de lectura: aquí no soy un experto (se produce un movimiento del brazo), pero el envejecimiento del disco puede hacer que las tolerancias de fabricación se vuelvan relevantes. Los dominios magnéticos pueden debilitarse. Los rayos cósmicos pueden causar daños, etc. Esencialmente es una falla aleatoria.

¿Cómo afecta esto a RAID 5?

Un RAID 5 consiste en bandas de nivel de bloque con paridad distribuida. Los bloques de paridad se calculan XORing los bits de los bloques de datos juntos. La función XOR básicamente dice que si todos los bits son iguales, el resultado es 0; de lo contrario, es 1. Al calcular la paridad, toma los primeros 2 bits y los XOR, luego XOR el resultado con el siguiente bit, etc.

1010   data      or    1010 data
1100   data            1100 data
0110   parity          0011 data
                       0101 parity

La naturaleza de la función XOR es tal que si algún disco muere y se reemplaza, los datos que deberían estar en él pueden reconstruirse a partir de los discos restantes.

1010  data       or    1010 data
      damaged               damaged
0101  parity           0011 data
                       0101 parity

Como puede ver, los datos dañados se pueden reconstruir XORing los datos restantes y la paridad.

¿Cómo afecta esto un URE?

Un URE solo es significativo durante una reconstrucción RAID 5.

Cuando reconstruye un RAID 5, hay una gran cantidad de lectura por hacer. Cada bloque de datos debe leerse para reconstruir los datos en el nuevo disco. Si se produce un URE, los datos para el bloque relevante no se pueden recuperar, por lo que sus datos son inconsistentes. Para discos suficientemente grandes en un R5 suficientemente grande, el número de bits leídos para reconstruir el disco reemplazado excede el valor de URE de, por ejemplo, 1 bit en 10 ^ 14 de lectura.

usuario9517
fuente
2
Un solo disco de 8TB tiene más de 6 * 10 ^ 13 bits, por lo que con solo tres de esos discos en un RAID-5, es más probable que un URE durante una reconstrucción. Ah, y +1 de mi parte.
MadHatter
3
La afirmación (escrita en la pregunta y en algunas respuestas y comentarios, también en otras preguntas, de hecho en todo Internet) de que después de leer 12 TB un error de lectura es casi seguro es falsa. No lo creo No lo hagas Lo sé. Al leer 12 (o más) TB de cualquiera de sus discos y observar que no ocurrió ningún error. Por favor, hazlo y detén este mito. Gracias.
David Balažic
1
@IanKemp No, no lo es. Lo intenté. Obviamente no lo hiciste. (también, la mejor calificación solo mueve un poco el mito, no hay cambio real)
David Balažic
1
@ DavidBalažic ¡Evidentemente, el tamaño de muestra de uno invalida la totalidad de la teoría de probabilidad! Le sugiero que envíe un documento al Comité Nobel.
Ian Kemp
1
@IanKemp Si alguien afirma que todos los números son divisibles por 7 y encuentro UNO que no lo es, entonces sí, un solo hallazgo puede invalidar una teoría completa. Por cierto, ni una sola persona ha confirmado el mito en la práctica (por experimento), ¿verdad? ¿Por qué deberían hacerlo, cuando creer es más que conocimiento ...
David Balažic
9

Entonces, ¿qué es exactamente una URE, quiero decir concretamente?

Los discos duros no almacenan simplemente los datos que usted les pide. Debido al tamaño cada vez menor del dominio magnético y al hecho de que los discos duros almacenan datos de forma analógica en lugar de binaria (el firmware del disco duro obtiene una señal analógica del plato, que se traduce en una señal binaria, y esta traducción es parte de la salsa secreta del fabricante), prácticamente siempre hay algún grado de error en una lectura, que debe ser compensado.

Para garantizar que los datos se puedan volver a leer, el disco duro también almacena los datos de corrección de errores de reenvío junto con los datos que le pidió que almacenaran.

En operaciones normales, los datos FEC son suficientes para corregir los errores en la señal que se vuelve a leer desde el plato. El firmware puede reconstruir los datos originales, y todo está bien. Este es un error de lectura recuperable que se expone en SMART como el atributo de tasa de error de lectura (atributo SMART 0x01) y / o ECC de hardware recuperado (atributo SMART 0xc3).

Si por alguna razón la señal se degrada por debajo de cierto punto, los datos FEC ya no son suficientes para reconstruir los datos originales. En ese punto, según la teoría, el firmware aún podrá detectar que los datos no se pueden volver a leer de manera confiable, pero no puede hacer nada al respecto. Si varias de estas lecturas fallan, el disco tiene que informar de alguna manera al resto de la computadora que la lectura no se pudo realizar con éxito. Lo hace señalando un error de lectura irrecuperable . Esto también aumenta el contador de errores no corregibles informados (atributo SMART 0xbb).

Un error de lectura irrecuperable, o URE, es simplemente un informe de que, por cualquier razón, los datos de la carga útil más los datos de FEC fueron insuficientes para reconstruir los datos almacenados originalmente.

Tenga en cuenta que las tasas de URE son estadísticas . No encontrará ningún disco duro donde pueda leer exactamente 10 ^ 14 (o 10 ^ 15) - 1 bit con éxito y luego el siguiente bit falla. Más bien, es una declaración del fabricante que, en promedio , si lee (digamos) 10 ^ 14 bits, en algún momento durante ese proceso encontrará un sector ilegible.

Además, siguiendo las últimas palabras anteriores, tenga en cuenta que las tasas de URE se dan en términos de sectores por bits leídos . Debido a cómo se almacenan los datos en los platos, el disco no puede determinar qué parte de un sector es mala, por lo que si un sector no pasa la verificación FEC, se considera que todo el sector es malo.

un CVn
fuente
OK, parece indicar que el sector está fallando. Entiendo totalmente las estadísticas, no te preocupes. También veo aquí que la confiabilidad del sector disminuye a medida que aumenta la densidad, pero eso todavía no tiene sentido. Los discos más nuevos generalmente tienen la misma densidad de platos, sin importar el tamaño físico, los 4 TB tendrán menos platos que los 6 TB. Básicamente, los sectores son los mismos, entonces, por qué el 8TB no puede alcanzar estadísticamente un valor más alto, hay el doble de sectores, por lo que cada uno se lee la mitad (estadísticamente). entonces deberían fallar menos, ¿no?
Memes
3

el sector muere: también totalmente irrecuperable, pero aquí no entiendo por qué el disco de 4TB tiene una calificación de 10 ^ 14 para la URE y el 8TB también tiene una calificación de 10 ^ 14 para la URE, eso significaría los sectores en el 8 TB (probablemente tecnología más nueva) son la mitad de confiables que las de 4 TB, eso no tiene sentido.

La especificación suele ser "en promedio se detecta 1 error al leer n bits", por lo que el tamaño de la unidad no importa. Es importante si calcula su riesgo de que ocurra un error en su unidad y carga de trabajo, pero el fabricante solo declara que se necesitan n bits de lectura para encontrar un error (en promedio, no está garantizado).

Ejemplo: si compra una unidad de 1 TB, tendría que leerla unas 12 veces para encontrar un error, mientras que una unidad de 8 TB podría experimentarla en la segunda lectura, pero la cantidad de bits leídos es la misma en ambas ocasiones, por lo que la calidad de los husos magnéticos es más o menos lo mismo.

Lo que paga por el aumento del precio son otros factores, la capacidad de meter 8TB en el espacio físico de 1TB, el consumo de energía muy reducido, menos choques de cabeza mientras se mueve el disco, etc.

usuario121391
fuente
0

Creo que @Michael Kjörling respondió con claridad.

Cuando el disco lee, la cabeza detecta la dirección del dominio magnético y luego envía una señal electrónica, que es analógica. Suponemos que el firmware debe dar un 1 cuando recibe un voltaje superior a 0.5V, pero el campo magnético es demasiado débil, por lo que la cabeza envía una señal con 0.499V solamente, se encontró un error. Necesitamos la FEC para corregir este error.

Aquí hay un ejemplo: los datos de un sector deben ser 0x0F23, los codificamos con 0 * 1 + F * 2 + 2 * 3 + 3 * 4 = 0x30. ahora tenemos el FEC y lo escribimos después del sector. Cuando leemos, leemos 0x0E23 y FEC 0x30, no coincide. Después de algunos cálculos, encontramos que debería ser 0x0F23. Pero si tenemos 0x0E13 y 0x30, O tenemos 0x0E23 y 0x32, no podemos calcular el correcto.

Esta calificación es muy baja, tal vez a menos que la fábrica de discos duros lea los datos de los PB alguna vez, los datos de EB podrían obtener un valor estable. Entonces dan el valor de probabilidad: cuando lees datos de 10 ^ 14 bits, puedes encontrarte una vez. Dado que es un valor de probabilidad, tal vez te alegraste después de leer solo 1 datos del sector, tal vez lo encontraste hasta que leíste datos de 50 TB. Y este valor no tenía nada con la capacidad del disco, solo era una preocupación casual con el tamaño de los datos que leía. Si lee un disco de 4 TB lleno de datos 6 veces, esta posibilidad será igual a leer un disco de 6 TB 4 veces, o leer un disco de 8 TB 3 veces.

Harley
fuente