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 aussi 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éaffecter les secteurs.
Eh bien, je sais maintenant ce qu'est un URE (en fait, le nom est assez explicite :)).
Je suis toujours perplexe par les causes sous-jacentes et surtout la note stable qu'ils 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 plus 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 il 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.
Réponses:
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 oscille), mais le vieillissement de l'entraînement 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?
Un RAID 5 consiste en une répartition au niveau des blocs 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 fondamentalement, 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 les XOR puis XOR le résultat avec le bit suivant et ainsi de suite, par exemple
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.
Comme vous pouvez le voir, les données endommagées peuvent être reconstruites en XOR 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.
la source
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 les données de correction d'erreurs avancées 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 lu sur le plateau. Le firmware peut alors reconstruire les données d'origine, et tout va bien. Il s'agit d'une erreur de lecture récupérable qui est exposée dans SMART en tant qu'attribut de taux d'erreur de lecture (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 sont plus suffisantes pour reconstruire les données d'origine. À ce stade, selon la théorie, le firmware sera toujours en mesure de détecter que les données ne peuvent pas ê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 des 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.
la source
La spécification est généralement "en moyenne 1 erreur est détectée lors de la lecture de n bits", donc la taille du lecteur n'a pas d'importance. Cela importe si vous calculez votre risque qu'une erreur se produise sur votre lecteur et votre charge de travail, mais le fabricant déclare uniquement qu'il faut lire n bits 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.
la source
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 devrait 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 de la 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, cela ne correspond pas. Après quelques calculs, nous avons constaté que ce devait être 0x0F23. Mais si nous avons 0x0E13 et 0x30, OU nous avons 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 PBs jamais les données EBs 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.
la source