ReFS ist ein Dateisystem wie NTFS oder FAT32 und arbeitet auf einer logischen Ebene oberhalb von Storage Spaces. Ein Storage Space ist eine virtuelle Festplatte, die dem Betriebssystem wie eine echte Festplatte präsentiert wird. Eine solche Platte, egal ob virtuell oder real, kann mit ReFS alternativ zu NTFS formatiert werden.
Bei ReFS geht es nicht um Geschwindigkeit, sondern um Robustheit und Belastbarkeit (Resiliance). Laut Steven Sinofskys Blogbeitrag soll die Lesegeschwindigkeit nicht langsamer sein als bei NTFS. Über die Schreibgeschwindigkeit sagt der Windows-Chef nichts. Daher ist davon auszugehen, dass sie geringer sein wird als bei NTFS.
ReFS verfügt über dasselbe API wie NTFS, um auf spezielle Features wie Access Control Lists, Reparse Points (etwa Mountpunkte, symbolische Links und Junctions), Bitlocker-Verschlüsselung und Snapshots (Systemwiederherstellung) zuzugreifen.
Die Speicherengine ist jedoch eine andere. Das heißt, das Layout auf der Platte ist anders als bei NTFS. Für Unix- und Linux-User ist das nichts Besonderes. Unter Linux gibt es eine Reihe von Dateisystemen, die alle mindestens das Unix-ACL-System beherrschen. Hinzu kommen weitere Features: ext3, ext4 und reiserfs beherrschen im Gegensatz zu ext2 beispielsweise Journaling, um ein schnelles Recover nach einem Stromausfall zu ermöglichen.
yaffs ist hingegen für die Benutzung von Flashspeicher ausgelegt, wenn der Flash selbst kein Wear Levelling beherrscht. OCFS2 und GFS sind für die Verwendung in Clustern ausgelegt, wenn ein Dateisystem auf mehrere Rechner verteilt werden soll. Das noch experimentelle btrfs kann mit Snapshots umgehen.
Während es für unixoide Betriebssysteme traditionell zahlreiche Dateisysteme für unterschiedliche Einsatzbereiche gibt, ist man bisher bei Windows auf NTFS beschränkt – jedenfalls unter der Annahme, dass FAT (inklusive Derivate wie FAT32 sowie exFAT) und UDF auf Servern generell ungeeignet sind. Microsoft hat immer versucht, aus NTFS eine "eierlegende Wollmilchsau" zu machen.
Mit ReFS komm jetzt erstmalig ein zweites Dateisystem. Wie btfrs basiert es vollständig auf B+-Trees. Zudem setzt es stark auf Copy-on-Write und Allocate-on-Write.
Nicht alle NTFS-Features sind in ReFS verfügbar. Microsoft hat sich entschieden, auf selten genutzte Funktionen zu verzichten, um so mehr Performance zu erreichen. Dazu zählen:
- Multiple File Streams: Dieses selten genutzte Feature wurde ursprünglich wegen der Kompatibilität zu Mac OS bis System 9 implementiert. So konnte man einen Rechner mit NTFS als Mac-Fileserver einsetzen. Früher bestanden Mac-Dateien mindestens aus einer Data Fork und einer Resource Fork, wobei "Fork" in der Mac-Terminologie einem Stream entspricht. Heute wird das Feature vor allem dazu eingesetzt, um Daten gut zu verstecken. Das machen sich etwa Virenautoren zu nutze.
- Encrypted File System (EFS): Die Möglichkeit, einzelne Dateien zu verschlüsseln, gibt es nicht mehr. Microsoft setzt jetzt ganz auf Bitlocker. Zudem ist EFS nicht wirklich sicher. Wer Zugang zur Festplatte hat, kann den Schlüssel auslesen.
- Kurznamen (8.3-Dateinamen): Das Anlegen von Kurznamen dient zur Kompatibilität mit MS-DOS und Windows bis Version 3.11. Das haben viele Nutzer bereits mit dem Befehl fsutil behavior set Disable8dot3 1 auf NTFS abgeschaltet, um die Performance zu steigern.
- Extended Attributes: Dient vor allem zur Kompatibilität mit OS/2.
- User Data Transactions und Sparse Files: Diese erst mit Vista eingeführten NTFS-Features wurden kaum genutzt. In ReFS hat Microsoft deshalb darauf verzichtet.
- Object-ID: Die 16 Byte lange Zahl dient zur Verfolgung von verschobenen Files. Da das Feature meist ohnehin nicht korrekt funktionierte, gibt es das in ReFS nicht mehr.
- Kompression: Auf die Möglichkeit zur Datenkompression hat Microsoft ebenfalls verzichtet.
- Hardlinks: Sie dienen in erster Linie zur Kompatibilität mit Unix und Posix. Nutzer, die die Services for Unix oder Cygwin einsetzen, werden möglicherweise in Probleme laufen. Obwohl auch unter Unix empfohlen wird, Softlinks zu benutzen, verlangt die Posix-Spezifikation explizit Hardlinks. Unklar ist, ob Microsoft dafür einen User-Mode-Ersatz außerhalb des Filesystems bereitstellen wird, der Hardlinks emuliert.
- Quota: Es ist mit ReFS nicht möglich, den Speicherplatz pro User zu begrenzen. Betreiber von Fileservern werden das eventuell schmerzlich vermissen.
Dafür hat Microsoft viele neue Features eingebaut, die die Robustheit und Integrität erhöhen. Einige verlangsamen den Schreibvorgang, allerdings vor allem auf mechanischen Festplatten. Auf SSDs wird man kaum eine Veränderung bemerken.
Da viel mit Copy-on-Write und Allocate-on-Write gearbeitet wird, ist ReFS auch anfälliger für Fragmentierung als NTFS, obwohl böse Zungen behaupten, dass das kaum noch möglich sei. Aber auch für diesen Fall gilt: Auf SSDs ist Fragmentierung kein Problem. Möglicherweise setzt Microsoft auch darauf, dass SSDs in einem Zeitraum von etwa fünf Jahren die mechanischen Festplatten ganz ersetzen.
Um das Dateisystem robuster als NTFS zu machen, hat Microsoft die folgenden Features implementiert:
- Neue Journal-Strategie: Metadaten werden niemals ersetzt, sondern es werden neue Metadaten durch Allocate-on-Write geschrieben. Dadurch muss kein separates Journal mehr geführt werden, das mit in-place aktualisierten Metadaten inkonsistent werden kann, wenn der Strom ausfällt.
- Prüfsummen für Metadaten: Alle Metadaten werden auf der B+Tree-Ebene mit Prüfsummen versehen. So lässt sich die Integrität der aktuellen Daten jederzeit feststellen.
- Integrity-Stream: Wenn gewünscht, werden alle nicht nur Meta-, sondern auch Nutzdatenänderungen nicht in-place vorgenommen und durch Allocate-on-Write auf einen anderen Cluster (ein oder mehrere Sektoren) geschrieben. Über Prüfsummen lässt sich feststellen, ob der Schreibvorgang vollständig und richtig erfolgt ist. Dieses Feature kann man für einzelne Verzeichnisse oder Dateien aktivieren. Es verlangsamt Schreiben und späteres Lesen auf einer mechanischen Festplatte erheblich, da jeder Schreibvorgang zwangsläufig zu einer Fragmentierung führt.
- Integration mit Storage Spaces: ReFS kann direkt mit Storage Spaces kommunizieren. Wenn auf einem gespiegelten Laufwerk nur eine korrekte Kopie vorhanden ist, kann das Dateisystem anhand der Prüfsummen feststellen, welche Kopie fehlerfrei ist und welche nicht. Die fehlerhafte Kopie wird automatisch korrigiert. Man darf dafür aber keine Hardware-Spiegelung einsetzen, da das Filesystem dann nicht auf beide Kopien zugreifen kann. In der ersten Implementierung wird ReFS nur mit gespiegelten Platten zurechtkommen. Wenn Parity als Fehlertoleranzoption gewählt ist, kann ReFS fehlerhafte Daten nicht reparieren.
- Schutz gegen "Bit Rot": Auf mechanischen Festplatten "verrotten" Daten allmählich, obwohl die Festplatte eigentlich noch in Ordnung ist. Die Magnetisierung der Partikel lässt im Laufe der Zeit nach. ReFS startet dazu regelmäßig einen "Scrub", der im Hintergrund alle Daten liest und erneut schreibt. Das führt das System für alle Metadaten und alle Files durch, die als Integrity Stream gekennzeichnet sind.
- Continued Volume Availability: Sollte trotz Spiegelung, Prüfsummen und Bit-Rot-Schutz eine Datei nicht mehr lesbar sein, weil etwa beide Spiegel einen Hardwarefehler an derselben Stelle haben, dann entfernt ReFS die Datei im laufenden Betrieb und repariert das Dateisystem, ohne dass dazu ein CHKDSK erforderlich ist. Mit neuen Tools lässt sich eine frühere Version der fehlerhaften Datei wiederherstellen.
Die Einführung von ReFS soll in drei Schritten erfolgen. Zunächst wird es nur auf Windows 8 Server angeboten. Später soll es auch für Desktop- und Laptop-Computer verfügbar sein. Erst in einem dritten Schritt wird Microsoft den Boot-Loader anpassen, so dass man auch von ReFS booten kann. Zunächst muss das Betriebssystem auf einem NTFS-Laufwerk installiert werden.
Sofern sich der Programmcode von ReFS bis zum Launch von Windows 8 Server als stabil erweist, hat man zusammen mit gespiegelten Storage Spaces eine bisher unbekannte Sicherheit des Filesystems unter Windows. Betreiber von missionskritischen Serveranwendungen werden das zu schätzen wissen.
Trotzdem sollte man einen Einsatz gut überdenken. Es wäre nicht das erste Mal, dass eine neue Technologie von Microsoft noch zahlreiche Bugs im Code enthält, etwa beim Drive Extender des Windows Home Server, auf dessen Konzepten die Storage Spaces beruhen. Das Warten auf Service Pack 1 kann sich lohnen.
Neueste Kommentare
Noch keine Kommentare zu Windows 8 Storage Spaces: Plattenplatz einfach nutzen
Kommentar hinzufügenVielen Dank für Ihren Kommentar.
Ihr Kommentar wurde gespeichert und wartet auf Moderation.