Wikipedia dit que "RAID 2 est le seul niveau RAID standard, à part certaines implémentations de RAID 6, qui peuvent récupérer automatiquement des données précises à partir d'une corruption d'un bit dans les données."
Est-ce que quelqu'un sait si l'implémentation RAID 6 mdadm sous Linux est une implémentation de ce type qui peut automatiquement détecter et récupérer d'une corruption de données sur un seul bit. Cela concerne CentOS / Red Hat 6 s'ils sont différents des autres versions. J'ai essayé de chercher en ligne mais je n'ai pas eu beaucoup de chance.
Avec des taux d'erreur SATA de 1 sur 1E14 bits et un disque SATA de 2 To contenant 1,6E13 bits, cela est particulièrement pertinent pour prévenir la corruption des données.
EDIT 17-Jun-2015
Je crois que c'est moins une préoccupation que je pensais à l'origine - voir Disque dur / SSD - détection et gestion des erreurs - la corruption silencieuse des données est-elle empêchée de manière fiable? pour plus de détails
la source
RAID5 et RAID6 peuvent détecter et généralement corriger la corruption de bits si vous vérifiez la parité de l'ensemble du lecteur. Ceci est appelé "nettoyage" ou "contrôle de parité" et prend généralement 24 à 48 heures sur la plupart des systèmes RAID de production. Pendant ce temps, les performances peuvent être considérablement dégradées. (Certains systèmes permettent à l'opérateur de prioriser le nettoyage sur l'accès en lecture / écriture ou en dessous.) RAID6 a plus de chances de le corriger, car il peut le corriger si vous avez deux pannes de disque, tandis que RAID5 ne peut gérer qu'une seule panne de disque, et les pannes de disque sont plus probables lorsque vous nettoyez en raison de l'augmentation de l'activité.
la source
J'aurais ajouté ceci en tant que commentaire mais je n'ai pas une réputation suffisante; Je voulais clarifier: RAID5 peut DETECTER la corruption de bits mais il ne sait pas quel lecteur a la corruption sans erreur de lecture. Par conséquent, un nettoyage ne pourrait pas résoudre ce problème sans erreur de lecture - il le consignerait probablement et mettrait à jour le bit de parité pour qu'il corresponde. L'algorithme de RAID6 dépend de la position afin qu'il puisse détecter le lecteur qui contenait l'erreur et corriger la corruption de bits.
la source
Toutes les réponses ci-dessus sont incorrectes en ce qui concerne les capacités de RAID 6. Les algorithmes RAID 6 fonctionnent octet par octet tout comme RAID 5, et si un seul octet sur un lecteur est corrompu, même sans erreur indiquée par le lecteur, il peut être détecté ET CORRIGÉ. L'algorithme pour ce faire est complètement expliqué dans
https://mirrors.edge.kernel.org/pub/linux/kernel/people/hpa/raid6.pdf
Pour effectuer cette vérification, les lecteurs de parité P et Q doivent également être lus avec les lecteurs de données. Si la parité calculée P 'et Q' diffère sans erreur de lecteur, une analyse peut identifier lequel des lecteurs est incorrect et corriger les données.
En outre, si l'identification du lecteur concerne un lecteur qui n'est pas présent (tel que le lecteur 137 s'il n'y a que 15 lecteurs), plusieurs lecteurs fournissent des données corrompues pour cet octet, signalant une erreur d'erreur non corrigible. Lorsqu'il y a beaucoup moins de 256 lecteurs dans l'ensemble, cela est détecté avec une forte probabilité par octet, et puisqu'il y a beaucoup d'octets dans un bloc, avec une probabilité extrêmement élevée par bloc. Si l'identification du lecteur n'est pas cohérente pour tous les octets du bloc RAID, là encore, plusieurs lecteurs fournissent des données corrompues, et généralement on peut rejeter la condition, mais tant que toutes les identifications de lecteur sont valides, le bloc n'a pas nécessairement besoin être rejeté.
Il faut plus de temps que le temps de vérification habituel pour effectuer cette correction, mais cela ne doit être effectué qu'avec le syndrome (P et Q), le calcul montre une erreur.
Tout cela étant dit, cependant, je n'ai pas examiné le code mdadm pour déterminer si la corruption à un octet est gérée. Je suis conscient que mdadm signale des erreurs de syndrome RAID6 sur l'analyse mensuelle, mais à partir du message d'erreur, il n'est pas clair si elles sont corrigées - cela n'arrête pas la matrice de disques ni n'identifie aucun disque particulier dans le message.
la source