[00:00] Songs gespielt gestern: 0
[00:01] Alles Gute an bLoOdY17, born2kill
[15:24] Post by Aragorn @ The West
[20:00] Lottoziehung in 03d 00:00h
[00:00] Songs gespielt gestern: 0
[20:00] Lottoziehung in 02d 00:00h
Trackmania Minecraft Andere Spiele
Antwort
Themen-Optionen
#1
Alt 19.01.12, 10:04:14
Windows 8 bringt neues Dateisystem
digiblogger
Benutzerbild von digiblogger
Registered Users
Registriert seit: 08.10.11
Geschlecht: ♂
Beiträge: 341
IRC Zeilen: 84

Spenden-Award 

digiblogger eine Nachricht über Skype™ schicken
Original-Artikel auf golem.de:

Microsofts neues Dateisystem für Windows 8
Achtung Spoiler! (Klick)

Microsoft hat für Windows 8 ein neues Dateisystem entwickelt: ReFS. Es soll so robust sein wie kein anderes Dateisystem von Microsoft und im Zusammenspiel mit den neuen Storage Spaces defekte Daten automatisch reparieren.

ReFS soll zwar weitgehend kompatibel zu NTFS sein, aber nicht um jeden Preis. So hat Microsoft zwar die am häufigsten genutzten Funktionen von NTFS auch in ReFS umgesetzt, einige weniger genutzte Funktionen fallen aber weg, um die Komplexität und Größe des Codes zu reduzieren. Zudem stand bei der Entwicklung von ReFS die Robustheit im Vordergrund, wie der Name "Resilient File System" (engl. "unverwüstliches Dateisystem") andeutet. So verifiziert ReFS Daten und korrigiert auftretende Fehler automatisch.

Zu den weiteren Designzielen von ReFS zählten eine extreme Skalierbarkeit und geringe Ausfallzeiten. Mit anderen Worten: Es sollte niemals notwendig sein, das gesamte Dateisystem für eine lange dauernde Dateisystemüberprüfung offline zu nehmen. Und natürlich soll ReFS auf die neuen Storage Spaces von Windows 8 abgestimmt sein.

ReFS: Die KernfunktionenReFS sichert die Integrität von Metadaten mit Hilfe von Prüfsummen und stellt mit Integrity-Streams optional auch die Integrität von Nutzerdaten sicher. Der Ansatz "Copy on Write" (Kopieren beim Schreiben) ähnlich dem Vorgehen in transaktionalen Datenbanken soll sicherstellen, dass bei der Veränderung von Daten die Ursprungsdaten nicht verloren gehen, bevor die neuen Daten geschrieben sind.

Zudem unterstützt ReFS große Speicher-Volumes, Dateien und Verzeichnisse. Die Verwaltung wird durch Storage-Virtualisierung vereinfacht. Für hohe Leistung soll Data-Striping sorgen, Fehlersicherheit wird durch Redundanz hergestellt, was über mehrere Maschinen verteilte Storage-Pools einschließt. Zudem soll Disk-Scrubbing vor dem Datenverlust durch "verrottende Daten" schützen.

Aus NTFS übernimmt ReFS unter anderem Bitlocker zur Verschlüsselung, Access-Control-List, um den Zugriff auf Daten zu regeln, das USN journal, Benachrichtigungen über Änderungen, symbolische Links einschließlich Junction Points, Mount Points, Reparse Points, Volumen-Snapshots, Datei-IDs und Oplocks.

Hinsichtlich des Clients unterscheidet sich ReFS im Übrigen nicht von NTFS, denn der Zugriff auf ReFS erfolgt über das gleiche API wie der Zugriff auf NTFS.

Dateien mit 2^64-1 Byte
ReFS ist theoretisch in der Lage, Dateien mit einer maximalen Größe von 2^64-1 Byte zu speichern, das entspricht rund 18 Trillionen Byte oder 16 Exabyte. Microsoft führt aber an, dass die eigentlichen Begrenzungen eher durch die Systemkonfiguration, insbesondere den verfügbaren Arbeitsspeicher, beschränkt wird. So können in einem Verzeichnis zudem theoretisch bis zu 18 Trillionen Dateien und in einem Volume ebenso viele Verzeichnisse gespeichert werden. Die maximale Länge eines Dateinamens in ReFS gibt Microsoft mit 32.000 Unicode-Zeichen an.

