RAID Verbünde, besonders gut einsetzbar unter Linux
Willkommen: Besucher   Login |  Registrieren |  neue Artikel |  Alle Artikel |  Impressum |                     

ArtikelVerzeichnis 0AM.de » Artikel » Computer » Computer 4 » RAID Verbünde, besonders gut einsetzbar unter Linux

Raids unter Linux?

Ads

Als vor rund zwanzig Jahren drei Forscher der Universität von Kalifornien in Berkley eine Möglichkeit suchten, große Mengen von Daten sicher zu Speichern, steckte die technische Entwicklung noch nahezu in Kinderschuhen.

Große Festplatten, die damals gebräuchlichen SLEDs (Single Large Expensive Disks) waren extrem teuer und boten keine ausreichende Datensicherheit an. Als Alternative boten sich hier die neuen und deutlich preiswerteren Drives im 5,25-Zoll-Format an, deren Verwendung jedoch nicht ganz unproblematisch war. Die Verwaltungsprobleme, die der Zugriff auf viele kleine Laufwerke mit sich zog, überstieg die finanziellen Einsparungen. So schlugen die drei Doktoranden der Berkley Universität David Patterson, Garth Gibson und Randy Katz ein System vor, welches eine Kombination mehrerer kleinerer Laufwerke darstellte, die zu einem mit Fehlererkennung und Fehlerkorrektur ausgestatteten Verbund zusammengeschlossen wurden. Aufgrund der redundanten Speicherung von Daten, verfügte das System zusätzlich über eine beispielslose Ausfallsicherheit und eine Zuverlässige Speicherung von Daten. Im Jahr 1987 veröffentlichten sie ihre Studie „A Case for Redundant Arrays of Inexpensive Disks (RAID) und das System RAID war geboren.

Das Erreichen des damals wichtigsten Ziels, der Kosteneinsparung hat sich aufgrund der plötzlich sprunghaften Erweiterung der Erreichbaren Plattenkapazität und der bis heute unaufhaltsam sinkenden Preise pro Megabyte Festplattenspeicher bereits von selbst erledigt, wodurch die anderen Vorteile, die RAID-Systeme dem Benutzer bieten können, weiter in den Vordergrund gerückt wurden und kontinuierlich weiter entwickelt werden. Aus den Inexpenssive Disks wurden die Independent Disks, die RAID nun seinen Namen geben.
In Ihrem Forschungsbeitrag schlugen Patterson, Gibson und Katz für verschiedene Methoden vor, mit denen einzelne Platten zu einem Array zusammengefasst werden konnten. Diese Methoden werden mit den RAID-Levels 1 bis 5 bezeichnet, einer Terminologie, die sich bis heute erhalten hat.

Einer der nun zentralen Aspekte von RAID-Systemen ist mit Sicherheit die Verbindung einzelner Festplatten zu einem einzigen logischen Volume, welches die Verwaltung der Daten auf Anwenderseite deutlich vereinfacht. Durch die Parallelisierung der Plattenzugriffe ergibt sich darüber hinaus noch ein deutlicher Geschwindigkeitsvorteil, der in der heutigen Zeit unumgänglich ist. Dieser lässt sich jedoch nur dann voll nutzen, wenn eine genügend große Kanalanzahl einen freien Zugriff auf alle Laufwerke gewährleistet.
Die Kombination derart vieler Vorteile, die bis heute von Anwendern geschätzt werden, sorgte für eine rasche Verbreitung RAID-basierender Massenspeicher und die Entwicklung zusätzlicher RAID-Varianten, die in Bezug auf bestimmte Einsatzgebiete optimiert wurden und weiterhin optimiert werden. So basieren Server, die eine Vielzahl an Daten verlässlich speichern und abrufbar halten müssen, auf RAID-Konzepten. Heute reicht die Bandbreite der allgemein verfügbaren Level von RAID 0 bis RAID 6 (vgl. 1 bis 5 im Jahre 1987). Weiterhin wurden Kombinationen entwickelt, wie RAID 0+1 oder 50, mit RAID 6 verwandte Verfahren (RAID n+m) mit nochmals erhöhter Ausfallsicherheit.

