Raid Controller & Raid Systeme
Eine wichtige Komponente im Hardwarebereich eines RAIDs ist der so genannte Raid Controller. Zu früheren Jahren war der Controller nur eine Steckkarte. Diese gab es fast in jedem Elektronikfachhandel. Ein solcher Controller sollte eine CPU mit mindestens 33 Megahertz integriert haben und auch der SDRAM von bis zu 512 Megabyte war sehr wichtig. Diese Voraussetzungen sollten verhindern, dass das System unnötig vom Controller gebremst wird. Das Organisieren, welche Daten wo gespeichert werden sollen, benötigt immens viel Rechenleistung. Mittlerweile sind schon sehr viele Mainboards auf dem Markt, die einen RAID Controller schon von vornherein auf dem Board integriert haben. Dies kann der Benutzer erkennen, weil neben normalen IDE und auch SATA Anschlüssen noch weitere Möglichkeiten zum Anschluss einer Festplatte auf dem Board vorhanden sind. Der RAID Controller ist von verschiedenen Herstellern erhältlich. Zu empfehlen ist neben dem Asus RAID oder dem Intel RAID auch noch das Linux RAID.
Jetzt wo mit dem RAID Controller schon eine Komponente eines RAID Systems bekannt ist, stellt sich natürlich die Frage was denn ein RAID ist und für was es eingesetzt werden kann. Die Abkürzung RAID steht für „redundant array of independent disks“. Damit ist eine Organisation von mehreren Festplatten eines PCs zu einem logischen Laufwerk gemeint. Dies soll eine höhere Datensicherheit gewährleisten, falls es einmal zum Ausfall einer Platte kommen sollte. Es gilt zu beachten, dass nicht der komplette Speicherplatz der HDs zur Verfügung steht, wenn die Festplatten in einem RAID Verbund betrieben werden. Wie die Daten auf die angeschlossenen Platten verteilt und geschrieben werden, das hängt vom verwendeten RAID Level ab. Auch der RAID Controller spielt eine wichtige Rolle und die verwendeten Treiber. Ein Beispiel wäre das Asus RAID. Mit der Software, die beim RAID Controller mitgeliefert wird, ist es möglich ein RAID zu definieren.
Kommen wir nun zu einigen Details zu gebräuchlichen RAID Levels, die so immer noch in der Praxis Verwendung finden. Eines dieser Level ist RAID 1. RAID 1 wird auch als striping bezeichnet und es bringt dem Benutzer eine Beschleunigung beim Schreiben seiner Daten, allerdings ohne eine Redundanz. Wenn es genau geht, so ist RAID 1 nicht als RAID anzusehen, weil es keine Redundanz der gespeicherten Daten gibt und lediglich die Transferraten gespeichert werden.
Die Daten, die zum Speichern anstehen, werden in einzelne Blöcke aufgeteilt und auf alle an den RAID Controller angeschlossenen Festplatten verteilt geschrieben. Dies bringt dem Benutzer einen Vorteil was die Geschwindigkeit angeht, weil viele der Zugriff parallel ablaufen können. Wenn es allerdings zum Ausfall einer der Platten kommt, so sind alle Daten weg. Eine vollständige Rekonstruktion der Daten ist nicht möglich. Mit etwas Glück können die Daten teilweise wiederhergestellt werden. RAID 0 sollte nur eingesetzt werden, wenn eine Sicherung der Daten nicht von Bedeutung ist, beziehungsweise, wenn die Daten anderweitig gesichert werden. Auch zu empfehlen ist dieses RAID Level, wenn hauptsächlich lesend auf das Medium zugegriffen wird. Es sollte auch bedacht werden, dass der Betrieb in Verbindung mit RAID 0 zwangsläufig unterbrochen ist, wenn es zum Ausfall einer der Festplatten kommt. Sinnvoll ist der Einsatz lediglich, wenn in kurzer Zeit große Mengen an Daten gelesen werden. Dies kann beispielsweise die Wiedergabe von Musik oder Videos sein.
Wer RAID 1 einsetzt, der benötigt mindestens zwei Festplatten und auf diesen werden dann genau die gleichen Daten abgelegt. Dieses RAID Level ist auch bekannt unter mirroring oder duplexing. Bei RAID 1 ist auch die volle Redundanz der gespeicherten Daten gewährleistet. Dabei können im Verbund genau so viele Daten gespeichert werden, wie groß die Kapazität der kleinsten angeschlossenen Festplatte ist. Wenn es nun zum Ausfall einer der angeschlossenen Platten kommt, so kann immer noch weitergearbeitet werden mit der zweiten intakten Platte. Vor allem wenn mit sicherheitskritischen Echtzeitanwendungen gearbeitet wird, so ist dieses RAID Level mehr als empfehlenswert. RAID 1 bietet dem Anwender einen hohen Grad an Ausfallsicherheit. Die Daten sind nur dann weg, wenn beide Platten gleichzeitig defekt sind. Die Sicherheit bei RAID 1 wird zusätzlich noch erhöht, weil beim Lesen auf beide Platten zugegriffen wird und so gleich überprüft werden kann, ob bei beiden Platten die identischen Daten übertragen werden. Ist dies nicht der Fall, so kann eine Fehlermeldung ausgegeben werden. Das deutet auch darauf hin, dass es nicht länger eine Spiegelung gibt. Eine gespiegelte Platte stellt auch keinen Ersatz für eine Datensicherung dar. Es kann zu fehlerhaften Schreiboperationen kommen, die von einem Stromausfall, Computerviren oder auch Benutzerfehlern ausgelöst werden können. Ist dies der Fall, so werden die Fehler auch wieder gespiegelt und es gibt keine richtige Sicherung der Daten.
Ein in der Praxis sehr gebräuchliches und oft hergenommenes RAID ist RAID 5. Das Level zeichnet sich vor allem durch die Leistungsfähigkeit in Kombination mit der Parität aus. Bei diesem RAID Level gibt es einen gesteigerten Datendurchsatz beim Lesen der Daten. Zudem ist eine gewisse Redundanz der Daten gewährleistet, ohne dass die Preise dafür ins unermessliche steigen würden. Auch ein Intel RAID kann dieses Level implementieren. Das RAID Level 5 ist nicht zu empfehlen, wenn nur in kleinen Umgebungen gearbeitet wird und die Änderungen nicht zusammenhängen und die Arbeiten dennoch sehr schreibintensiv sind. Der Durchsatz der Daten nimmt nämlich deutlich ab, wenn die Schreibzugriffe zufällig erfolgen. Dies liegt am zweiphasigen Schreibverfahren. Mit RAID 5 gibt es ein äußerst günstiges RAID Level, bei dem die Daten auf mehrere Festplatten verteilt werden können. Dies ist schön und vor allem kann auch das Speichervolumen effektiv ausgenutzt werden.
Der Vorteil kann allerdings erst so richtig ausgespielt werden, wenn mindestens vier Festplatten am Controller angeschlossen sind. Dies liegt zum Teil auch an den hohen Preisen eines RAID Controllers. Die Gesamtkapazität der Festplatten, die genutzt werden kann, errechnet sich mit Hilfe einer einfachen Formel: Kapazität der kleinsten Platte im Array * (Anzahl der Platten -1). Wenn am Controller vier Festplatten mit je 500 Gigabyte angeschlossen werden, so können effektiv 1500 Gigabyte genutzt werden. Die Speicherung der Daten läuft wie bei RAID 0 ab und die Daten werden auf alle Festplatten verteilt. Die Informationen der Parität werden, anders als bei RAID 4, auf alle Festplatten verteilt geschrieben. Wenn es bei einem RAID 5 zum Ausfall kommt, so ist die Datensicherheit bei einem Ausfall lediglich von einer Platte gewährleistet. Jedoch kann die Platte nach einem Ausfall unmittelbar getauscht werden und nachdem eine neue eingesetzt wurde, können die Daten wiederhergestellt werden. Dies wird beim Beispiel der vier Platten mit den Daten der anderen beiden Platten und der Platte, auf der sich Paritätsinformationen befinden, sichergestellt. Wenn bei dem Ausfall ein Paritätsbit wiederhergestellt werden soll, so ist dies möglich mit den Daten der anderen drei angeschlossenen Platten.
Es gibt noch einige weitere RAID Levels, die allerdings heute in der Praxis nicht mehr eingesetzt werden. Eines dieser Level ist RAID 2. Früher wurde dieses RAID Level nur bei Großrechner implementiert und die Daten sind dabei immer in Bitfolgen von fester Größe zerlegt worden. Dies ist geschehen mit Hilfe von so genannten Hamming Codes. Mit diesem Code, war es möglich, dass die Bitfolgen auf größere Bitfolgen abgebildet werden konnten. Zudem wurden die jeweiligen einzelnen Bits eines solchen Hamming Codewortes über die Platten verteil. Somit wurde auch ein hoher Durchsatz an Daten gewährleistet. Das kleinste RAID 2 Level setzt immer noch drei Festplatten voraus. Die Realität sah jedoch anders aus und es wurden meistens mindestens zehn Festplatten eingesetzt.
Ein weiteres RAID Level, das mit der Zeit ins Hintertreffen geraten ist, ist RAID 3. Es handelt sich dabei um den offiziellen Vorgänger von RAID 5. Die Sicherung der Redundanz bei RAID 3 erfolgte jedoch auf einer zusätzlichen Festplatte. Redundanz liegt dann vor, wenn es zur bitweisen Addition von Einzelbits von anderen Festplatten kommt. Mittlerweile ist RAID Level 3 komplett vom Markt verschwunden und wurde vollständig von RAID 5 ersetzt. Bei diesem Level wird ja, wie bereits erklärt, die Parität über alle angeschlossenen Festplatten verteilt geschrieben.
Ein letztes nicht mehr auf dem Markt erhältliches RAID Level ist RAID 4. Bei diesem Level werden ebenso Paritätsinformationen berechnet, die dann auch eine dedizierte Festplatte gespeichert werden. Bei den geschriebenen Einheiten handelt es sich aber um größere Blöcke und nicht um einzelne Bits. Somit kommt es zu einer gewissen Ähnlichkeit mit RAID 5. Ein großer Nachteil dieses Levels ist, dass die Platte mit den Paritätsinformationen auch immer an allen Schreib- und Lesevorgängen beteiligt ist. Weil die Paritätsplatte bei diesem Level fest definiert ist, wird eigentlich immer RAID 5 der Vorzug gegenüber RAID 4 eingeräumt.
Nachdem jetzt alle wichtigen RAID Levels erklärt wurden und auch bekannt ist was ein RAID Controller ist, kann ja eigentlich ein Level implementiert werden. Dazu kann auch verglichen werden zwischen Asus RAID, Intel RAID und Linux RAID. Welches RAID für welche Privatperson oder welches Unternehmen in Frage kommt, das muss jeder selbst analysieren mit den Gegebenheiten vor Ort und mit dem Arbeitsverhalten beziehungsweise den verarbeiteten Mengen an Daten.