COW Snapshots
Die Snapshots ermöglichen jederzeit das Erstellen eines Clons des vorliegenden Dateisystems. COW (Copy on Write) ermöglicht diesen Schritt ohne umfangreichen zusĂ€tzlichen Festplattenspeicher zu beanspruchen. Lediglich Ănderungen in den Dateisystemen benötigen beim Ablegen zusĂ€tzlichen Speicherplatz.
Durch COW ist es damit ebenfalls möglich, Versionen seines Dateisystems wie beispielsweise vor einem Software Update oder vor einer vergleichbaren AktivitĂ€t abzuspeichern. Falls bei diesen Abspeicherungen inkorrekt agiert wurde, ist es dennoch problemlos möglich, alle Ănderungen rĂŒckgĂ€ngig zu machen und zu der ursprĂŒnglichen Version zurĂŒckzukehren.
Checksums
Ist der Begriff âsilent data corruptionâ vertraut? Durch AuĂeneinwirkung auf Festplatten-Controller und Speichermedien können, ohne dass der User etwas bemerkt, VerĂ€nderungen ablaufen. Wird in einer komprimierten/verschlĂŒsselten Datei nur ein Bit geflipped, kann dieser Schritt zu einem weitaus gröĂeren Datenverlust fĂŒhren. Um derartige Probleme zu vermeiden, hat die aktuelle Generation der Dateisysteme Checksummen hinterlegt. Diese werden direkt auf Dateisystemebene erstellt und verifiziert. Dadurch werden VerĂ€nderungen erkannt und, sofern Kopien der Daten zur VerfĂŒgung stehen (RAID), wird eine Selbstheilung vorgenommen.
Selbstheilung und Redundanz
Wie gerade eben schon erwĂ€hnt wurde, können durch Checksummen Fehler in den Daten erkannt und dann durch automatische Selbstheilung und Redundanz transparent gemacht sowie im Hintergrund korrigiert werden. Sowohl ZFS als auch Btrfs unterstĂŒtzen eine Vielzahl an RAID-Level und sind damit in der Lage, einen Hardware RAID Controller gĂ€nzlich zu ersetzen. Gerade weil  Hardware Controller in der Regel nicht in der Lage sind, Daten auf Korrektheit zu ĂŒberprĂŒfen, wird sogar von deren Einsatz unterhalb eines Btrfs/ZFS abgeraten.
Volumen Management
Alles, was frĂŒher von LVM ĂŒbernommen wurde, leisten ZFS und Btrfs zusĂ€tzlich. Eine Partitionierung der Daten wird damit ĂŒberflĂŒssig bzw. vom Dateisystem ĂŒbernommen. Damit werden beispielsweise einfaches Online Resizing und Ă€hnliche Aktionen möglich, was bei Dateisystemen der aktuellen Generation oft nicht realisierbar ist.
Scalability
FrĂŒheren Anwendern war gelĂ€ufig, wo fixe Limits von Dateisystemen liegen. Fat32 oder bei der Anlage einer Datei von mehr als 4GiB, die heute jeder DVD Film fordert, waren bekannte Beispiele. Limits bei ZFS und Btrfs wurden daher so groĂzĂŒgig gesetzt, dass sie in absehbarer Zukunft nicht ausgeschöpft werden. ZFS setzt dabei MaĂstĂ€be und erlaubt 256 ZiB, eine KapazitĂ€t von ĂŒber 200 Millionen handelsĂŒblicher Festplatten.
Asynchrone inkrementelle Replikation
Dank der COW Snapshots können Daten auch sehr einfach von Computer zu Computer kopiert werden. Als besonderes Feature bieten die neuen Dateisysteme ein inkrementelles Kopieren an. Wird beispielsweise jede Nacht eine Snapshot vom eigenen System gefertigt und soll dies auf einem anderen Computer gesichert werden, ist die Aktion mit vergleichsweise geringem Aufwand nach dem ersten kompletten Backup zu erledigen. Es werden – wie bereits erwĂ€hnt – lediglich tatsĂ€chlich verĂ€nderte Blöcke des eigenen Dateisystems kopiert und nicht mehr das komplette Dateisystem. Der User erhĂ€lt aber trotzdem jede Nacht eine weitere Kopie seines vollstĂ€ndigen Dateisystems.
ZusÀtzliche Feautures von Btrfs
Btrfs bietet gegenĂŒber ZFS noch weitere Features, die an dieser Stelle aber nur kurz ErwĂ€hnung finden sollen. Bei Btrfs können zum Beispiel selektiv nur einzelne Dateien mit COW geclont werden. Sinnvoll wird dies bei Images von Virtuellen Maschinen oder Vergleichbarem. Des Weiteren kann Btrfs im Gegensatz zu ZFS das RAID-Level im laufenden Betrieb anpassen. Bei ZFS ist es nur möglich, einen Array anzulegen und diesen danach nicht zu verĂ€ndern. Mit Btrfs ist dies hingegen âon the flyâ, also im laufenden Betrieb möglich. Bei der Datenkompression verhĂ€lt es sich Ă€hnlich. Bei ZFS kann der User lediglich einen ganzen MountPoint von der Kompression ausschlieĂen bzw Kompression aktivieren. Btrfs ist hingegen flexibler und kann einzelne Dateien komprimieren bzw. es unterlassen um CPU Zyklen zu sparen. Als Beispiel sei erwĂ€hnt, dass bereits komprimierte Dateien (.gz / .zip / .rar / .jpg / .mp3 / .mp4 / .avi) sinnvoll nicht weiter komprimiert werden können und deshalb bei einer Datenkompression selektiv ausschlieĂbar sind.
Wie ist die Nutzbarkeit?
Die meisten aktuellen Distributionen bieten Btrfs bereits als Testing bzw Preview Dateisystem an, raten aber von der Nutzung ab. Sollte dennoch Btrfs schon getestet werden, ist zu empfehlen, keine Maschinen in Produktion zu verwenden, weil mit Datenverlust zu rechnen ist. ZFS hingegen wird als stabil erachtet, ist allerdings aufgrund von LizenzinkompatiblitÀt nicht im Linux Kernel enthalten und bei vielen Distributionen lediglich als Paket nachinstallierbar. Sollte ein BSD genutzt werden, ist ZFS bei vielen Derivaten bereits vorinstalliert. FreeBSD beispielsweise lÀsst sich problemlos mit ZFS als Root Dateisystem installieren und betreiben.
Informationen:
https://Btrfs.wiki.kernel.org Offizielle Btrfs Webseite
http://open-ZFS.org Zusammenschluss der Linux/BSD/illumos/OpenZFS on OS X Developer
http://ZFSonlinux.org/ Projekt fĂŒr ZFS auf Linux Systemen mit Links zu Paketen der gĂ€ngigsten Distributionen