RAID-Systeme lassen sich sowohl via Software als auch via Hardware erstellen, wobei beide Varianten natürlich auf Software zurückgreifen müssen. Daher ist diese Begrifflichkeit leicht irreführend.




Beim Software RAID wird die Steuerung des Plattenverbundes über eine Software gesteuert, die sich auf der CPU des Hosts befindet. Viele Betriebssysteme liefern bereits entsrpechende Komponenten zur Erstelung und Verwaltung von RAID-Systemen. Das freie Betriebssystem Linux verwaltet generell Arrays der Level 0, 1, 4 und 5 sowie ab Kernel 2.6 auch solche des Levels 6, ohne weitere Installation und bietet somit einen deutlichen Vorteil gegenüber anderen Betriebssystemen, die nicht alle Level verwalten können oder sogar gar keine ohne Installation einer zusätzlichen Software verwalten können.
Ein Software-RAID, besonders unter Linux, stellt also eine sehr preiswerte Möglichkeit dar, vor allem da sich diese per Prozessor-Upgrade sehr schnell an höhere Anforderungen anpassen. Negativ hierbei ist jedoch, dass dadurch eine recht hohe CPU-Auslastung einhergeht.
Neben dem Software-RAID, das hier aufgrund der naturgemäß guten RAID-Bildung unter Linux im Mittelpunkt steht, existiert ebenfalls ein Hardware-RAID, bei welchem ein eigener Controller die Ansteuerung des Arrays übernimmt. Dies entlastet die CPU und bringt eine höhere Performance mit sich. RAID-Controller verbinden die Laufwerke gleich über mehrere Kanäle, was gleichzeitige Laufwerkszugriffe und damit einhergehend höhere Transferraten
mit sich bringt. Im Gegensatz zum Software-RAID ist die Hardware-Variante jedoch deutlich teurer, da zusätzlich zu den Hardware-Komponenten eine Verwaltungssoftware benötigt wird, welche auf das jeweilige Betriebssystem zugeschnitten ist.

Im Vergleich zwischen Software- und Hardware-RAIDs zeigt sich, dass allein aus Kosten-Nutzen-Sicht die Softwarelösung eindeutig am sinnvollsten ist. Hier empfiehlt sich die Einrichtung und Verwaltung eines RAID-Verbundes über das immer weiter aufstrebende kostenlos verfügbare und vor allem unabhängig einsetzbare Betriebssystem Linux, was bereits Arrays aller existierenden Level verwalten kann, ohne weitere Software installieren bzw. anschaffen zu müssen.

Welche Anforderung muss nun eine Festplatte nun eigentlich Erfüllen, um Baustein eines RAID-Verbundes werden zu können? Noch vor wenigen Jahren ließen RAID-Controller bei der Anforderung an die verwendeten Platten nicht mit sich spaßen. SCSI war quasi Pflicht als Interface, alle verwendeten Platten mussten die gleiche Kapazität aufweisen und die Platten mussten alle aus derselben Bauserie stammen.

Mit der weiter voranschreitenden technischen Entwicklung, die auch vor RAID nicht Halt gemacht hat, sind die Anforderungen an die verwendeten Laufwerke wesentlich einfacher geworden. Im Serverbereich hat sich jedoch nicht allzu viel geändert, hier kommt nach wie vor SCSI beziehungsweise der serielle Nachfolger SAS zum Einsatz. Man kann diese jedoch auch gegen die kostengünstigeren Serial-ATA-HBA austauschen.


