Also ZFS ist hat halt viele Vorteile gegenüber einem normalen Filesystem. Dazu gehört dedup genauso wie snapshooting und auch die Selsbstheilung.
Hier ein auszug aus Wikipedia:
Ein weiterer vorteil liegt wohl darin dass du die Volumes einfach importieren kannst sollte einmal was mit deiner Hardware passieren. Ein RAID von einem Raid Controller der gestorben ist kannst du nicht so einfach rekonstruieren, vor allem wenn es ein komplexeres Raid als Raid1 ist.
@Atomic:
Sehe ich ähnlich allerdings Achtung mit Raid6 meines wissen nach ist es so dass RAID 6 die Änderungen auf der Parität im Hintergrund wegschreibt. Dies beschleunigt das schreiben. Im Falle eines Stromausfalles wäre das eine Katastrophe. Deshalb wird auch empfohlen beim Einsatz von Raid6 immer eine USV zu nutzen.
Dies sehe ich nicht ganz so denn auf einem Atom System mit 8 Platten können hohe read/write Leistungen erzeugt werden ohne dass die CPU dabei zu sehr ins schwitzen kommt.
Auch nochmal hervorgehoben sei der Vorteil von ZFS das jedeer Block eine Prüfsumme hat. Dies bedeutet dass das System merkt wenn wo was nicht stimmt und dies selbsttätig wieder beheben kann.
Die Frage ist doch warum mann sich das ein ZFS System aussucht um dann mit Hardware Raid zu arbeiten?!
Eine günstige alternative für deinen RAID Controller wäre ein SAS Expander (HP).
Hier ein auszug aus Wikipedia:
ZFS ist ein 128-Bit Copy-on-Write-Dateisystem mit einer im Vergleich zu herkömmlichen Dateisystemen deutlich erweiterten Funktionalität. Bei herkömmlichen Dateisystemen verwaltet genau ein Dateisystem genau eine Partition. Sollen mehrere physische Partitionen zu logischen Partitionen zusammengefasst werden, muss hierzu eine zusätzliche Logical Volume Manager Software installiert werden. Zur Ausfallsicherung können viele Dateisysteme zusätzlich durch ein optionales softwarebasiertes RAID-Subsystem (Software-RAID) abgesichert werden. ZFS fasst diese drei Funktionen zusammen und ergänzt diese um einen prüfsummenbasierten Schutz vor Datenübertragungsfehlern.
In der Praxis werden zunächst aus physischen Datenträgern (eigentlich Datenspeicher-Geräten) logische Einheiten - so genannte Pools (bzw. zPools) - gebildet, welche optional auch ausfallsicher ausgelegt sein können (RAID). Innerhalb eines Pools können dann beliebig viele logische Partitionen (mit je einem Dateisystem) angelegt werden, wobei diese, soweit es die Größe des Pools zulässt, dynamisch wachsen, aber auch verkleinert werden können. Um administrative Einschränkungen durchzusetzen, kann für jede logische Partition eine minimale und maximale Größe vorgegeben werden. Die logischen Partitionen können dabei in eine hierarchische Struktur eingebettet werden, innerhalb derer diese und andere Parameter auch vererbt werden können. Weiterhin ist es möglich, Datenbereiche aus Pools als dezidierte „Block-Devices“ (siehe auch Datenblock-orientierte Geräte) zur Verfügung zu stellen.
Die zweite Besonderheit von ZFS ist die besonders einfache Administration. Um einen Pool über mehrere Festplatten zu erzeugen und auf diesem eine Partition anzulegen, werden lediglich zwei einfach strukturierte Befehle benötigt. Das Partitionieren, Aufbauen des logischen Volumens und schließlich das Einhängen ins bestehende Dateisystem werden automatisch erledigt, können aber bei Bedarf auch manuell vorgenommen werden.
Wie bei einem klassischen Volume-Manager können die zugrunde liegenden Pools ausfallsicher angelegt sein. Hierzu werden aus mehreren physischen Datenträgern per Software-RAIDsogenannte Redundanz-Gruppen gebildet, eine oder mehrere dieser redundanten Gruppen bilden dann einen ausfallsicheren Pool. Das in das Dateisystem integrierte RAID-Subsystem bietet gegenüber klassischen Hardware- oder Software-Raid-Implementierungen den Vorteil, dass durch das integrierte RAID-System zwischen belegten und freien Datenblöcken unterschieden werden kann und somit bei der Rekonstruktion eines Raid-Volumens nur belegter Plattenplatz gespiegelt werden muss, hieraus resultiert im Schadensfall, besonders bei wenig gefüllten Dateisystemen, eine enorme Zeitersparnis. ZFS stellt mehrere RAID-Level zur Auswahl. Bei der Spiegelung (RAID-1) bilden zwei (oder mehr) Festplatten eine gespiegelte Redundanz-Gruppe, wobei die Daten zweimal oder öfter gespeichert werden können. Weiter gibt es zwei RAID-Z genannte Implementierungen. RAID-Z1 arbeitet ähnlich wie RAID-5, RAID-Z2 entspricht weitestgehend RAID 6. Bei RAID-Z1 bilden drei (oder mehr) Festplatten die Redundanz-Gruppe, dabei sind die Daten wie bei einem RAID 5 System paritätsgesichert, so dass eine der Festplatten ausfallen kann, ohne dass dabei Datenverluste entstehen. Durch das integrierte Design des ZFS wird jedoch im Gegensatz zu RAID-5 kein batteriegepufferter Speicher (NVRAM) benötigt, da keine Schreiblücke (write hole) zwischen Daten-Schreiben und Parity-Schreiben auftritt. Die RAID-Z2 genannte, ebenfalls schreiblückenfreie Implementierung von RAID-6 ist seit Solaris Express 47 verfügbar. Seit Juli 2009 ist auch RAID-Z3, also eine RAID-Z-Implementierung mit 3 Paritätsbits, verfügbar.[3] Die Geschwindigkeitsoptimierung durch parallelen Zugriff (RAID-0 – Striping) wird von ZFS automatisch vorgenommen.
Die Copy-on-Write-Mimik von ZFS erlaubt es, sehr effizient Snapshots zu erstellen, dies geschieht praktisch sofort und das Dateisystem bleibt online. Ein Snapshot friert den aktuellen Dateisystemzustand ein, darauf folgende Schreiboperationen repräsentieren jeweils die Differenzen zum letzten Snapshot. ZFS-Snapshots können zum Lesen gemountet oder auch archiviert (zfs send) werden, des Weiteren gibt es ZFS-Clones, diese entsprechen einem beschreibbaren Snapshot.[4]
Neben den Möglichkeiten, Daten gegen Festplattenausfälle zu sichern, wird außerdem jeder einzelne Block im Dateisystem mit einer Prüfsumme versehen, so dass Datenfehler im Dateisystem (z. B. verursacht durch Datenübertragungsfehler) automatisch erkannt und ggf. ohne manuellen Eingriff behoben werden können. Der Performance-Verlust ist dabei minimal. Auch stellt ZFS sicher, dass der Zustand des Dateisystems zu jeder Zeit konsistent ist und deshalb auch beispielsweise nach einem Stromausfall kein Überprüfen des Dateisystems (per fsck) notwendig ist.
Im Oktober 2009 wurde Deduplizierung für ZFS freigegeben.[5] Dadurch werden Blöcke mit identischem Inhalt nur noch einmal physisch abgelegt, was in vielen praktisch relevanten Anwendungsfällen hilft, Plattenplatz zu sparen. Ein typischer Anwendungsfall ist das Anlegen von virtuellen Festplatten für virtuelle Maschinen, die jeweils alle eine Installation eines virtualisierten Betriebssystems enthalten.
Weiterhin ist ZFS ein relativ schnelles Dateisystem; aufgrund der integrierten RAID-Funktionen und End-To-End-Checksummen kommt es jedoch in der Geschwindigkeit auf älteren bzw. langsameren Systemen nicht an einfachere Dateisysteme heran, wobei die Performance von ZFS auch davon abhängig ist, welche RAID-Funktionalität genutzt wird und ob die einzelnen Platten unabhängig voneinander und gleichzeitig Daten transferieren können.
ZFS ist für sehr große Datenmengen ausgelegt, was durch die durchgängige Verwendung von 128-Bit-Zeigern erreicht wird. In der Praxis sind die Grenzen jedoch mit denen eines 64-Bit-Dateisystems vergleichbar. Bei der Implementation unter Solaris und beispielsweise auch FreeBSD werden 64-Bit-Datentypen verwendet, da es in C derzeit keine 128-Bit-Datentypen gibt. Im Wesentlichen werden die ersten 64 Bits des Zeigers immer zusammen mit 64 Nullen abgespeichert, die bei der Verarbeitung ignoriert werden. Das ermöglicht es, bestehende Dateisysteme später als echte 128-Bit-Dateisysteme weiterhin verwenden zu können. Die Kapazität von ZFS ist so ausgelegt, dass sie für immer ausreicht.
Bei einer vollen Ausnutzung der 128 Bit entspräche die theoretische maximale Kapazität 281 Billionen YiB.
Ein weiterer vorteil liegt wohl darin dass du die Volumes einfach importieren kannst sollte einmal was mit deiner Hardware passieren. Ein RAID von einem Raid Controller der gestorben ist kannst du nicht so einfach rekonstruieren, vor allem wenn es ein komplexeres Raid als Raid1 ist.
@Atomic:
wenn Du ein NAS mit 8 Festplatten betreiben willst solltest Du statt des RAID-10 lieber auf RAID-6 gehen, um nur zwei HDDs "Verlust" zu haben.
Sehe ich ähnlich allerdings Achtung mit Raid6 meines wissen nach ist es so dass RAID 6 die Änderungen auf der Parität im Hintergrund wegschreibt. Dies beschleunigt das schreiben. Im Falle eines Stromausfalles wäre das eine Katastrophe. Deshalb wird auch empfohlen beim Einsatz von Raid6 immer eine USV zu nutzen.
Ausserdem ist die CPU Belastung bei 8 Festplatten recht hoch, weshalb Du darüber nachdenken solltest doch den RAID Controller das berechnen zu lassen.
Dies sehe ich nicht ganz so denn auf einem Atom System mit 8 Platten können hohe read/write Leistungen erzeugt werden ohne dass die CPU dabei zu sehr ins schwitzen kommt.
Auch nochmal hervorgehoben sei der Vorteil von ZFS das jedeer Block eine Prüfsumme hat. Dies bedeutet dass das System merkt wenn wo was nicht stimmt und dies selbsttätig wieder beheben kann.
Die Frage ist doch warum mann sich das ein ZFS System aussucht um dann mit Hardware Raid zu arbeiten?!
Eine günstige alternative für deinen RAID Controller wäre ein SAS Expander (HP).