Einführung in ZFS, Teil 1

Author: | Posted in Solaris 2 Comments

Seit Solaris 11 6/06 (Update 2) liefert Sun das Zettabyte Filesystem, kurz ZFS, aus. ZFS ist im Moment das modernste auf dem Markt und stellt vieles, was bisher auf dem Markt war in den Schatten. Insbesondere Symantec (Veritas) dürfte langsam Mühe haben, ihr VxFS und VxVM zu verkaufen, da es bald keinen Grund mehr geben wird, das überteuerte Veritas Produkt zu kaufen.

Der Hintergrund warum Sun ZFS entwickelt hat, ist relativ einfach: UFS wurde in den vergangenen 20 Jahren immer wieder erweitert, zuletzt mit Multiterabyte, und stosst langsam an seine Grenzen. In Verbindung mit den bestehenden Volume Managern, SDS oder VxVM, bekommt mein ein komplexes und langsames Konstrukt, welches zwar redundant ist, aber immer noch nicht richtig flexibel ist. Sun hat sich die frage gestellt, warum bis vor ZFS immer Volume Manager und Filesystem getrennt wurden. ZFS ist ein Volume Manager und ein Filesystem in einem. Mit ZFS wurde so ziemlich alles über Bord geworfen, an das man sich in den vergangenen 20 Jahren gewöhnt hat. Sun geht einen völlig neuen Weg, der auf eine Art revolutionär ist.

Datenintegrität: Bis jetzt wusste man nie, ob die Daten die man von der Disk gelesen hat, auch wirklich die Daten sind die man haben möchte. Wenn Beispielsweise auf einem Submirror die Daten beschädigt sind (verursacht z.B. durch ein defektes Kabel, Controller), wird man das mit einem konventionellen Volume Manager nie herausfinden können, da Volume Manager wie VxVM oder SDS ziemlich doof sind und die Datenintegrität nicht überprüfen. ZFS überprüft die Daten mit einer 256-Bit Prüfsumme. Somit ist sichergestellt, dass defekte Devices früher erkannt werden können.

Gross: ZFS ist das erste 128-Bit Filesystem der Welt und ist so mit das richtige Filesystem für den Speicherplatzhunger der Welt.

Geschwindigkeit: Neben der hervorragenden Performance, intelligentem Prefetching, gehören die Wartezeiten beim kreieren von Filesystemen oder Spiegeln nun zur Vergangenheit an. Volume Manager wissen nicht, was das darüber liegende Filesystem alles geschrieben hat und kopieren deshalb nach beim erstellen von Volumes sinnlos Nullen von einer Disk auf die anderen. Da bei ZFS der Volume Manager integriert ist, werden nur die notwendigen Bereiche kopiert und spart, inbesondere bei grösseren Filesystemen, sehr viel Zeit.

Einfach: Mit zpool(1m) zum Managen der Storage Pools und zfs(1M) Managen von Filesystemen gibt es nur zwei einfach zu bediende Kommandos.

Transaktionen: Neben dem performance Gewinn den transactional I/O bietet, wird auch ein immer konsistentes Filesystem garantiert. Ein Performance fressenden Journaling wird nicht benötigt.

Kein fsck: Log replay oder fsck sind jetzt endültig vorbei. Dank copy-on-write werden nie Daten überschrieben.

Endianness: Während VxVM auf einer anderen endian Architektur die Byte Reihenfolge on-the-fly konvertiert, bietet ZFS ein richtiges endianness.

Das sind im groben die Features von ZFS. Im nächsten Blog Eintrag werde ich das Konzept hinter ZFS vorstellen.

Comments
  1. Posted by Lukas Beeler
  2. Posted by Kurt Wagner

Add Your Comment