Moderne Controller erlauben mittlerweile ebenso wie Software-RAID-Lösungen den Zusammenschluss von Festplatten verschiedener Kapazitäten zu einem Verbund. Der einzige sich hierbei ergebende Nachteil ist, dass sie hier nicht die gesamte vorhandene Nettokapazität für das Array verwenden lässt, da die RAID-Verfahren gleich große Platten voraussetzen wird in einer Mischkonfiguration jedes Laufwerk nur bis zur Kapazität der kleinsten vorhandenen Festplatte genutzt.

Nachdem wir nun genug über die Ursprünge von RAID-Verbünden und die technischen Voraussetzungen wissen, widmen wir uns den verschiedenen RAID-Levels, welche vom Betriebssystem Linux unterstützt werden.

Das RAID Level 0

Wie man bereits am Namen „NULL“ erkennen kann, handelt es sich hierbei um kein redundantes Speicherverfahren. Lediglich der Zugriff auf die Festplatten wird unter diesem Level beschleunigt, wozu RAID 0 zwei oder mehr Festplatten zu einem logischen Laufwerk zusammenfasst. Die Daten werden hierbei in aufeinander folgenden Blöcken, den so genannten Stripes gleichmäßig über alle Verbundslaufwerke verteilt. Dies steigert zwar die Durchsatzrate deutlich, senkt aber, aufgrund der fehlenden Redundanz, die Sicherheit der Datensätze. Fällt nun eine Platte im Verbund aus, so sind alle gespeicherten Daten verloren.
Die Geschwindigkeitssteigerung durch Striping, so der Fachbegriff für RAID 0, macht sich vor allem bei komplexen, zusammenhängenden Datensätzen deutlich bemerkbar, da hier auf allen platten parallel operiert wird und die Transferrate dadurch vervielfacht wird. Aufgrund dieser Eigenheiten kommt Striping meist dort zum Einsatz, wo große Datenmengen verarbeitet werden müssen: beispielsweise bei der Audio- und Videoverarbeitung.

Das RAID Level 1

Das RAID Level 1 wird auch als Mirroring oder Spiegelung bezeichnet. Bereits der Name verdeutlicht, wie das Verfahren arbeitet. Alle Speicherzugriffe erfolgen parallel auf zwei Laufwerken des Verbundes, so dass jede Platte quasi ein Spiegelbild der anderen Platte darstellt, wodurch alle Daten doppelt zur Verfügung stehen. Ein sichereres System existiert kaum, da alle Nutzdaten erhalten bleiben. Nachteil ist jedoch, dass bei RAID 1 nur die Hälfte der Plattenkapazität für die Datenspeicherung zur Verfügung steht, so dass sich die Kosten der Datenspeicherung letztlich verdoppeln. Da der Schreibzugriff hier in etwa genauso schnell erfolgt, wie bei Einzellaufwerken, eignet sich Mirroring vor allem für Systeme, die Daten hauptsächlich zum Lesezugriff bereit halten und nicht zur weiteren Bearbeitung der Daten.

Das RAID Level 0+1

Wie bereits der Name verdeutlicht, stellt das RAID Level 0+1 eine Kombination aus Mirroring und Striping dar, wodurch sich Geschwindigkeitsgewinn aus dem Striping und Datensicherheit aus dem Mirroring verbinden lassen. RAID 0 erzielt durch das lineare Verbinden Zusammenschalten mehrerer Festplatten sowohl beim Lesen als auch beim Schreiben einen Geschwindigkeitsvorteil, wohingegen die zusätzliche Spiegelung der Daten im Stripeset auf weitere Platten für genügend Datensicherheit sorgt. Die Platten können hierbei über zwei verschiedene Verfahren angesteuert werden. Bei sechs verbundenen Festplatten lassen sich beispielsweise zunächst 3 Platen stripen und diese können dann auf die weiteren drei Platten logisch gespiegelt werden.
Die umgekehrte Vorgehensweise, spiegelt zunächst zwei Platten und verbindet diese nun zu einem Stripset, wobei ebenfalls die Kapazität dreier Festplatten zur Verfügung steht. Aufgrund der Datensicherheit ist die zweite Möglichkeit jedoch sinnvoller. Wurde zuerst gestriped, so ist das betroffene Set unbrauchbar. Sobald ein Laufwerk ausfällt sind die Daten verloren. Spiegelt man zuerst, verliert das Laufwerk zwar seine Redundanz beim Ausfall, jedoch entsteht kein Datenverlust. Die Wahrscheinlichkeit eines totalen Datenverlustes sinkt somit auf ein Drittel gegenüber der ersten Methode.

