Neues Dateisystem für iOS, macOS, tvOS und watchOS

Das bringt das Apple File System (APFS)

18.07.2016
Von   
Mark Zimmermann leitet hauptberuflich das Center of Excellence (CoE mobile) zur mobilen Lösungsentwicklung bei der EnBW Energie Baden-Württemberg AG in Karlsruhe. Er weist mehrere Jahre Erfahrung in den Bereichen Mobile Sicherheit, Mobile Lösungserstellung, Digitalisierung und Wearables auf. Der Autor versteht es, seine Themen aus unterschiedlichsten Blickwinkeln für unternehmensspezifische Herausforderungen darzustellen. Neben seiner hauptberuflichen Tätigkeiten ist er Autor zahlreicher Artikel in Fachmagazinen.

Verwaltung

Apple File System bringt ein neues Feature, die Möglichkeit den Speicher zu teilen. Ein einziger APFS-"Container", der ein Gerät umfasst, kann mehrere "Volumes" (Dateisysteme) beinhalten. APFS-Laufwerke können dynamisch in der Größe verändert werden, ohne dass das Laufwerk neu partitioniert werden muss.

APFS bringt ein neues Feature, das als "space sharing" bekannt ist. Ein einziger APFS-"Container", der eine Festplatte umfasst, kann mehrere "Volumes" (Partitionen, Dateisysteme) beinhalten. Volumes können dabei dynamisch wachsen und schrumpfen.

Viele Anwender haben nur eine Partition. Dies liegt daran, dass es aufwändig ist, vorher zu wissen, wie viel Platz eine Partition braucht. Space Sharing erlaubt ein Austausch von freiem Speicherplatz zwischen Partitionen.

Performance, Performance, Performance

APFS behauptet für Flash optimiert zu sein und lässt vermuten, dass Apple zukünftig immer weniger drehende Speichermedien (mir gefällt der Begriff des drehendenden Rostes immer besser) einbauen wird.

Apple hat die Computerindustrie verändert, als es Flash in den iPod und das iPhone gepackt hat. Hier wurden Größenordnungen verbaut, die die Wirtschaftlichkeit von Flash-Speichern fundamental verändert haben.

Diese Verbraucheränderung beeinflusste den Markt dermaßen, indem es eine Zunahme an hybriden und "all-flash arrays" zu verzeichnen gab. Vor zehn Jahren war Flash sehr kostspielig; jetzt fordert es die Wirtschaftlichkeit von Festplatten heraus.

SSDs ähneln dem "block interface" der konventionellen Festplatten, aber die zugrundeliegende Technologie ist komplett unterschiedlich. Als Hauptunterschied ist der Umgang mit den Sektoren, die bei Festplatten willkürlich adressiert werden. Flash entfernt große Segmente (Blöcke) und liest/schreibt kleinere Segmente (Seiten).

Das Management wird vom sogenannten "flash translation layer" (FTL) durchgeführt, eine Software die Blöcke und Seiten mehr als Festplatte erscheinen lässt. Ein FTL ist einem Dateisystem sehr ähnlich. Es schafft virtuelle Abbildungen zwischen der Blockadresse und Speicherstellen innerhalb des Mediums. Apple kontrolliert den gesamten Stack einschließlich der SSD, FTL und dem Dateisystem.

APFS schreibt in einer Art die Daten auf den Datenträger, wie es für Flash Speicher einfacher zu handhaben sind. Es ist eher ein Dateisystem mit flash-aware-Charakteristiken als eines, das explizit für native Flash Schnittstellen geschrieben wurde.

APFS beinhaltet TRIM Unterstützung für SSDs. TRIM ist ein Befehl, der es einem Dateisystem erlaubt, einer SSD anzuzeigen, dass Speicher frei geworden ist.

Für Lösch- und Wiederbeschreib-Vorgänge benötigt eine einfache SSD immer länger für die Datenspeicherung als eine HDD. Dies liegt daran, dass magnetische Festplatten dies in einem Durchgang abarbeiten, eine SSD in zwei Schritten. Wenn eine Datei auf einer SSD über das Betriebssystem gelöscht wird, dann wird auf dem SSD-Laufwerk nur der Eintrag dieser Datei im Inhaltsverzeichnis des Speichers gelöscht, die eigentlichen Daten befinden sich nach wie vor auf der SSD. Mit der Zeit sind so immer weitere Bereiche auf der SSD mit eigentlich gelöschten Daten gefüllt. Beim erneuten Schreiben muss eine SSD diese Zellen erst leeren, bevor sie jene neu beschreiben kann, was die Schreibgeschwindigkeit verlangsamt. Durch den TRIM-Befehl wird dies unterbunden. Mit mehr freiem Speicherplatz, können SSDs "Platzeffizienz" ausgleichen für Leistung und Langlebigkeit. Ob TRIM einen Vorteil für den durchschnittlichen Anwender mit vollen Speichermedien ist, darf zu Recht bezweifelt werden.

APFS fokussiert sich auch auf Latenz bei den eigentlichen Zugriffen. Dies geht APFS mit I/O QoS (Quality of Service) an, indem Zugriffe, die für den Anwender direkt sichtbar sind, gegenüber Hintergrundaktivitäten, die nicht die gleichen Zeitbeschränkungen haben, priorisiert werden.

