web-dev-qa-db-fra.com

qu'est-ce qu'un URE exactement?

Je me suis penché récemment sur RAID5 contre RAID6 et je continue de voir que RAID5 n'est plus suffisamment sécurisé en raison des classements URE et de la taille croissante des disques. Fondamentalement, la plupart du contenu que j'ai trouvé dit qu'en RAID5, en cas de panne de disque, si le reste de votre baie est de 12 To, vous avez presque 100% de chances de rencontrer un URE et de perdre vos données.

Le chiffre de 12 To provient du fait que les disques sont évalués à 10 ^ 14 bits lus pour atteindre un URE.

Eh bien, il y a quelque chose que je n'obtiens pas ici. Une lecture est effectuée par la tête qui passe sur le secteur, ce qui peut faire échouer la lecture, c'est que la tête meurt ou que le secteur meurt. il se peut aussi que la lecture ne fonctionne pas pour une autre raison (je ne sais pas, comme une vibration qui faisait sauter la tête ...). alors, permettez-moi d'aborder les 3 situations:

  • la lecture ne fonctionne pas: ce n'est pas irrécupérable, non? il peut être réessayé.
  • la tête meurt: ce serait à coup sûr irrécupérable, mais, cela signifie également que le plateau complet (ou du moins le côté) serait illisible, ce serait plus alarmant, non?
  • le secteur meurt: ainsi totalement irrécupérable, mais ici je ne comprends pas pourquoi le disque de 4 To est évalué à 10 ^ 14 pour l'URE et le 8 To est aussi bien évalué à 10 ^ 14 pour l'URE, cela signifierait les secteurs sur le Les 8 To (probablement les nouvelles technologies) sont deux fois moins fiables que ceux des 4 To, cela n'a pas de sens.

Comme vous le voyez, sur les 3 points d'échec que j'identifie, aucun n'a de sens. Alors qu'est-ce qu'un URE exactement, je veux dire concrètement?

Y a-t-il quelqu'un qui peut m'expliquer cela?

Modifier 1

Après la première vague de réponses, il semble que la raison soit la défaillance du secteur. Une bonne chose est que le firmware, le contrôleur RAID et le système de fichiers OS + ont une procédure en place pour détecter tôt cela et réallouer les secteurs.

Eh bien, je sais maintenant ce qu'est un URE (en fait, le nom est assez explicite :)).

Je suis toujours perplexe face aux causes sous-jacentes et surtout à la note stable qu'elles donnent.

Certains attribuent le secteur défaillant à des sources externes (ondes cosmiques), je suis alors surpris que le taux d'URE soit alors basé sur le nombre de lectures et non sur l'âge, les ondes cosmiques devraient en effet toucher plus un disque ancien simplement parce qu'il a été exposé de plus, je pense que c'est plus un fantasme bien que je puisse me tromper.

Vient maintenant l'autre raison liée à l'usure du disque et certains ont souligné que des densités plus élevées donnent des domaines magnétiques plus faibles, cela a tout à fait du sens et je suivrais l'explication. Mais Comme cela est bien expliqué ici , les nouveaux disques de tailles différentes sont obtenus principalement en mettant plus ou moins le même plateau (puis la même densité) dans le châssis du disque dur. Les secteurs sont les mêmes et tous devraient avoir la même fiabilité, donc les disques plus gros devraient alors avoir une note plus élevée que les disques plus petits, les secteurs étant moins lus, ce n'est pas le cas, pourquoi? Cela expliquerait cependant pourquoi les disques plus récents avec une technologie plus récente n'obtiennent pas de meilleure note que les anciens, simplement parce que le meilleur gain technologique est compensé par la perte due à une densité plus élevée.

14
Memes

Un URE est une erreur de lecture irrécupérable. Quelque chose s'est produit qui a provoqué l'échec de la lecture d'un secteur que le lecteur ne peut pas réparer. L'électronique du lecteur est sophistiquée, elle ne transmettra les données que si elle a pu les lire correctement sur le disque. L'électronique du variateur essaiera plusieurs fois de lire un secteur défectueux avant de le déclarer endommagé.

