Ich glaube, hier hast du einen Denkfehler. Du vergisst meines Erachtens, dass die 512 Bytes oder auch die 4096 Bytes lediglich die Nutzkapazität eines Sektors ist. Jeder Sektor ist größer als die Nutzkapazität, auch bei den Mainstream-Laufwerken. Die Erhöhung der Nutzkapazität eines Sektors bewirkt nur, dass der Speicherplatz für die ECC-Daten pro Sektor geringer wird und man als Endanwender mehr nutzbaren Speicherplatz zur Verfügung hat.
Nein, hast hatte ich doch erwähnt:
Vor einigen Jahre wurde dann von den Hersteller die Größe der physikalischen Sektoren auf 4k erhöht, weil man damit weniger ECC Daten braucht und somit 10 bis 15% mehr Nutzdaten unterbringen kann.
Es ist für den Anwender am Ende aber egal, weil das für ihn transparent ist, denn er kommt an diese ECC Daten nicht ran, die verwendet ja nur der HDD Controller um Lesefehler zu erkennen und ggf. zu korrigieren.
Befindet sich die Platte in einem RAID, ist ein (langer) separater Fehlerkorrekturcode pro Sektor auch nicht zwingend notwendig, da bei Ausfall eines Sektors die Daten aufgrund der redundanten Speicherung jederzeit rekonstruiert werden können. Mit extra Speicherplatz für ECC-Daten hat das nichts zu tun, ganz im Gegenteil.
Doch genau darum geht es! Bei einer normalen SATA Platte wird die ECC alleine von Conroller der Platte erledigt, die dann eben versucht den Sektor so oft zu lesen, bis es klappt oder der Timeout überschritten wurde, bei einem echten RAID wo der RAID Controller hinter jedem Sektor selbst seine ECC schreibt, braucht man das nicht und die Platte muss auch gar nicht mehr wissen, ob die Daten korrekt gelesen wurden, da der Controller dann selbst entscheidet, wie er die Daten trotzdem bekommt.
Da RAID die Abkürzung für Redundant Array of Independent Disk steht, ist ein RAID 0 kein echtes RAID, denn da gibt es keine Redundanz, es ist also nur ein AID.
Als Nebeneffekt vertrödelt die Platte keine Zeit für eigenständige Korrektur- oder Ausleseversuche , was uns wieder zum Thema TLER bzw. CCTL bringen würde. - /Edit: Was man wohl abgekoppelt von der einstellbaren Sektorgröße bzw. verringerten ECC betrachten muss
Das die Platte keine Zeit mit neuen Ausleseversuchen vertrödelt, ist ja der Sinn der Übung, auch wenn der Ursprung der Sache noch aus der Zeit stammt, also Platten sowas sowieso noch nicht konnten. Meine ersten HDD brauchte noch einen externen MFM Controller und wenn ich einen teuren RLL Controller gekauft hätte, wäre eine Nutzkapazität von 30MB statt nur 20MB möglich gewesen, damals waren HDDs noch richtig primitiv und TLER in der Platte selbst wäre komplett undenkbar, weil die eben auch noch komplett von außen gesteuert wurde, da deren Logik nur dazu da war die gewünschten Positionen anzusteuern und dann die Bits dort zu lesen oder zu schreiben, selbst die Dekodierung in die Bytes hat der extrene Controller übernommen. Letzteres machen die modernen SAS Platten zwar selbst, aber für den Rest werden sie vom RAID Controller ähnlich dumm behandelt wie die damaligen HDDs, denn sie brauchen eigentlich keine eigene ECC zu verwalten, wenn der Controller dies übernimmt und daher auch nicht zu versuchen Bitfehler zu rekonstruieren, auch wenn sie dass natürlich schon noch selbst machen um die Anzahl der Lesefehler zu minimieren. Aber wenn das misslingt, dann brauchen sie eben keine Lesewiederholungen durchzuführen, was ja nicht erwünscht ist.
Bei SATA Platten hat man eben den Zielkonflikt zwischen der Anwendung als einzelne Platte, wo Lesefehler schlimmer als eine Verzögerung der Antwort sind oder dem Einsatz im RAID, wo Verzögerung beim Lesen dazu führen kann, dass die Platte aus dem RAID fliegt, so dass man die TLER eben so kurz einstellen muss, damit dies nicht passiert und der RAID Controller bzw. die RAID SW die Daten dann selbst aus der Redundanz rekonstruieren kann.
Ein typisches Problem mit der TLER ist, dass eine Platte aus dem RAID fliegt, aber die S.M.A.R.T. Werte keine Fehler anzeigen. Dann hat die Platte die Daten am Ende doch noch lesen können, aber es hat länger als der Timeout des RAIDs gedauert und damit ist die TLER zu hoch eingestellt.