Das als "Fast Directory Sizing" bezeichnete Feature gibt dem Anwender (und dem System selbst) einen direkten Einblick in die Anzahl und Größe der in einem Verzeichnis enthaltenen Daten. Lange Vorbereitungen von Kopiervorgängen dürften damit der Vergangenheit angehören, da das System die "Zielgrösse" schneller ermittelt hat.

Aufgrund der breiten Bandbreite an Zielgeräten ist ein weiteres Ziel die Schonung der Ressourcen (CPU, RAM).

Integrität und Zuverlässigkeit

Die wohl wichtigste Aufgabe eines Dateisystems ist es, die Datenintegrität sicherzustellen und zu erhalten. APFS erhebt in Hinblick auf Datenredundanz keinen Anspruch, da die Geräte aus dem Hause Apple in 99,9 Prozent der Fälle keine doppelten Speicher aufweisen was z.B. die Erstellung eines RAIDs unmöglich macht. Stattdessen kommt die Redundanz durch niedrigere Ebenen wie z.B. Apple RAID, Hardware RAID Controller, SANs, oder sogar aus dem "einen" Gerätespeicher selbst.

Computersysteme können zu jeder Zeit versagen - Bugs, Stromausfälle, schlechte Software usw. Dies hat zur Folge, dass Dateisysteme für diese Begebenheiten gewappnet sein müssen, ohne die eigene Integrität zu gefährden. Modernere Dateisysteme mühen sich damit ab, immer einen konsistenten Zustand zu erreichen oder nur kleine Fenster mit Dateninkonsistenz zu haben.

Prüfsummen - nicht für alles

Eine Prüfsumme ist ein Auszug oder Zusammenfassung von Daten, die genutzt werden um Datenfehler zu finden und zu korrigieren. APFS erstellt Prüfsummen der eigenen Metadaten, aber nicht der Anwenderdaten. Die Rechtfertigung der Erstellung von Prüfsummen für die Metadaten ist stark: es gibt relativ wenige davon (so verbrauchen die Prüfsummen nicht viel Speicher) und ein Verlust der Metadaten kann einen potentiell riesigen Schaden verursachen. Sind etwa die Metadaten für ein "top level" Verzeichnis beschädigt, können möglicherweise alle Daten auf der Platte unzugänglich geworden sein (Atomic Safe Save).

Interessanter ist, dass ausdrücklich keine Prüfsummen von Anwenderdaten gemacht werden. Apple scheint hier auf die ECC-Fehlerkorrektur der Speichermedien zu vertrauen. Dieser Schutz nutzt eigenständig redundant Daten, um Fehler zu finden und zu korrigieren. Die Geräte haben anscheinend eine so geringe Fehlerrate, um keine Fehler während der Lebenszeit des Gerätes zu erwarten.

Gehören Sie auch zu denen, die sich um die Daten auf Ihren Geräten "sorgen" und schon gesehen haben, wie Daten durch HFS verschwinden? Ich würde schon hoffen, dass Themen wie "bit rot" (alternde Daten, die langsam ihre Integrität verlieren) von Apple mit APFS adressiert werden. Es kann jedoch sein, das Apple eine Prüfsumme für Anwenderdaten im Rahmen der Verschlüsselung nutzt. Es bleibt zu hoffen, dass Apple hier noch nachbessert.

Migration 2017 für HFS+ Anwender

Wenn APFS 2017 zur Verfügung steht, verspricht Apple eine sehr anwenderfreundliche Migration. Die Daten auf den Geräten bleiben dabei bestehen, ein Aktivieren der Option soll ausreichen, um eine Migration zur Laufzeit zu ermöglichen. Der Anwender soll im Idealfall nichts von der Migration selbst merken. Exchange Data, SearchFS, Directory Hardlinks für Time Machine werden von APFS zukünftig nicht mehr unterstützt.

Neue Aufzeichnungstechniken im Festplattenumfeld scheint Apple nicht zu adressieren. So wird Shingled Magnetic Recording (SMR), eine Technik zur Datenspeicherung auf magnetischen Datenträgern, um die Speicherdichte und die Gesamt-Speicherkapazität eines Laufwerks zu erhöhen, nicht unterstützt. Dies ist mit der Ansage "SSD First" mehr als verständlich.

Fazit: Potenzial zum Game-Changer

In kürzester Zeit hat Apple das APFS zum Beta-Status bis heute getrieben. In nicht einmal zwölf Monaten wird damit ein neues Dateisystem flächendeckend verfügbar sein. Für etwas derartig Mächtiges eine sehr geringe Zeitspanne. Die Möglichkeiten für den produktiven Einsatz sind heute noch kaum abzuschätzen. Im Vergleich zu Windows und anderen Plattformen am Markt dürfte APFS ein Game-Changer sein. Es bleibt zu hoffen, dass Migrationen und Features so zuverlässig sind, wie es sich für ein Dateisystem gehört. Dann dürfte Apple etwas auf den Markt bringen, das viele Konkurrenten schwitzen lässt.

Vielleicht stellt Apple die Lösung auch als Open Source zu Verfügung (analog Swift). Dieser Schritt wurde von Apple jedoch weder bestätigt noch abgelehnt. Es darf erwartet werden, dass es jedoch erst eine produktive Version gibt, bevor Apple dies unter Open Source anbietet. (mb)