Mirroring bietet somit zwar eine perfekte Redundanz und somit Sicherheit vor Datenverlusten, verursacht jedoch auch hohe Kosten. Um diesen Nachteil zu beheben, arbeiten die RAID-Level 2 bis 7 mit Fehlerkorrektur. Hier werden aus den Daten zunächst Nutzdaten ermittelt, die per Striping auf wenigstens zwei Datenlaufwerke verteilt werden. Aus dem Dateninhalt wird anschließend ein Korrekturwert errechnet, mit dem sich nach einem Ausfall einer Verbundsplatte die verlorenen Daten des defekten Laufwerks wieder rekonstruieren lassen. Dieser so genannte ECC-Code wird auf einem eigenen Parity-Laufwerk abgelegt.

Das RAID Level 2

Diese Option bietet einen zusätzlichen Schutz gegen Fehler, die sich innerhalb der Festplatte befinden, ist aber aufgrund seiner aufwendigen Implementierung sehr rar vertreten. Es basiert auf einer bitweisen Aufteilung der Daten, neben einer Fehlerkorrektur, die bei Totalausfall die Daten der Platte rekonstruieren kann, werden etwaige Schreibfehler in einzelnen Daten aufgezeigt. Jedoch kann nicht erkannt werden, welche Platte die falschen Daten liefert, somit ist eine Korrektur nicht möglich. Neben 8 Bit für Daten verwendet RAID 2 noch weitere 2 Bit für den ECC-Code. Damit kann auch die Position des Fehlers ermittelt werden und das entsprechende Bit korrigiert werden.

Das RAID Level 3

Hier wird auf ein Byte-weises Striping der Daten gesetzt. Zur Fehlererkennung setzt es jedoch im Gegensatz zu RAID 2 auf die integrierten Funktionen der Festplatten, wodurch es mit einem einzelnen, dedizierten Parity-Laufwerk auskommt. Die Generierung der ECC-Daten wird dadurch erleichtert, dass die Kopfposition der Laufwerke synchronisiert werden, Schreibzugriffe sich parallel auf den Laufwerken speichern lassen, kleinere Lesezugriffe erfordern dagegen die synchrone Neupositionierung der Köpfe aller Platten im Verbund und kosten entsprechend Zeit. Nur bei großen Lesezugriffen, also Zugriffen auf große Lesedateien macht sich der Geschwindigkeitsvorteil von RAID wieder bemerkbar. Daher kommt das Verfahren vor allem bei der Verarbeitung großer, zusammenhängender Datenmengen auf Einzelplatzrechnern wie etwa in der Verarbeitung von Multimediadateien zum Einsatz.
Die ursprünglich von Patterson, Gibson und Katz entworfene Methode des RAID 3 sah ein Striping von Bytes beziehungsweise Multibyte-Chunks vor (typischerweise deutlich unter 1024 Byte). Das daraus entwickelte RAID 4 sollte stattdessen die damals typischen Unix-Festplatten-Blocks (4 oder 8 KByte) als Stripe-Größe nutzen. Unix, auf dem das bekannte Betriebssystem Linux basiert. Abweichend von der entworfenen Theorie der Amerikaner verwenden heutige RAID-3-Systeme ein blockweises Striping, um insbesondere eine bessere Balance zwischen Schreib- und Lese-Performance zu erzielen.

Das RAID Level 4