Einzelne Storage Pools können maximal 4 Petabyte umfassen. Die maximale Zahl an Storage Pools und Storage Spaces in einem System ist aber unbeschränkt.

Kompatibilität mit NTFS
Um abgesehen von den nicht mehr unterstützten Funktionen eine größtmögliche Kompatibilität zu NTFS zu gewährleisten, so dass bestehende Applikationen auch mit dem neuen Dateisystem reibungslos funktionieren, hat Microsoft den Quelltext für die Dateisystem-Interfaces wiederverwendet. Dieser Code ist auch für die Verwaltung von Datei- und Volumenstatus im Speicher, Einhaltung der Sicherheitsrichtlinien sowie Caching und Synchronisation der Daten verantwortlich.

Die darunterliegende Schicht wurde überarbeitet, das gilt auch für ihren NTFS-Teil (NTFS.sys), der mit einer neuen Architektur versehen wurde und die eigentlichen On-Disk-Strukturen sowie die Master File Table (MFT), in der Dateien und Verzeichnisse organisiert sind, umfasst.

Für ReFS kommt letztendlich der wiederverwendete Code in Kombination mit einer komplett neuen Engine zum Einsatz, in der die Neuerungen von ReFS stecken.

Zu den in ReFs nicht mehr unterstützten NTFS-Funktionen zählen unter anderem Named Streams, Object IDs, Kurznamen, Kompression, eine Verschlüsselung auf Dateiebene, User-Daten-Transaktionen, Sparse, Hard-Links, erweiterte Attribute und Quotas.

Um die On-Disk-Strukturen und ihre Manipulation kümmert sich die On-Disk-Storage-Engine, die eine generische Key-Value-Schnittstelle zur Verfügung stellt. Die darüberliegende Schicht setzt dies in Dateien und Verzeichnisse um. Die Storage-Engine selbst verwendet zur Organisation ausschließlich B+-Bäume, so dass letztendlich alle Informationen auf der Festplatte in B+-Bäumen organisiert werden. Dabei kommen auch verschachtelte Strukturen zum Einsatz, also in B+Bäume eingebettete B+-Bäume.

Zudem unterstützt die neue Engine sogenannte "Tabellen", nummerierbare Sätze von Schlüssel-Wert-Paaren, die meist über eine eindeutige ID verfügen, über die sie aufgerufen werden können und in einer speziellen Objekttabelle organisiert sind.

Diese einheitliche Struktur soll das System erheblich vereinfachen und den notwendigen Code reduzieren. Zugleich soll der Ansatz für eine hohe Skalierbarkeit sorgen.

B+-Bäume für Dateien und Verzeichnisse
Verzeichnisse werden in Form von Tabellen abgebildet, die ihrerseits B+-Bäume verwenden und daher gut skalieren sollen, so dass sie sehr groß werden können.

Dateien werden als Tabellen, eingebettet in eine Zeile des übergeordneten Verzeichnisses, umgesetzt. Die Zeilen dieser Tabelle enthalten dann verschiedene Dateiattribute.

Die eigentlichen Daten werden als Embedded-Stream-Table, bestehend aus Offset-Mappings und optionalen Prüfsummen, abgebildet. Das soll sicherstellen, dass Dateien und Verzeichnisse sehr groß werden können, ohne dass sich dies negativ auf die Leistung auswirkt. So sollen die Begrenzungen von NTFS überwunden werden.

Andere globale Attribute-Strukturen innerhalb des Dateisystems wie beispielsweise ACLs (Access Control Lists) werden wiederum als Tabelle innerhalb der Objekttabelle dargestellt.

Um die Zuteilung des eigentlichen Speicherplatzes kümmert sich ein hierarchischer Verteiler, der freien Speicherplatz in Form von Tabellen mit freien Speicherbereichen darstellt. Um eine hohe Skalierbarkeit zu gewährleisten, gibt es drei solcher Tabellen: große, mittlere und kleine Zuteiler. Sie unterscheiden sich in der Größe der von ihnen verwalteten Speicherbereiche. Der mittlere Zuteiler kümmert sich also um Speicherbereiche mittlerer Größe.

Erhöhte Robustheit
Während NTFS ein Journal über Transaktionen führt, um die Konsistenz des Dateisystems sicherzustellen, setzte ReFS auf einen als "Allocate-on-Write" bezeichneten Ansatz. Dies soll verhindern, dass es bei Änderungen von Daten im Falle eines Stromausfalls während des Vorgangs zur Beschädigung von Metadaten kommt, sogenannten Torn-Writes.

