DDD schrieb:
Wann würde das RAID das denn merken dass da Daten falsch sind?
Wieso falsch? Es ist ein großer und verbreiteter Irrtum anzunehmen, HDDs würde dann falsche Daten ausgeben. Die HDDs haben alle eine ECC hinter jedem physikalischen Sektor, damit können die Bitfehler (die sind durchaus nicht so selten) erkennen und in den allermeisten Fällen erfolgreich korrigieren. Gelingt dies nicht, lesen die Platten den Sektor erneut, mit leicht unterschiedlichen Parametern, bis es gelingt oder der Timeout erfolgt, der bei den HDDs mit TLER / ERC einstellbar und i.d.R. auf so 7s voreingestellt ist, bei den anderen ist er nicht einstellbar und meist ab Werk länger, z.B. 14s bei den alten WD Green. Dann gibt die Platte aber keine falschen Daten, sondern eine Lesefehler zurück und daran erkennt das RAID, dass dieser Sektor nicht mehr lesbar ist und rekonstruiert sie anhand der Redundanz und überschreibt den betroffenen Sektor, woraufhin der Controller der HDD danach prüft ob die "neuen" Daten nun korrekt gelesen werden können und wenn nicht, wird ein Reservesektor verwendet. Daher haben SSDs in einem echten RAID (also mit Redundanz auch keine schwebenden Sektoren, denn dies sind ja die Sektoren auf denen solche Lesefehler aufgetreten sind und die beim Überschreiben eben verschwinden.
Macht man nun bei einem RAID 5 ein Rebuild, so ist das RAID im dem Moment ohne Redundanz (ein RAID 6 hat nach Ausfall nur einer Platte noch die einfache Redundanz, daher spielt die UBER bei denen praktisch keine Rolle, solange man eben nicht ein Rebuild mit zwei ausgefallenen Platten machen muss) und damit bricht das Rebuild i.d.R. eben ab, weil das RAID keine korrekten Daten mehr sicherstellen kann und der User dann besser das Backup einspielen sollte. Bei RAID von Filesystemen wie ZFS ist es oft anders, da diese ja auch wissen, welche Datei betroffen ist oder ob der Bereich vielleicht gar nicht belegt ist, was ein normales RAID ja gar nicht weiß.
Dies war jetzt das normale Verhalten der normalen SATA HDDs in bei Heimanwendern üblicher Hardware. Bei Profi SAS RAID Controllern ist es üblich, dass die SAS Platten auf 520 oder 528 Byte pro Sektor formatiert werden, was mit SATA Platten sowieso gar nicht geht. Die Controller legen dann auf diesen zusätzlichen 8 bzw. 16 Byte selbst eine Prüfsumme ab und die Platten werden so eingestellt, dass sie die Daten roh wiedergeben, der SAS Controller prüfen dann selbst anhand ihrer eigenen Prüfsumme, ob diese korrekt sind, in dem Fall können Platten also schon inkorrekte Daten liefern, aber es ist dann die Aufgabe des RAID Controllers diese nicht weiterzureichen, sondern eben anhand der Redundanz zu korrigieren, zu überschreiben und die korrekten Daten oder, sollte dies nicht möglich sein, den Lesefehler zurückzugeben.
Dies wird gemacht um die Wartezeit zu vermeiden, da die Platten sonst ja versuchen die Daten doch noch korrekt zu lesen und die Hardware RAID Controller warten für gewöhnlich 8s auf eine Antwort der Platte, daher auch die 7s Timeout als Default bei Platten mit TLER/ERC , denn wenn der RAID Controller nach 8s keine Antwort hat, wirft er die Platte als defekt aus dem RAID. Deshalb sollte man insbesondere HW RAID nur geeignete HDDs verwenden. In diesen 7s die der Controller der Platte versucht die Daten doch noch zu lesen, wäre das RAID praktisch nicht ansprechbar und bei vielen Enterpriseanwendungen wäre so eine lange Verzögerung einfach inakzeptabel.
Die andere Möglichkeit wo HDDs wirklich mal korrupte Daten liefern, ist bei Nutzung der ATA Streaming Befehle für Online Videoaufzeichnung. Die benutzen normale OS wie Windows oder ein Linux in einem NAS für die Daten aber gar nicht, sondern nur Aufzeichnungssysteme z.B. für Überwachungskameras die extra solche Platten brauchen die diese Befehle unterstützen. Hier ist es wichtiger die Antwortzeiten kurz zu halten als die Daten korrekt zu haben, denn ein Bitfehler wäre ein falscher Pixel, der fällt nicht so auf wie eine Unterbrechung die entstehen würde, wenn der Datenstrom bei der Aufzeichnung oder Wiedergabe unterbrochen würde. Daher hat jeder der Stramingbefehle einen eigenen Timeout. Normale Daten werden aber eben nicht mit diesen Befehlen gespeichert. Ob man sowas überhaupt im RAID einsetzt, kann ich auch nicht sagen, ich denke aber, es macht mehr Sinn bei mehreren Kamera diese auf die einzelnen Platten zu verteilen.
DDD schrieb:
Dafür müsste ich sie schon lesen, oder?
Ja, deshalb macht man ja auch ein Srubbing, eben damit man regelmäßig alles liest und so feststellen kann, ob und wo es ggf. Sektoren gibt die nicht mehr korrekt lesbar sind und diese Probleme beheben kann. Die schwebenden Sektoren können ja verschiedene Ursachen haben, z.B. weil die die Köpfe beim Schreiben wegen Vibrationen aus der Spur gekommen sind, was bei ordentlichen Platten durch Sensoren die diese Vibrationen erkennen sollen, verhindert werden soll.
DDD schrieb:
wären dann in jedem 1x 6TB Platte drin
Dann würde jeder Lesefehler auch als solcher von der Platte nach oben durchgereicht und wenn der irgendwo nicht korrekt behandelt wird, etwa wenn beim Kopieren der betroffenen Datei die angefangene Kopie dann nicht wieder gelöscht wird, hat man auch Datenkorruption, nämlich eine Kopie die nicht dem Original entspricht, aber da liegt die Schuld nicht an der Platte oder weil diese falsche Daten geliefert hätte, sondern an der Software die nicht richtig auf den Lesefehler reagiert hat.
DDD schrieb:
Alternativ dann halt das bisherige behalten und nur eine 2x 6TB als RAID1 dazu stecken.
Externe Backups sind ja vorhanden, von daher würde ich persönlich dies vorziehen, denn dann bekommt man von Lesefehlern erstmal nichts mit, solange die andere Platte nicht ausgerechnet an der gleichen Stelle auch einen ausgibt.
DDD schrieb:
Da muss man sich wohl einfach auf die Hersteller verlassen.
Ja, zumal man diese Lesefehler in einem echten RAID eben auch nicht mitbekommt, sondern allenfalls im Log sehen kann. Die Platten dürfte in dem meisten Fällen weniger häufig unkorrigierbare Lesefehler haben, man sieht ja schon an der Genauigkeit der Angaben, da gibt es ja für 3.5" nur die Werte 1:10^14 und 1:10^15 die um eine Zehnerpotenz auseinander liegen, dass die Angaben recht grob sind, denn keiner gibt sowas wie 5:10^15 an, obwohl WD und Toshiba die 1:10^14 zuweilen in der Form von 10:1^15 angeben. Aber letztlich kann man sich eben nicht darauf verlassen das eine Red für die WD eben 1:10^14 angibt, nicht doch mit dieser Häufigkeit einen Lesefehler hat und man kann sie auch nicht reklamieren, wenn dies wirklich der Fall ist.