RAID 4 basiert in Grundzügen auf dem besprochenen RAID 0 Verfahren. Neben dem Striping belegt dieses Verfahren allerdings eine zusätzliche Partition mit so genannten Paritätsinformationen, aus denen eine defekte Partition wieder hergestellt werden kann. Nachteil dieser eigentlich sehr speicherplatzsparenden Methode ist wiederum, dass hierdurch zusätzliche CPU Leistung beansprucht wird.

Das RAID Level 5

RAID 5 ist das letzte zu besprechende Level in der RAID Reihe. Hier werden die Paritätsinformationen zum Restaurieren einer defekten Partition zusammen mit den tatsächlichen Daten über alle Partitionen verteilt und nicht wie im RAID 4 in einer zusätzlichen Partition abgelegt. Allerdings geht dies mit einem erhöhten Kapazitätsverlust einher. Will man 5x1 GB zu einem RAID-5 zusammenfassen, so bleiben für die eigentlichen Daten noch 4x1 GB Platz übrig. Entgegen der schlechteren Schreibgeschwindigkeit ähnlet die Lesegeschwindigkeit qualitätiv jener eines RAID 0 verbundes. Es ergibt sich somit hauptsächlich eine
Steigerung der Lesegeschwindigkeit der Datensätze im Gegensatz zu einer einzelnen Festplatte.

Nachdem nun alle RAID Level kurz beleuchtet wurden, fassen wir nocheinmal zusammen. Nich alle Level bieten die gleiche Ausnutzung an Speicherkapazität, Datensicherheit und Schnelligkeit in Bezug auf Schreib- bzw. Lesevorgang der Datensätze. Einige Verbunde sichern sich durch redundantes Speichern der Daten ab, andere können durch Paritätsinformationen verloren gegangene Daten rekonstruieren. Wichtig ist bei der Auswahl eines geeigneten RAID-Levels eine genaue Abwägung zwischen den Faktoren Verfügbarkeit, der Kapazität und der Datensicherheit. Eine Organisation der Platten als JBOD verursacht die geringsten Kosten, lässt jedoch in Sachen Ausfallsicherheit und Geschwindigkeit zu wünschen übrig. Ein Array des Levels 1 garantiert dagegen höchste Verfügbarkeit, produziert jedoch aufgrund seiner Redundanz enorme KostenWie sich deutlich erkennen lässt, bringt jedes der RAID-Verfahren dabei spezifische Vor- und Nachteile auf die Waagschale. Jeder muss für sich selbst entscheiden, welche Vorteile für ihn den größten Nutzen haben und welche Nachteile er dadurch gewillt ist, hinzunehmen. Sicher ist, dass alle RAID Levels im Sinne der Datenspeicherung und Sicherung einen großen Fortschritt in die technische Entwicklung und Datenverarbeitung gebracht haben.

Wer jedoch auf ein Betriebssystem wie Linux zurückgreifen kann, wird hiermit eine kostengünstige und einfache Lösung finden, seine komplexen Daten sicher zu verwalten und abzuspeichern. Einen 100%igen Verlust vor Datenverlusten können jedoch auch RAID-Verfahren nicht bieten.


Diese Seite über "Raids unter Linux?" drucken

Social Bookmarks wong it  del.icio.us  Furl  webnews  yigg it   seoigg   www.h00ligan.de  xixxi.de 

Social Sites Teilen

Links