Daher werden bei ReFS Metadaten niemals direkt aktualisiert, sondern die neuen Daten an eine andere Stelle der Platte geschrieben. Darauf aufbauend, werden Transaktionen umgesetzt, und da die obere Schichte von ReFS von NTFS stammt, kann das neue Transaktionsmodell die bereits bestehende Wiederherstellungslogik nutzen.

ReFS alloziert Metadaten dabei so, dass Schreibzugriffe zusammenhängender Teile zusammengefasst werden, beispielsweise Stream-Allokationen, Dateiattribute und Dateinamen. So kommt es zu weniger, aber größeren I/O-Zugriffen, was die Geschwindigkeit erhöhen soll. Das ist auch für das Lesen von Daten hilfreich, da zusammenhängende Daten dicht beieinanderliegen.

Microsoft hat nach eigenen Angaben umfangreiche Tests des neuen Systems unter hoher Last durchgeführt. Das Ergebnis: ReFS ist robuster als jedes andere Dateisystem von Microsoft.

Unverwüstlich
Auch wenn es beim Schreiben von Daten nicht zu Problemen kommt, so können gespeicherte Daten dennoch beschädigt werden. Um dagegen gewappnet zu sein, werden alle ReFS-Metadaten mit Prüfsummen versehen, die unabhängig gespeichert werden. Dadurch soll es möglich sein, jede Form von Datenbeschädigung zu erkennen, von Schreibvorgängen, die an der falschen Stelle landen, bis hin zu verrottenden Daten (Bit rot), gespeicherten Daten, die sich mit der Zeit verändern.

Damit sich dieser Verrottungsprozess nicht unbemerkt ausbreiten kann, setzt Microsoft auf Disk-Scrubbing. Ein Systemprozess sorgt dafür, dass die Integrität von Daten regelmäßig überprüft wird. So soll verhindert werden, dass bereits alle Kopien eines Datenblocks unbrauchbar sind, wenn ein Defekt bemerkt wird.

Optional kann der gesamte Inhalt des Dateisystems mit Prüfsummen versehen werden, was Microsoft als "Integrity Streams" bezeichnet. Ist diese Option aktiviert, schreibt ReFS geänderte Daten immer an eine andere Stelle, so dass die dort zuvor gespeicherten Daten nicht verloren gehen können, bevor die neuen Daten geschrieben sind. Die Prüfsumme wird automatisch aktualisiert, nachdem die Daten geschrieben sind. Kommt es zu einem Stromausfall, kann so immer auf eine konsistent verifizierbare Version der Daten zurückgegriffen werden.

Automatische Datenkorrektur
Microsoft führt mit Windows 8 sogenannte Storage Spaces ein, die Daten auf unterschiedliche Platten verteilen und mit Redundanzen versehen können. Gehen Daten verloren, sorgen die Storage Spaces dafür, dass die Daten von anderer Stelle gelesen werden, schlagen Schreibzugriffe fehl, können diese an andere Stellen umgeleitet werden.

Die Storage Spaces können sowohl mit NTFS als auch mit ReFS genutzt werden. Im Zusammenspiel mit ReFS bieten sich aber neue Möglichkeiten: Entdeckt ReFS beispielsweise einen Fehler, können die Storage Spaces veranlassen, alle vorhandenen Kopien dieser Daten zu lesen und anhand der gespeicherten Prüfsummen die korrekten Daten ermitteln. Anschließen sorgt ReFS dafür, dass die Storage Spaces die defekten Kopien auf Basis der korrekten Kopien reparieren.

Aus der Sicht einer Applikation passiert all das transparent.

Das Ganze funktioniert natürlich nur dann, wenn für einen Storage Space das optionale Spiegeln aktiviert ist. Ist dies nicht der Fall, können auch keine Daten automatisch repariert werden. In diesem Fall wird nur ein Logeintrag vorgenommen, der auf den Vorfall hinweist. Ist das Mirroring für einen Storage Space aber aktiviert, wird auch die automatische Korrektur eingeschaltet.

