[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Warum machen IDE Platten unter Linux schlapp



Moin Dirk
Ich erläutere das einmal aus der Sicht der Fertigung und der Mechanik der 
Festplatten. Ich denke damit sollten auch einige andere Fragezeichen die über 
der Stirn schweben verschwinden.

On Thursday 05 August 2004 11:05, Dirk Mikkelsen wrote:
[...]
> Aus Antworten der letzten Tage habe ich erfahren, dass IDE Platten nicht
> unbedingt nicht nur die erste Wahl sind, sondern für manche Funktionen
> wirklich nicht geeigenet sind (Stichwort LTSP -  IDE dies with10 Clients)
>
> Wenn es heisst, dass diese nicht so lange fehlerfrei laufen wie SCSI und
> vielleicht auch langsamer (in Stresssituationen) sind , so kann ich dies
> nachvollziehen.
Das SCSI Platten eine höhere Lebensdauer haben liegt unter anderem am 
Produktionsprozess.

Bei der Beschichtung der Scheiben im Hochvakuum gibt es ähnlich wie bei der 
Produktion von Halbleiterstrukturen eine gewisse Streuung im 
Produktionsprozess. 

Diese Streuung bedingt ein Unterschiedliches Verhalten im laufenden Betrieb. 
So sind gute Beschichtungen etwas resistenter gegen den Verlust von Daten. 

Das liegt daran, dass das magnetische Träger Material dazu neigt, nach dem es 
durch die Schreib Köpfe magnetisiert wurde, nach einer gewissen Zeitspanne 
seine Magnetisierung zu verlieren oder was häufiger vorkommt nicht mehr in 
der Lage ist sich magnetisieren zu lassen. Dies merkt man im Betrieb dann 
durch ausgefallene Cluster auf der Platte.

Solche Fehler werden zum Beispiel von SMART fähigen IDE Platten notiert. SCSI 
Platten haben solche Funktionen in ähnlicher Weise, sie geben diese 
Informationen an den SCSI Controller weiter.

Diese Informationen werden bei SCSI wie bei SMART fähigen IDE Platten dazu 
genutzt um Plattenbereiche bevor sie vollkommen ausfallen für das schreiben 
zu sperren. Eine Zeit lang bleibt dies nahezu unbemerkt da die Platten über  
so genannte Spare Cluster verfügen. Diese "Reserve Bereiche" werden solange 
dazu genommen bis sie verbraucht sind. Deshalb ist eine Platte wenn sie sich 
mit Ausfällen meldet bereits seit einiger Zeit "sauer", sprich es existieren 
keine Spare Cluster mehr die Ausfälle kompensieren können. Ein sehr schnelles 
austauschen ist in solchen Fällen *dringendst* angeraten!

Bei der Fertigung der Scheiben wird also eine Selektierung anhand der Qualität 
vorgenommen. Gute Scheiben werden für hochwertige Platten verwendet und 
weniger gute für weniger hochwertige Platten.

Da SCSI Platten in der Regel in Serversystemen und dort im Dauer betrieb 
eingesetzt werden, der übrigens um ein vielfaches länger ist als bei Desktop 
Systemen, werden dafür die besseren / die besten Scheiben verwendet.

Dies ist mit einer der Gründe für die bessere Qualität von SCSI Platten vor 
allem für den Server Betrieb.

Ein weiterer Faktor ist die Mechanik, Antrieb, Schreib Lesekopf Mechanik, 
einer Platte. Sie wird bei SCSI Platten mit einer um ein vielfaches höheren 
Qualität ausgeführt. Wer einmal die Gelegenheit hat ein SCSI CD-ROM Laufwerk 
und ein IDE CD-ROM Laufwerk zu zerlegen der sollte einmal die mechanische 
Ausführung vergleichen. Hier gilt das gleiche wie für Festplatten, die 
Mechanik von SCSI CD-ROM Laufwerken ist um ein vielfaches besser als die von 
IDE CD-ROM Laufwerken. Man kann es mit bloßem Auge erkennen, labbriges 
Plastik auf der IDE Seite, saubere Metall Mechanik auf der SCSI Seite, 
allerdings zum 3 bis 4 fachen Preis, genauso wie bei den Festplatten. 
(-: Oder bildlich formuliert die Beule beim freien Fall und anschließendem 
Aufschlag auf den Fuß ist reziprok der Qualität des Laufwerkes :-)

Allerdings sind gute SCSI Platten nicht in der absoluten Betriebsdauer 
bemessen sondern in der Anzahl der Anlaufvorgänge. Dies liegt aber nicht an 
den Scheiben die die Daten tragen sondern daran, dass die Mechanik einer 
Platte zu einem sehr grossen Teil durch die Anlaufvorgänge beansprucht wird. 
Während des Betriebes ist die Beanspruchung der Lager und der Motoren fast zu 
vernachlässigen. 

Dies ist ein Umstand der im Grunde für IDE wie für SCSI Platten gilt. Man kann 
also generell sagen Platten in Desktop Systemen sind in der Anzahl der 
Anlaufvorgänge begrenzt. Darum ist es für normale Büro Arbeitsplätze kein 
nennenswerter Gewinn teure SCSI Platten zu verwenden. Der Kosten Nutzen 
Faktor ist hier zu einfach zu schlecht.

>
> Wenn aber eine IDE-Platte unter Linux zum 'nicht funktionieren' eines
> Rechners führt, so habe ich hier ein Verständnis (und
> Argumentations-)Problem, da der normale Lehrer diese Platte unter
> Windows für das non plus ultra hält. :-((
Rechner ist ein recht dehnbarer Begriff. (c:
Das geht vom Büroarbeitsplatz auf dem nur Büroanwendungen eingesetzt werden 
über die CAD Workstation bis hin zum Server.
Oder von der pekunären Seite betrachtet von 400,-EUR bis 400.000,-EUR und 
mehr. 

Spielekiste sind im Desktop Bereich da eine kleine Ausnahme, man sieht dies 
alleine daran wie schweineteuer hoch leistungsfähige Spiele Maschinen sind. 
Aber das ist eine Baustelle in der ich nun gar keine Aktien habe. 
Mein letztes Adventure Game hab ich vor über vier Jahren gelöscht. 
Windows 2000 Datacenter Server...

Wie gesagt IDE Platten in Desktop Systemen haben alleine schon aus Kosten 
Gründen ihre Berechtigung.

In Anwendungsfällen in denen es auch bei Desktop Systemen auf einen sehr hohen 
Datendurchsatz ankommt sind aber durchaus SCSI Platten von Vorteil. Zum 
Beispiel im CAD Bereich oder im professionellen Video und Audio Bereich.

Der aktuelle SCSI 320 Standard schaufelt einiges schneller die Daten auf die 
Platte und wieder herunter als IDE Systeme, ungefähr um den Faktor 4 bis 6. 
Dies hängt zum Teil stark von der Art und Weise ab wie die Daten auf die 
Platte geschrieben werden oder gelesen werden. (Immer nur häppchenweise oder 
in grossen Stücken).

Ein weiterer Schritt der Optimierung ist es den Platten oder den Platten 
Controllern einen Cache zu verpassen. Im Prinzip kann man sich dies wie ein 
Druckausdehnungs- oder Speichergefäss vorstellen. Kleine Häppchen Daten 
werden solange gesammelt bis sie einen grösseren Happen bilden und dann erst 
auf die Platte geschrieben werden. Beim Lesen wird nicht nur der Bereich 
ausgelesen de gerade benötigt wird sondern gleich etwas mehr. Dieses Mehr 
wird dann in den Plattencache geschrieben. Die Wahrscheinlichkeit das dieser 
"Overhead" gleich darauf abgefragt wird ist recht gross.
Dieses Caching führt also beim Lesen wie beim Schreiben zu einem teilweise 
erheblichen Geschwindigkeits Gewinn. Er kann bis zum zehnfachen dessen sein 
was eine Platte alleine zu leisten vermag.

Soviel zu den Grundlagen. (c:

Jetzt versuch ich mal eine Zuordnung der Festplatten Systeme zu den 
praktischen Einsatzfällen. Ich spreche hier bewusst von Festplatten Systemen. 
Ein Festplatten System ist eine Festplatte plus dem entsprechenden 
Controller.

- Nicht mehr als eine IDE  Festplatte im System angeschlossen an den IDE
  Controller des Mainboards
  Klassisches Desktop System, billig und gut genug für alltägliche Aufgaben.
  Falls es eine SMART fähige Platte ist sollte man im BIOS die SMART
  Unterstützung aktivieren. Erst dann sind einige Controller in der Lage
  "saure Bereiche " auf frische Reserve Bereiche um zu mappen

- Zwei IDE Festplatten angeschlossen jeweils an den ersten und zweiten Kanal
  des Mainboard Controllers.
  Ist bei GNU/Linux Desktop Systemen durchaus sinnvoll.
  Dies kann bei ausgewogener Verteilung der Partitionen bereits auf GNU/Linux
  Systemen einen Performance Gewinn bedeuten.
  So ist es üblich auf allen Platten die im Rechner stecken eine Swap
  Partition ein zu richten. Dadurch verteilen sich die Zugriffe auf die
  Platten und sind insgesamt etwas schneller. 
  Dafür sollte man allerdings in der /etc/fstab Datei die Priorität der Swap
  Partitionen gleich einrichten. Wenn man dies nicht macht wird immer erst auf
  eine Platte geswappt bis sie voll ist und dann die nächste genommen. Der
  Eintrag dafür sieht wie folgt aus:
  /dev/hda2  none  swap  sw,pri=1  0  0
  /dev/hdc2  none  swap  sw,pri=1  0  0

  Diese Swap Partitionen muss man bei den meisten Distributionen bei der
  Installation von Hand anlegen. Es gibt allerdings Distributionen die dies
  automatisch bei der Installation machen.(c:

- Mehrere IDE Platten angeschlossen an mehrere Controller
  Ist bereits eine gut brauchbare Lösung für einen Terminal Server im
  Klassenraum mit 8 bis 12 Thin Clients. (Solange nur Büroanwendungen und
  nicht speicherhungrige Anwendungen wie Gimp oder andere Benutzt werden.)
  Heutzutage findet man kaum noch ein Mainboard ohne Promise oder Highpoint
  Controller. Damit hat man die Möglichkeit hier mehr als genug Platten im
  System ein zu bauen.
  Wenn man vor der Entscheidung steht wo sollen die Platten denn nun
  angestöpselt werden kann man sich ungefähr an folgende Faustregel halten:

  1. Wenn es geht die Platten an verschiedene Controller des Boards
     anschliessen. 
     Z.B. an den ersten Kanal des on Board IDE Controllers und an den ersten
     Kanal eines Promise oder Highpoint Controllers. (Wobei man *vorher*
     überprüfen sollte ob der jeweilige Promise oder Highpoint Controller
     überhaupt unterstützt wird. Aber ich denke das sollte ja wohl jedem klar
     sein. ;-)

  2. Nach Möglichkeit jede Platte an einen eigenen Kanal eines Controllers.
     Also die erste Platte an den ersten Kanal und die zweite an den zweiten
     Kanal des Onboard Controllers. Allerdings nur wenn man keine CD oder DVD
     Laufwerke betreibt, bei Bürorechnern gar nicht mal so unüblich.

- Eine SCSI Platte an einem einfachen SCSI Controller
  (Einfacher SCSI Controller, damit soll kein Cache oder RAID Controller
  gemeint sein. Ein UW (Ultra Wide, ca 40MB/sec), UW2 (Ultra Wide2, 
  ca 80MB/sec) oder SCSI 320 (ca 180MB/sec bis 220MB/sec) Controller und
  entsprechende Platten sollten es mindestens sein. Ultra (ca 20MB/sec oder
  gar noch SCSI II (ca 10MB/sec) würde ich auch als Geschenk nicht mehr
  annehmen.)
  · Ist bereits eine gute Lösung für einen Terminalserver im Klassenraum der
    16 bis 20 Thin Clients versorgen soll. 
  · Ist auch bereits für einen Server (Tjener) gut brauchbar.

- Mehrere SCSI Platten an einem einfachen SCSI Controller
  Das ist schon ein klassisches Server System
  · Ist eine recht gute Lösung für einen Terminalserver der 20 bis 30 
    Thin Clients versorgen soll. Aber ist auch schon an der Grenze zur
    Lärmbelästigung, sollte also in einen 19 Zoll Schrank oder ausserhalb des
    Klassenzimmers platziert werden.
  Bereits gut für einen Server (Tjener) geeignet.


- mehrere SCSI Platten an einem SCSI Cache Controller
  Bereits eine leistungsfähige Server Ausstattung
  Reicht je nach Ausstattung für 20 bis 50 Thin Clients. Teilweise sogar für
  noch mehr.
  Tip: einige Cache Controller sind sehr sehr giftig wenn man bereits bei der
       Einrichtung allen Speicher (in der Regel DDRAM) auf den Controller
       steckt. Oft ist es besser erst den Controller / die Platten ein zu
       richten und dann erst den Speicher voll auszurüsten.
  Auf dem Controller sollte man immer versuchen das Maximum an Speicher auch
  zu bestücken

- mehrere Platten an einen (64bit-PCI) SCSI RAID Controller
  Hochleistungs Server System

- Mehrere Platten an einem mehrkanaligen 64bit-PCI SCSI RAID Controller
  Hochleistungs Server System für einige Hundert bis Tausend User oder sehr
  grosse Datenmengen (Datenbank Server)
  Damit könnte man bereits mehrere Schulen zentral mit einem Terminal Server
  versorgen.

- Mehrere Platten an einem mehrkanaligen SCSI RAID Controller in einem Storage
  Netzwerk
  Ist wohl eher was für das Rechenzentrum eine Versicherung oder Bank.
  Oder aber für einen Stadtstaat der einen zentralen Terminal Server für alle
  Schulen betreiben will.

Seit einiger Zeit neu auf dem Markt sind Serial ATA (SATA) Festplatten.
Sie sind in den Leistungsdaten vergleichbar mit SCSI Platten. Auch als 
Gesamtsystem, SATA Platte + SATA Controller, entsprechen sie eher einem SCSI 
System als einem IDE System.

Durch diesen neuen Standard wird das ganze in Zukunft für den Nicht-Fachmann 
noch undurchschaubarer, die Qualität wird in kürze von der bisheriger IDE 
Systemen bis hin zu Hochleistungssystemen wie sie heute mit SCSI aufgebaut 
werden gehen. Allerdings dies alles unter dem Oberbegriff SATA, ich bin schon 
gespannt auf die Einfälle der Marketingfuzzies für neue nichtssagende 
Schlagworte.


Wie man sieht ist die Thematik nicht ganz ohne Anspruch. Und ich hab in der 
Vergangenheit auch schon über eine Woche aufgewendet um angehenden EDV Profis 
die Materie halbwegs ausreichend nahe zu bringen. 
(Bei Bedarf kann ich das Thema noch um *einiges* ausdehnen. *grins*)

Vielleicht versteht der eine oder andere jetzt warum ich im allgemeinen so 
darauf herumreite, dass es in bestimmten Fällen von Vorteil ist bereits bei 
der Beschaffung der Hardware entsprechende Fachleute einzuschalten. 

Von der Vertiefung in die Physik des Hochvakuums die bei der Herstellung der 
Festplatten Scheiben zum Zuge kommt hab ich auch noch nicht angefangen.
Das reicht sicherlich aus um dem einen oder anderen Physik Lehrer der 
Oberstufe die Schweissperlen auf die Stirn zu treiben. *lach*


Tschüss,
Thomas

Reply to: