04-29-2014, 12:22 PM
Kind of off topic but one area where ZFS falls behind is performance (at least on linux). So no it is not uniformly better. Also I'm not sure if ZFS native raid is better than linux software raid (i.e, if you are better running zfs on top of linux software raid or using zfs native raid. The two aspect of ZFS that intrigue me are snapshot (a netapp feature) and block checksum.
-
snapshot is sort of like an automagic copy of a file for a few days - so if you delete a file accidently you can recover it. I'm not faimliiar with zfs implementation but on netapp there is a hidden folder that mirrors your file system. The implementation is quite efficient but it does consume some space. it is sort of like a trashbin but it preserves your directory structure and the retention/deletion is automagic (as well as more efficient).
-
Some terminology. In general raid is D+P (where D is data disk and P is parity disk). You can suffer the loss of up to P disks and still recover all data but the 'work' to recover that data is D. In some scheme the parity disk is striped across all disks; so raid 5 which is 2+1 but a bit of parity data is shared across all disk (this means that the loss of a disk results in more or less equal work to recover and if you loss 2 disks there would still be some original data available. There are some newer scheme in which the P disks are not uniform; they take a bit more space (think of D+P where D is 8 and P is 2 but you need 3 parity disks) but they reduce the work require to recover data. Generally the for values where P == 1 the parity is simple xor and for P > 1 the function is more complex.
-
With regards to Klaus comment; that might be true for hardware raid but for linux software raid (raid is implemented in the software) you can use partition as well as disks for raid volume so replacing disks is fairly easy. There are some newer methods of raid such as LVM and ZFS which carry things to an exterme (they have logical volume management which allows you to grow partitions et all by adding disks at a later time). I've never been a fan of LVM and have not used ZFS. (Ok LVM is not really a file-system it is a volume manager and ZFS has basically merged volume management and filesystem).
-
ZFS is a sun filesystem that was 'open sourced' (before oracle acquisition - now it is close source). There is a port effort to [free,net,...]BSD and linux. The BSD ports are farther along than linux. I'm not sure of the current status of the linux port but there is now a native port with version 0.6.2. For me the two big features of ZFS are block checksum and snapshot (because I'm a bit too eager sometimes with rm -rf .
-
snapshot is sort of like an automagic copy of a file for a few days - so if you delete a file accidently you can recover it. I'm not faimliiar with zfs implementation but on netapp there is a hidden folder that mirrors your file system. The implementation is quite efficient but it does consume some space. it is sort of like a trashbin but it preserves your directory structure and the retention/deletion is automagic (as well as more efficient).
-
Some terminology. In general raid is D+P (where D is data disk and P is parity disk). You can suffer the loss of up to P disks and still recover all data but the 'work' to recover that data is D. In some scheme the parity disk is striped across all disks; so raid 5 which is 2+1 but a bit of parity data is shared across all disk (this means that the loss of a disk results in more or less equal work to recover and if you loss 2 disks there would still be some original data available. There are some newer scheme in which the P disks are not uniform; they take a bit more space (think of D+P where D is 8 and P is 2 but you need 3 parity disks) but they reduce the work require to recover data. Generally the for values where P == 1 the parity is simple xor and for P > 1 the function is more complex.
-
With regards to Klaus comment; that might be true for hardware raid but for linux software raid (raid is implemented in the software) you can use partition as well as disks for raid volume so replacing disks is fairly easy. There are some newer methods of raid such as LVM and ZFS which carry things to an exterme (they have logical volume management which allows you to grow partitions et all by adding disks at a later time). I've never been a fan of LVM and have not used ZFS. (Ok LVM is not really a file-system it is a volume manager and ZFS has basically merged volume management and filesystem).
-
ZFS is a sun filesystem that was 'open sourced' (before oracle acquisition - now it is close source). There is a port effort to [free,net,...]BSD and linux. The BSD ports are farther along than linux. I'm not sure of the current status of the linux port but there is now a native port with version 0.6.2. For me the two big features of ZFS are block checksum and snapshot (because I'm a bit too eager sometimes with rm -rf .
Quote:zfs is indeed a great filesystem (fs), much better than ext4 or ntfs in pretty much every regard. The reason it's not part of the stock Linux kernel is because it is incompatible with Sun's Common Development and Distribution License (CDDL) under which ZFS is distributed.
A very promising fs is btrfs which will definitely replace my ext4 partitions once it's finally ready for production use