Integrity Streams
Integrity Streams sollen den Inhalt von Dateien vor Beschädigungen schützen. Da dabei aber Datenblöcke bei jeder Änderung neu angeordnet werden, kann es mit einigen Applikationen zu Problemen kommen. Das gilt vor allem für Applikationen, die das Speichern von Daten selbst organisieren und auf ein bestimmtes Dateilayout angewiesen sind, wie beispielsweise Datenbanken.

Microsoft stellt diesen Applikationen Schnittstellen zur Verfügung, um ein bestimmtes Dateilayout zu erzwingen. Letztendlich regelt ein einfaches Datei- und Verzeichnisattribut, ob sich ReFS um die Integrität der Daten kümmern soll. Wird das Attribut "FILE_ATTRIBUTE_INTEGRITY_STREAM" für ein Verzeichnis gesetzt, gilt es für alle sich darin befindenden Dateien und Verzeichnisse. Beim Formatieren kann dieses Attribut mit dem Schalter "/i" auch für das Root-Verzeichnis gesetzt werden.

Werden beim Formatieren keine konkreten Angaben gemacht, wählt das System die Einstellung abhängig davon, ob ein Volume auf einem gespiegelten Storage Space liegt. Ist dies der Fall, stellt ReFS die Integrität der Nutzerdaten sicher. Applikationen können diese Einstellung aber jederzeit für einzelne Dateien deaktivieren.

Mit dem Attribut "FILE_ATTRIBUTE_NO_SCRUB_DATA" kann zudem das Scrubbing für einzelne Dateien deaktiviert werden. Zur Verwaltung der Integritäts- und Scrubbing-Regeln stellt Microsoft das Programm Integrity.exe zur Verfügung.

Wenn es doch schiefgeht
Microsoft geht davon aus, dass viele Nutzer ReFS auf gespiegelten Storage Spaces einsetzen, so dass beschädigte Daten automatisch repariert werden. Dennoch wird es einige wenige Fälle geben, in denen ein Storage-Volumen beschädigt wird, beispielsweise durch defekten RAM. Zudem werden einige Nutzer auf die neuen Funktionen verzichten.

Für diese Fälle sieht ReFS eine "Salvage" genannte Rettungsfunktion vor. Dabei werden die beschädigten Daten aus dem Namespace eines Live-Volume entfernt. Das soll sicherstellen, dass nicht korrigierbare Daten die Verfügbarkeit der übrigen Daten nicht beeinträchtigen. Geht also eine Datei kaputt und kann nicht repariert werden, entfernt ReFS diese aus dem Dateisystem und rettet damit das restliche Dateisystem. Der Vorgang soll weniger als eine Sekunde dauern.

Der Administrator kann die jeweilige Datei in einem solchen Fall aus einen Backup wiederherstellen oder von einer Applikation neu erzeugen lassen, ohne das Dateisystem herunterzufahren.

ReFS zunächst nur für Windows Server
Microsoft will ReFS schrittweise einführen. Zwar wurde das neue Dateisystem mit tausenden von Microsoft in den letzten 20 Jahren entwickelten Tests ausgiebig getestet, dennoch wählt Microsoft ein sehr konservatives Vorgehen, schließlich sei nichts wichtiger als die Verlässlichkeit von Daten.

Derzeit soll ReFS reif sein, um in einer kontrollierten Umgebung getestet zu werden, und mit dem Erscheinen von Windows 8 soll das neue Dateisystem auch bereit für den Einsatz in Produktivsystemen sein und keinesfalls nur eine Beta.

Konkret bedeutet das: ReFS wird zunächst für den Windows Server eingeführt, dann für Clients und erst im dritten Schritt wird es möglich sein, auch von ReFS zu booten. Diesen Ansatz habe man auch schon früher bei der Einführung neuer Dateisysteme gewählt, erklärte Microsoft-Entwickler Surendra Verma.


Einfachheit ist das Resultat der Reife
Antwort
Lesezeichen
Facebook

Direkt antworten
Nachricht:
Benutzername: 
Email (nicht ausfüllen!): Sicherheitsgrafik
Optionen

« Vorheriges Thema | Nächstes Thema »

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.

Gehe zu
Teamspeak 3

Alle Zeitangaben in WEZ +2. Es ist jetzt 22:14:17 Uhr.


Powered by vBulletin® Version 3.8.2 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Template-Modifikationen durch TMS
Die Betreiber haften nicht für die Inhalte der User. Die Beiträge spiegeln ausschließlich persönliche Meinungen wider, und nicht die der Seitenbetreiber.