Leider sparen alle NAS Hersteller beim Einsteiger Segment nach wie vor bei ECC
Ja, die wollen die teuren Modelle verkaufen und generell ist die Hardware von Fertig-NAS immer überteuert, man zahlt halt für den Support mit.
teilweise so abenteuerliche 1 - 2 GB RAM und dann nicht mal ECC...
1 oder 2GB RAM sind zwar sehr wenig, aber im Zusammenhang mit none-ECC RAM sogar besser als viel RAM, denn je mehr RAM man hat, umso wahrscheinlicher sind RAM Fehler.
aber mit irgend einem abgewrackten Celeron halt wohl nicht immer drin.
Das zum einen, aber leider gibt es auch Modelle bei denen die CPU durchaus ECC RAM unterstützen würde, dann um diese Fähigkeit beschnitten. Das gab es früher bei einigen Hersteller die Xeon-D oder Atom C2000 CPUs verbaut haben, aber trotzdem keine ECC RAM Unterstützung anboten.
Soweit ich das verstanden habe: Wenn Fehler von den Platten nicht gemeldet werden (was durchaus häufig vorkommt)
Wo kommt die Unterstellung her, es würde häufig vorkommen das Platten Lesefehler nicht melden? Dies ist Quatsch, wie schon beschrieben, haben alle HDDs extra eine ECC hinter jedem physikalischen Sektor und dies ist schon sehr, sehr lange so. Es ist ein Mythos den die ZFS Fans gerne verbreiten, dass HDDs keine Lesefehler melden sondern korrupte Daten liefern würden, der einfach nicht stimmt. Ausnahmen gibt es, z.B. Firmware Bugs wie er zuletzt bei der Samsung
HD204UI vor fast 10 Jahren vorgekommen ist, wo es Datensalat geben konnte, wenn NCQ aktiv war und ein Device Ident Befehl geschickt wurde, während zugleich auf die Platte geschrieben wurde. Da wurden also Userdaten im Schreibcache überschrieben und dann lieferte die Platte natürlich nicht die Daten wieder, die mal auf sie geschrieben wurden. Aber so ein FW Bug ist nun wirklich eine seltene Ausnahmen!
Die beiden anderen Möglichkeiten wo Platten inkorrekte Daten liefern sind einmal die Surveillance Platten für Echtzeitvideoaufzeichnung, die dann aber für diesen Zweck mit ganz bestimmten Befehlen, den ATA Streaming Befehlen, angesprochen werden und da hat jeder Befehl einen eigenen Timeout und der Gedanke daher ist, dass ein paar falsche Bytes beim Abspielen eines Videos weniger stören als eine Unterbrechung. Dies Befehle werden aber von einem normalen Windows, Linux etc. niemals zum speichern normaler Dateien verwendet, sondern da werden die normalen ATA Befehle genommen die dies Platten auch unterstützen und dann verhalten sie sich wie jede andere HDD und liefern Lesefehler und keine korrupten Daten.
Der zweite Fall sind die SCSI/SAS Platten die man ja auch auf 520/528 Byte pro Sektor (oder bei 4k entsprechend mehr) Bytes pro Sektor formatieren kann und dies machen die HD RAID Controller um in den zusätzlichen Bytes eine eigene ECC Prüfsumme unterzubringen. Die Platten werden dann so betrieben, dass sie keine eigene ECC Prüfung machen und Daten wie gelesen rausgeben, was den Sinn hat, dass die Platten eben nicht durch wiederholtes Lesen versuchen die Daten doch noch korrekt zu Lesen und damit für Verzögerungen sorgen. Dies Verzögerungen zu vermeiden ist der Sinn der Sache, der Controller prüft seine eigene ECC und wenn er die Daten damit nicht korrigieren kann, dann greift er auf die Redundanz zurück und überschreibt anschließend die fehlerhaft gelesenen Daten auf der betroffenen Platte. Da liefern die Platten selbst dann zwar fehlerhafte Daten, aber die Verantwortung das diese erkannt, korrigiert und eben nicht weitergereicht werden, liegt beim RAID Controller. Dies wurde für Storages mit hohen Performance gemacht um Verzögerungen zu vermeiden. aber die dürften ausgestorben sein, weil heute SSDs dieses Segment beherrschen.
Das HW RAID Controller am Aussterben sind, ist auch richtig, die sind mit ihren kleinen CPUs einfach zu lahm für schnelle SSD, die CPU des Rechners ist um Längen schneller, was kein Kunststück ist wenn man bedenkt wie viel mehr Kerne und Budget bei der Leistungsaufnahme sie hat. Die Linux md SW RAIDs sind daher heutzutage meist schneller als HW RAID Controller, die Windows SW RAIDs waren immer dafür bekannt lahm zu sein, keine Ahnung ob dies noch stimmt, aber die Windows Systeme sind wohl noch die die am meisten HW RAID Controller verwenden.
Der Typ in dem Video verbreitet auch den Unsinn das HDDs einfach so mal unerkannt andere Daten zurückliefern würden als geschrieben wurden, ohne dafür Beweise zu liefern und dies ist einfach nicht wahr. Keine Ahnung woher diese Mythos kommt, aber wenn man kein ECC RAM hat, dann kann es natürlich passieren und man weiß nicht sowieso, denn man erfährt ja nicht das es ein RAM Fehler war und die meisten geben dann der HDD die Schuld, was aber eben nicht stimmt. Die guten HDDs und SSDs wie diese Enterprise HDDs haben alle internal data path protection auch end-to-end data path protection genannt, so dass auch auf deren internen Datenpfade und in deren Cache keine Bitfehler auftreten können, andere haben oft wenigstens eine Erkennung solcher Fehler und melden dann in den S.M.A.R.T. Werten das der Zustand schlecht ist, sobald auch nur ein solcher Fehler erkannt wurde und sowas ist wirklich extrem selten.
Der erste Schritt für alle die sich Sorgen um unerkannte Datenkorruption machen, muss immer ECC RAM (mit der passenden Plattform die dies auch unterstützt) sein und damit wird man das Problem dann schon zu bestimmt 99,9% vermeiden! Obendrauf noch ein Filesystem wie ZFS zu nutzen um das Risiko weiter zu senken, wenn auch auf Kosten der Performance, steht ja dann jedem frei, aber bitte kein ZFS als Ersatz für ECC RAM ansehen!. Es sollte auch klar sein, dass man keine absolute Sicherheit bekommt, sondern nur mehr oder weniger große Wahrscheinlichkeiten. Auch Matt Ahren, Mitentwickler des ZFS-Dateisystems, schreibt:
Man beachte die Reihenfolge, auch er empfiehlt zuerst ECC RAM und dann erst oben drauf ein Filesystem mit Prüfsummen wie ZFS zu verwenden, wenn man seine Daten liebt und vor Korruption schützen möchte!