Weitere Artikel in dieser Kategorie
 » Call of Duty
    von ErwinRommel am 14.12.2007
 » SSD - Solid State Disk
    von Max42 am 14.10.2007
 » Hybridfestplatten
    von Max42 am 16.10.2007
 » Drucker Toner
    von smoru am 18.10.2007
 » Laptoptasche oder KofferTrolly
    von Fred am 21.10.2007
 » Drucker - viele unterschiedl...
    von Eva D am 24.10.2007
 » Datenrettung
    von Sanji am 28.10.2007
 » PC-Kauf - Gebrauchte und Gün...
    von Deprofundis am 28.10.2007
 » Der nächste SQL Server von M...
    von Bsdok am 29.10.2007
 » Die PlayStation 3, die Video...
    von Celso Cardozo am 01.11.2007
 » Erweiterter Schutz für Netzw...
    von Theis am 02.11.2007
 » Kampf der Formate - Blu-Ray ...
    von friedolin am 04.11.2007
 » Was ist ein CRM-System?
    von cbukowski am 05.11.2007
 » Datenrettung - ist keine Zau...
    von blogsash am 07.11.2007
 » Daten on the Road
    von mosch am 10.11.2007
 » Halo 3 - Masterchiefs Final ...
    von kaidatana am 10.11.2007
 » Die eigene Homepage in 5 Minuten
    von johns am 13.11.2007
 » CD Rohlinge
    von smoru am 13.11.2007
 » Lotus Notes CRM wieder im Ko...
    von cbukowski am 15.11.2007
 » Schutz gegen Abzocke aus dem...
    von tobberich am 15.11.2007
 » Lotus Notes Teamkalender - u...
    von Rosa Rosenrot am 23.11.2007
 » Wie arbeitet man mit Grafikp...
    von yari am 25.11.2007
 » Lotus Notes Gruppenkalender
    von Wittrien am 26.11.2007
 » Ein Laptop ist überall einsa...
    von samson am 29.11.2007
 » Die Hardware des neuen Asus EEE
    von betaversion am 30.11.2007
 » Toner ist die Druckfarbe die...
    von smoru am 01.12.2007
 » Macbook für 300 Euro - So ge...
    von JHaupt am 02.12.2007
 » ID Card Solutions für Firmen...
    von Manfred am 03.12.2007
 » DSL Zugang
    von Mabre am 04.12.2007
 » Notebooks günstiger erwerben
    von Office99 am 05.12.2007
 » Der Bildschirmschoner
    von dmeister am 05.12.2007
 » Steuerung von Marketingkampa...
    von cbukowski am 06.12.2007
 » CRM Software als Unternehmen...
    von smoru am 06.12.2007
 » Lotus Notes als Software im ...
    von smoru am 06.12.2007
 » Es gibt 3 DVI Arten, hier we...
    von oamlars am 06.12.2007
 » CD/DVD Vervielfältigung
    von smoru am 11.12.2007
 » Überspielen von Kassette auf CD
    von smoru am 11.12.2007
 » Schallplatten digitalisieren...
    von accuphase am 12.12.2007
 » CRM Beratung - der Umgang mi...
    von Frank Mueller am 14.12.2007
 » Asus EEE PC - Das 299 Euro N...
    von viva am 15.12.2007
 » Elektronische Emotionen
    von Spyro am 22.12.2007
 » CD Rohlinge vs. DVD Rohlinge...
    von smoru am 26.12.2007
 » Die Speicherkapazität normal...
    von smoru am 26.12.2007
 » Immer mehr Brenner verfügen ...
    von smoru am 26.12.2007
 » RAID Verbünde, besonders gut...
    von WoWGlider am 30.12.2007
 » Raid Controller
    von WoWGlider am 04.01.2008
 » Google Earth
    von Graccem am 04.01.2008
 » 299 Euro Notebook - Asus EEE PC
    von viva am 05.01.2008
 » Datenrettung von Festplatten...
    von Cera am 08.01.2008
 » Spieleklassiker in der Onlin...
    von markus-holz am 08.01.2008



Weitere Tipps und Informationen über unser Artikelverzeichnis gibt es hier. Die Sitemap listet alle Artikel im 0AM.de Artikelverzeichnis.

Im 0AM.de Artikelverzeichnis werden interessante Projekte im Rahmen eines Artikels vorgestellt, wie hier der Artikel über
`RAID Verbünde, besonders gut einsetzbar unter Linux`, auch Sie können hier Autor werden und einen Artikel veröffentlichen lassen.