Obwohl die Größen von Festplatten auf dem Markt ständig zunehmen, ist der Bedarf der großen Server durch die aktuellen Plattengrößen nicht zu decken. Speicherbedarf in der Größenordnung vieler hundert Gigabyte bis hin zu Terrabyte sind heute an der Tagesordnung, entsprechende Laufwerke gibt es aber nicht.

Zum zweiten steigen heute die Ansprüche an die Verfügbarkeit der Daten. Ein modernes Unternehmen, dass seine gesamte Verwaltung über Computer realisiert kann viele Millionen Euro verlieren, wenn ihre EDV auch nur ein paar Stunden ausfällt. Dagegen werden sogenannte Hochverfügbarkeitssysteme eingesetzt, die durch massiven Einsatz von Redundanz einen Ausfall nahezu unmöglich machen.

Als Redundanz wird in diesem Fall die mehrfache Verfügbarkeit eines Bauteils bezeichnet, durch die der Ausfall eines einzelnen Bauteils keine Auswirkung auf das gesamte System hat. Besitzt ein Computer etwa zwei redundante Netzteile, dann führt der Ausfall eines der beiden Netzteile nicht mehr zum Ausfall des ganzen Computers.

Diese beiden Anforderungen, Plattengröße und Redundanz, führten zur Entwicklung von RAID. RAID steht für Redundand Array of Independend Disks also etwa Redundante Zusammenfassung unabhängiger Laufwerke.

Der erste Aspekt von RAID ist es, mehrere physikalische Platten zu einer logischen Platte zu verbinden. Dadurch entstehen Platten mit Größenordnungen, die im Handel nicht zu haben sind. Die logische Platte, die aus der Zusammenfassung mehrerer Platten resultiert wird vom Betriebssystem als eine Festplatte verwaltet, kann also z.B. Dateien speichern, die auf eine einzelne Platte nicht gepasst hätten.

Der zweite Aspekt liegt in der Redundanz. Durch bestimmte Mechanismen ist es möglich, dass eine einzelne Platte aus einem RAID-Array ausfällt, aber trotzdem noch alle Daten weiter zur Verfügung stehen. Diese Mechanismen unterscheiden sich bei den verschiedenen Leveln von RAID und werden weiter unten genauer beschrieben.

Grundsätzlich kann ein RAID-Array auf verschiedene Arten gesteuert werden. Es gibt heute spezielle SCSI-Hostadapter, die die gesamte Verwaltung des RAID-Arrays übernehmen. RAID-Arrays, die mit solchen Karten aufgebaut sind, werden als Hardware-RAID bezeichnet.

Im Gegensatz dazu kann die Verwaltung der Platten auch über eine reine Softwarelösung implementiert werden, was den Vorteil hat, dass es dann auch mit den wesentlich billigeren IDE-Platten funktioniert. Nachteil dieser Lösung ist, dass natürlich jetzt Prozessorzeit herangezogen wird.

Die LINEAR Technik

Diese Technik beschreibt zunächst einmal nur die Fähigkeit, zwei oder mehrere Platten zu einer logischen Platte zusammenzufügen. Dabei werden die einzelnen Platten einfach hintereinander (linear) zusammengefasst. Dadurch entsteht eine große logische Platte, allerdings ohne nennenswerte Vorteile. Weder die Sicherheit wird erhöht (wenn eine Platte defekt ist, dann wird höchstwahrscheinlich der Zugriff auf alle Daten unmöglich sein) noch die Zugriffsgeschwindigkeit. Nur wenn zufällig zwei User auf die logische Platte zugreifen und einer auf der ersten physikalischen arbeitet, der andere auf der zweiten, könnte ein Geschwindigkeitsvorteil entstehen (weil beide Zugriffe gleichzeitig stattfinden könnten).

raid_linear
raid_linear

Diese Technik ist noch nicht Teil von RAID, sie ist nur ein Schritt in die Richtung und dient hier auch nur zur Demonstration.  

RAID Level 0 (striping)

Auch diese Technik ist noch nicht redundant. Hier werden auch mehrere Platten zu einer logischen Platte zusammengefasst. Allerdings werden die Blöcke der einzelnen physikalischen Platten jetzt gleichmäßig auf die logische Platte verteilt. Der erste Block der logischen Platte ist der erste Block der ersten physikalischen Platte, der zweite Block der logischen ist der erste der zweiten physikalischen usw.

