Neue Probleme
Die Technik von Raid 5 war lange Zeit das Lieblingskind vieler Administratoren. Allerdings berücksichtigt die Rechnung oben nicht alle möglichen Fehlerquellen, die zum Datenverlust führen können. Die zweite Kennziffer in der Tabelle 1 ist die Bitfehlerrate. Sie besagt, dass die Festplatte nach einer bestimmten Anzahl gelesener Bits zurückmeldet: Ich kann den Block nicht mehr lesen.
Bisher spielte dieser Fehler keine wesentliche Rolle, da er durchschnittlich nur alle 1015 Bits oder umgerechnet alle 125 TByte auftritt. Selbst Platten, bei denen der Fehler zehnmal häufiger zu beobachten ist, waren bisher noch kein großes Problem. Das aber ändert sich nun mit ständig wachsenden Festplattengrößen.
Folgendes Beispiel verdeutlicht das: Ein Administrator beschließt, zehn Festplatten mit jeweils 1 TByte zu kaufen. Daraus baut er ein Raid-5-Array mit 9 TByte. Die Wahrscheinlichkeit, dass innerhalb der ersten fünf Jahre keine einzige Festplatte ausfällt beträgt nur ((1-0.0034)10)5 = 84,3 Prozent. Das Risiko für einen Ausfall ist also 15,6 Prozent.
Der Admin hofft dieses Risiko mit dem Raid-5-Ansatz zu beherrschen, da das System ja die ausgefallene Festplatte einfach aus der Parity-Information wiederherstellen kann. Bei der Wiederherstellung muss es aber alle Daten aller Festplatten inklusive der Parity-Informationen lesen, also die kompletten 9 TByte.
Falls der Chef des Administrators nun nur die billigen Festplatten mit einer Bitfehlerrate von BER = 10-14 genehmigt hat, gibt es möglicherweise ein Problem. Die Anzahl der Bits, die zu lesen sind, beträgt M = 8 Bits/Byte * 9 TByte = 7,2*1013 Bit. Die Wahrscheinlichkeit, dass alle diese Bits ohne Fehler lesbar sind, beträgt (1-BER)M. Im vorliegenden Beispiel wären das 48,7 Prozent. Oder anders gesagt: Mit hoher Wahrscheinlichkeit (51,3 Prozent) lässt sich mindestens ein Block nicht wieder herstellen.
Keine schöne Situation für den Administrator. Bei besseren Festplatten (BER = 10-15) beträgt die Chance für den Verlust eines Sektors immerhin noch 7 Prozent. Und das Problem verschärft sich exponentiell mit steigender Festplattenkapazität, da die Hersteller die Zuverlässigkeit ihrer Produkte nicht im selben Maße steigern können.
Als Alternativen bleiben nur andere Raid-Konzepte. Wenn pDisk die Wahrscheinlichkeit ist, die komplette Festplatte ohne Fehler auszulesen, dann ist laut [2]:
Abbildung 1: Funktion von Raid 6 als Schema: Im Gegensatz zu Raid 5 wird zu jedem Stripe eine zusätzliche Paritätsinformation gebildet und auf einer separaten Festplatte abgelegt.
Die gleiche Rechnung wie im obigen Beispiel zu Raid 5 ergibt hier bei der 1-TByte-Festplatte (BER = 10-15) mit pDisk = 0,992 eine MTTDL von nur noch 178 Jahren oder anders ausgedrückt, eine Chance von 0,56 Prozent pro Jahr, doch Daten zu verlieren.
Abbildung 1: Funktion von Raid 6 als Schema: Im Gegensatz zu Raid 5 wird zu jedem Stripe eine zusätzliche Paritätsinformation gebildet und auf einer separaten Festplatte abgelegt.
Raid 6 und anderes
Wenn eine Parity-Disk nicht mehr ausreicht, um die notwendige Datensicherheit zu gewährleisten, ist ein Ausweg, auch die Parity-Informationen redundant zu halten. Die einfachste Variante heißt Raid 6. Zusätzlich zur einfachen Paritätsinformation berechnet Raid 6 eine zweite und legt sie auf einer weiteren Festplatte ab. So dürfen zwei Festplatten gleichzeitig ausfallen oder bei Ausfall einer Festplatte darf ein Sektor bei der Wiederherstellung defekt sein - trotzdem sind alle Daten rekonstruierbar. Der Nachteil der redundanten Parity-Informationen ist der Performanceverlust, der mit der doppelten Berechnung einhergeht.
Unter Linux mit dem Raid-Modul des Kernels gibt es aber keine Alternative. Nur große Hersteller bieten hier Lösungen an, die Datensicherheit mit Performance vereinen. Als Beispiel seien hier das Raid-Z- und das Raid-Z2-Verfahren vorgestellt, die in Suns ZFS zum Einsatz kommen. Eine alternative Technik von Net-app heißt Raid DP.
Das große Problem bei Raid 5 und 6 ist, dass sie bei jedem Schreiben die Parity-Information des ganzen Streifens neu berechnen. In ZFS ist das Raid nahtlos ins Filesystem integriert. Deshalb kann ZFS die Größe eines Streifens zur Berechnung des Raid immer an die aktuelle Datengröße anpassen und muss keine starren Größen verwenden. ZFS schreibt also bei jedem Datensatz eine eigene Paritätsinformation, egal ob ein Datenblock von 512 Byte oder eine Datei von 128 KByte auf die vorhandenen Festplatten zu verteilen ist. Die maximale Größe der Daten zur Berechnung der Parität passt sich an die Anzahl der tatsächlich vorhandenen Festplatten an.
Näheres zur Technik hinter Raid Z zeigt [3]. Durch die Verwendung einer dynamischen Größe entfällt die Notwendigkeit, die komplette Parity neu zu berechnen, sobald sich nur ein Datenblock ändert. Mit Raid Z2 setzt Sun noch eins drauf und verwendet einfach einen zweiten Algorithmus zum Berechnen der zweiten Parität. Er gewährleistet, dass alle Daten auch bei Ausfall zweier Festplatten rekonstruierbar bleiben. Eine genaue Erklärung findet sich unter [4].
Die MTTDL berechnet sich in Arrays mit einer doppelten Parity zu:
Im obigen Beispiel ergibt das 76103 Jahre, also fast das gleiche Ergebnis wie für einfaches Raid 5. Mit diesem Ausblick können die Administratoren dem weiteren Anwachsen des Speicherbedarfs gelassen entgegen sehen. (jcb)
| Infos |
|---|
| [1] E. Pinheiro, W.-D. Weber and L. A. Barroso, "Failure Trends in a Large Disk Drive Population": Proceedings on the 5th USENIX Conference on File and Storage Technologies, 2007 [2] Peter M. Chen et. al., "Raid: High-Performance, Reliable Secondary Storage": ACM Computer Surverys, Vol 26 No 2, 1994 [3] Raid Z: [http://blogs.sun.com/bonwick/entry/raid_z] [4] Double Parity: [http://blogs.sun.com/ahl/entry/double_parity_raid_z] |
| Der Autor |
|---|
| Dr. Michael Schwartzkopff arbeitet als Berater bei der Firma Multinet Services GmbH. Mit dem Linux-Virus ist er seit dem ersten Kontakt 1994 über eine Yggdrasil-Distribution infiziert. |
Diesen Artikel als PDF kaufen
Express-Kauf als PDF
Umfang: 3 Heftseiten
Preis € 0,99
(inkl. 19% MwSt.)
Als digitales Abo
Weitere Produkte im Medialinx Shop »
Versandartikel
Onlineartikel
Alle Rezensionen aus dem Linux-Magazin
- Buecher/07 Bücher über 3-D-Programmierung sowie die Sprache Dart
- Buecher/06 Bücher über Map-Reduce und über die Sprache Erlang
- Buecher/05 Bücher über Scala und über Suchmaschinen-Optimierung
- Buecher/04 Bücher über Metasploit sowie über Erlang/OTP
- Buecher/03 Bücher über die LPI-Level-2-Zertifizierung
- Buecher/02 Bücher über Node.js und über nebenläufige Programmierung
- Buecher/01 Bücher über Linux-HA sowie über PHP-Webprogrammierung
- Buecher/12 Bücher über HTML-5-Apps sowie Computer Vision mit Python
- Buecher/11 Bücher über Statistik sowie über C++-Metaprogrammierung
- Buecher/10 Bücher zu PHP-Webbots sowie zur Emacs-Programmierung
Insecurity Bulletin
Im Insecurity Bulletin widmet sich Mark Vogelsberger aktuellen Sicherheitslücken sowie Hintergründen und Security-Grundlagen. mehr...





