# ZFS and the others



## fluca1978 (Oct 24, 2011)

This is not meant to be a flame 
It seems to me that ZFS embeds a lot of features that GEOM and FFS can provide. I see a lot of system and admins migrating quickly to ZFS...so is ZFS undertaken GEOM (and FFS) or both the systems will still be in active development? Just curios...


----------



## SirDice (Oct 24, 2011)

Both will continue to be developed. Keep in mind that ZFS comes from Sun (now Oracle) and GEOM and everything around it comes from the FreeBSD project.


----------



## Sfynx (Oct 24, 2011)

They can happily exist next to each other. In fact, they complement each other nicely in some areas, for example creating a ZFS pool on GEOM ELI providers which allows for hardware-accelerated full disk crypto for ZFS without having to wait for some ZFS version that may or may not implement the same thing.

GEOM NOP is handy for block device stability testing, and GEOM mirror and stripe + FFS are a good option for RAID on lower end machines where ZFS does not show its true potential (I'd say 64-bit arch with a 4 GB RAM minimum for that, and then you cannot cram many drives in without running out of cache space).

ZFS operates in a specialized market (enthusiast/professional/enterprise file storage systems), where GEOM is more an all-round storage stack that can be used as a foundation to build these file systems on.


----------



## phoenix (Oct 24, 2011)

ZFS on FreeBSD uses GEOM.

It's really the combination of the GEOM framework and all the GEOM classes with ZFS that sets FreeBSD apart from the rest.  gmirror, graid[35], gstripe, gconcat, geli, and all the other GEOM classes make for a much simpler, easier-to-use, and flexible storage management system than what other OSes offer, especially compared to md/lvm/fs on Linux.  Plus, they work well on very low-end systems.

When you need more than what those GEOM classes offer you, you add ZFS into the mix.  And being able to combine the GEOM classes with ZFS is where FreeBSD shines. gmirror or graid for the OS install on USB sticks, CompactFlash, or SSD, with ZFS for bulk storage on multiple HDs or SSDs.

GEOM and UFS aren't going anywhere.  Neither is ZFS.

And I wouldn't want it any other way.


----------



## fluca1978 (Oct 25, 2011)

phoenix said:
			
		

> ZFS on FreeBSD uses GEOM.



Uhm...does this mean that ZFS mirror implementation uses GEOM? I don't understand this statement.


----------



## Sfynx (Oct 25, 2011)

ZFS does its own mirroring, but it uses GEOM to access the underlying block devices. And that block device can be a GEOM class representing a single drive (e.g. ada0 or da0), or an intermediate GEOM class such as GELI or GNOP, etc.


----------



## fluca1978 (Oct 25, 2011)

Sfynx said:
			
		

> ZFS does its own mirroring, but it uses GEOM to access the underlying block devices.



Ok, now it is clear!


----------



## SirDice (Oct 25, 2011)

Just a note, FreeBSD doesn't have block devices.

http://www.freebsd.org/doc/en/books/arch-handbook/driverbasics-block.html


----------



## fluca1978 (Oct 26, 2011)

SirDice said:
			
		

> Just a note, FreeBSD doesn't have block devices.
> 
> http://www.freebsd.org/doc/en/books/arch-handbook/driverbasics-block.html



This is interesting. Could you tell me from when FreeBSD has dropped the block device support? By the way, if I get it right, this means that /dev/da0 is a GEOM class with no caching activated, right?


----------