Durch diese Technik entsteht zwar noch keine Sicherheit, die Zugriffsgeschwindigkeit steigt aber. Alle Daten, die auf die logische Platte geschrieben werden, können gleichzeitig mit mehreren Schreib-Leseköpfen bearbeitet werden, weil sie ja physikalisch auf mehrere Festplatten verteilt werden.  

Raid 0

Raid Level 1 (mirroring)

Um jetzt tatsächliche Redundanz zu erzeugen, wurde der erste RAID-Level definiert. In diesem Level werden alle Daten der logischen Platte gleichzeitig auf mehrere physikalische Platten geschrieben. Das führt zu einer sogenannten Plattenspiegelung. Fällt eine Platte im laufenden Betrieb aus, stehen weiterhin alle Informationen zur Verfügung.

Durch diese Technik wird allerdings der Effekt der großen Platte verschenkt. Die Gesamtkapazität der logischen Platte ist also jetzt genauso groß, wie die Kapazität einer einzelnen physikalischen Platte. Naturgemäß müssen die verwendeten physikalischen Platten exakt gleich groß sein, damit diese Technik richtig funktioniert.

Raid 1

Allerdings ist es möglich, mehrere RAID-Level miteinander zu kombinieren. Es macht also durchaus Sinn, etwa RAID Level 0 zusammen mit RAID-Level 1 zusammen anzuwenden, also z.B. vier physikalische Platten zu haben, von denen jeweils zwei zu einem RAID-0 zusammengefasst sind. Diese RAID-0 Platten werden mit RAID-1 gespiegelt. Der Nachteil dabei ist der, dass uns auch hier nur 50 Prozent der Gesamtkapazität aller Platten zur Verfügung steht.  

RAID Level 3

Um die Redundanz zu erhalten, gleichzeitig aber die Kapazitäten der physikalischen Platten besser zu nutzen wurde dann RAID Level 3 eingeführt (der fehlende Level 2 war nie auf dem Markt und wurde nur zur Entwicklung benutzt). Dieser RAID-Level arbeitet grundsätzlich nach dem Prinzip von RAID-0 (striping), jedoch mit einer zusätzlichen Platte, auf der sogenannte Paritätsinformationen abgespeichert wird. Meist wird diese Information einfach über ein XOR-Verfahren gebildet, das dazu geeignet ist, jedes fehlende Element wieder herzustellen.

Raid 3

Mit Hilfe der XOR-Methode lassen sich Daten von beliebig vielen Platten wiederherstellen, die durch einen Defekt verlorengegangen sind. RAID-3 kann also bei N Platten eine Nennkapazität von N-1 erreichen.  

Raid Level 5

Der häufigste kommerziell genutzte RAID-Level ist jetzt der Level 5 (der vierte Level wurde – wie der zweite – niemals kommerziell eingesetzt). Er arbeitet im Prinzip wie RAID Level 3 nur dass er die Paritätsinformation nicht mehr auf eine Platte gesondert speichert, sondern sie auf alle Platten verteilt. Dadurch wird die Zugriffsgeschwindigkeit und die Sicherheit erhöht.

Raid 5

Diese Methode ist noch effizienter als RAID-3, was dazu geführt hat, dass heute der Level 5 den Level 3 komplett verdrängt hat.  

Zusammenfassung

In der Praxis kommen heute verschiedene RAID-Level zur Anwendung. Die größte Rolle spielen dabei die Level 0, 1 und 5. Level 0 und 1 bieten sozusagen jeweils nur einen Vorteil, 0 die Zusammenfassung mehrerer Platten und 1 die Redundanz. Aus diesem Grund werden die beiden gerne kombiniert, um beide Vorteile zu haben. In Kombination der beiden Level steht aber nur 50% des Gesamtplattenplatzes zur Verfügung.

Level 5 hingegen bietet sowohl die Zusammenfassung zu großen Platten an, als auch die Redundanz. Aus diesem Grund ist RAID-5 heute die gebräuchlichste Form, zumal die Nutzkapazität hier wesentlich größer ist, als bei der Spiegelung. Fassen wir z.B. acht Platten zu einem RAID-Array zusammen, so steht uns die Kapazität von 7 Platten zur Verfügung und wir haben trotzdem den Vorteil der Redundanz. Weiter mit Raid Konfigurieren.