Ce qui cause l'erreur de lecture - Je ne suis pas un expert ici (le bras s'ensuit) mais le vieillissement du lecteur peut rendre les tolérances de fabrication pertinentes. Les domaines magnétiques peuvent s'affaiblir. Les rayons cosmiques peuvent causer des dommages, etc. C'est essentiellement un échec aléatoire.

Comment cela affecte-t-il RAID 5?

A RAID 5 consiste en une répartition au niveau du bloc avec une parité distribuée. Les blocs de parité sont calculés en faisant XOR les bits des blocs de données ensemble. La fonction XOR dit essentiellement, si tous les bits sont identiques, le résultat est 0 sinon il est 1. Lors du calcul de la parité, vous prenez les 2 premiers bits et XOR = eux puis XOR le résultat avec le bit suivant et ainsi de suite par exemple.

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

La nature de la fonction XOR est telle que si un disque meurt et est remplacé, les données qui doivent y figurer peuvent être reconstruites à partir des disques restants.

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

Comme vous pouvez le voir, les données endommagées peuvent être reconstruites en XORant les données restantes et la parité.

Comment un URE affecte-t-il cela?

Un URE n'est significatif que lors d'une reconstruction RAID 5.

Lorsque vous reconstruisez un RAID 5, il y a une grande quantité de lecture à faire. Chaque bloc de données doit être lu afin de reconstruire les données sur le nouveau disque. Si un URE se produit, les données du bloc concerné ne peuvent pas être récupérées, vos données sont donc incohérentes. Pour des disques suffisamment grands dans un R5 suffisamment grand, le nombre de bits lus pour reconstruire le disque remplacé dépasse la valeur URE, par exemple 1 bit sur 10 ^ 14 lus.

13
user9517

Alors qu'est-ce qu'un URE exactement, je veux dire concrètement?

Les disques durs ne stockent pas simplement les données que vous leur demandez. En raison de la diminution constante de la taille des domaines magnétiques et du fait que les disques durs stockent les données de manière analogique plutôt que binaire (le micrologiciel du disque dur reçoit un signal analogique du plateau, qui est traduit en signal binaire, et cette traduction est partie de la sauce secrète du fabricant), il y a pratiquement toujours un certain degré d'erreur dans une lecture, qui doit être compensé.

Pour garantir que les données peuvent être relues, le disque dur stocke également données de correction d'erreur avant avec les données que vous lui avez demandé de stocker.

En fonctionnement normal, les données FEC sont suffisantes pour corriger les erreurs dans le signal qui est relu sur le plateau. Le micrologiciel peut alors reconstruire les données originales, et tout va bien. C'est un erreur de lecture récupérable qui est exposé dans SMART comme l'attribut read error rate (attribut SMART 0x01) et/ou = ECC matériel récupéré (attribut SMART 0xc3).

Si pour une raison quelconque le signal se dégrade en dessous d'un certain point, les données FEC ne suffisent plus pour reconstruire les données d'origine. À ce stade, selon la théorie, le firmware pourra toujours détecter que les données n'ont pas pu être relues de manière fiable, mais il ne peut rien y faire. Si plusieurs de ces lectures échouent, le disque doit en quelque sorte informer le reste de l'ordinateur que la lecture n'a pas pu être effectuée avec succès. Il le fait en signalant une erreur de lecture irrécupérable. Cela augmente également le compteur Erreurs non corrigibles signalées (attribut SMART 0xbb).

Une erreur de lecture irrécupérable, ou URE, est simplement un rapport indiquant que pour une raison quelconque, les données de charge utile plus les données FEC étaient insuffisantes pour reconstruire les données stockées à l'origine) .

Gardez à l'esprit que les taux d'URE sont statistiques. Vous ne rencontrerez aucun disque dur où vous pourrez lire exactement 10 ^ 14 (ou 10 ^ 15) - 1 bits avec succès, puis le bit suivant échoue. Il s'agit plutôt d'une déclaration du fabricant selon laquelle en moyenne, si vous lisez (par exemple) 10 ^ 14 bits, à un moment donné au cours de ce processus, vous rencontrerez un secteur illisible.

En outre, à la suite des derniers mots ci-dessus, gardez à l'esprit que les débits URE sont donnés en termes de secteurs par bits lus. En raison de la façon dont les données sont stockées sur les plateaux, le disque ne peut pas dire quelle partie d'un secteur est mauvaise, donc si un secteur échoue à la vérification FEC, alors tout le secteur est considéré comme mauvais.

9
a CVn

le secteur meurt: ainsi totalement irrécupérable, mais ici je ne comprends pas pourquoi le disque de 4 To est évalué à 10 ^ 14 pour l'URE et le 8 To est aussi bien évalué à 10 ^ 14 pour l'URE, cela signifierait les secteurs sur le Les 8 To (probablement les nouvelles technologies) sont deux fois moins fiables que ceux des 4 To, cela n'a pas de sens.

La spécification est généralement "en moyenne 1 une erreur est détectée lors de la lecture n bits", donc la taille du lecteur n'a pas d'importance. Il importe que vous calculiez le risque qu'une erreur se produise sur votre lecteur et votre charge de travail, mais le fabricant déclare seulement qu'il faut n bits de lecture pour trouver une erreur (en moyenne, non garanti).

Exemple: si vous achetez un lecteur de 1 To, vous devrez le lire environ 12 fois pour trouver une erreur, tandis qu'un lecteur de 8 To pourrait en faire l'expérience lors de la deuxième lecture - mais le nombre de bits lus est le même à chaque fois, donc la qualité des broches magnétiques est à peu près la même.

Ce que vous payez en augmentant le prix, ce sont d'autres facteurs, la capacité à entasser 8 To dans l'espace physique de 1 To, la consommation d'énergie considérablement réduite, moins de collisions lors du déplacement du lecteur, etc.

3
user121391

Je pense que @Michael Kjörling a répondu clairement.

Lorsque le disque lit, la tête détecte la direction du domaine magnétique, puis envoie un signal électronique, qui est analogique. Nous supposons que le firmware doit donner un 1 lorsqu'il reçoit une tension supérieure à 0,5 V, mais le champ magnétique est trop faible, de sorte que la tête envoie un signal avec 0,499 V uniquement, une erreur rencontrée. Nous avons besoin du FEC pour corriger cette erreur.

Voici un exemple: une donnée de secteur doit être 0x0F23, nous la codons avec 0 * 1 + F * 2 + 2 * 3 + 3 * 4 = 0x30. nous obtenons maintenant la FEC et l'écrivons après le secteur. Lorsque nous lisons, nous lisons 0x0E23 et FEC 0x30, il ne correspond pas. Après certains calculs, nous avons constaté qu'il devrait être 0x0F23. Mais si nous obtenions 0x0E13 et 0x30, OR nous avons obtenu 0x0E23 et 0x32, nous ne pouvons pas calculer la bonne.

Cette note est si basse, peut-être à moins que le fabricant de disques durs ne lise les PB jamais les données EB pourraient obtenir une valeur stable. Ils donnent donc la valeur de probabilité: lorsque vous lisez des données 10 ^ 14 bits, vous pouvez les rencontrer une fois. Comme il s'agit d'une valeur de probabilité, vous avez peut-être rencontré après avoir lu seulement 1 données de secteur, peut-être que vous avez rencontré jusqu'à ce que vous lisiez des données de 50 To. Et cette valeur n'a rien à voir avec la capacité du disque, c'est juste une préoccupation fortuite avec la taille des données que vous lisez. Si vous lisez un disque de 4 To plein de données 6 fois, cette chance équivaut à lire un disque de 6 To 4 fois ou à lire un disque de 8 To 3 fois.

0
Harley