# zfs v15 and newer



## chrcol (Mar 23, 2010)

Is there a plan for updating zfs in later minor versions of freebsd, v15 includes quotas which is a very basic and much used function of filesystems, and there is more fixes in newer updates.

Is it expected to get newer zfs in newer 8.x versions of freebsd? or will it be updated in 9 and beyond?


----------



## graudeejs (Mar 23, 2010)

v13 also supports quotas.

```
# zfs set quota=1G s/test
```


----------



## chrcol (Mar 23, 2010)

not user accounting quotas, so quota per user.


----------



## phoenix (Mar 23, 2010)

FreeBSD 8-STABLE includes ZFSv14 which brings it to parity with Solaris 10.

You'd have to ask on the freebsd-fs mailing list if anyone is working on getting newer versions pulled into FreeBSD -CURRENT.


----------



## gilinko (Mar 24, 2010)

chrcol said:
			
		

> not user accounting quotas, so quota per user.



It can still be set, using a layout that work. This is what I have:


```
/tank
  /user
    /username
      /home
      /mail
      /www
```

I set the quota on _/tank/user/username_ path of the tank (as killasmurf86) and the three subfolders gets mounted in their proper location (ie /tank/user/username/home to /usr/home/username) and so on.


----------



## dmdx86 (Mar 24, 2010)

phoenix said:
			
		

> FreeBSD 8-STABLE includes ZFSv14 which brings it to parity with Solaris 10.
> 
> You'd have to ask on the freebsd-fs mailing list if anyone is working on getting newer versions pulled into FreeBSD -CURRENT.



Actually, Solaris 10 update 8 (10/09) has ZFS version 15. I'm not complaining, just pointing it out...


```
$ zpool get version dpool
NAME   PROPERTY  VALUE    SOURCE
dpool  version   15       default

$ cat /etc/release
                       Solaris 10 10/09 s10x_u8wos_08a X86
           Copyright 2009 Sun Microsystems, Inc.  All Rights Reserved.
                        Use is subject to license terms.
                           Assembled 16 September 2009
```


----------



## chrcol (Mar 24, 2010)

hmm, interesting so whats using v23?

http://hub.opensolaris.org/bin/view/Community+Group+zfs/23

and here is the v15 userquota stuff

http://hub.opensolaris.org/bin/view/Community+Group+zfs/15


----------



## phoenix (Mar 25, 2010)

dmdx86 said:
			
		

> Actually, Solaris 10 update 8 (10/09) has ZFS version 15. I'm not complaining, just pointing it out...
> 
> 
> ```
> ...



Sure ... just when we hit parity ... they go and update.


----------



## phoenix (Mar 25, 2010)

chrcol said:
			
		

> hmm, interesting so whats using v23?
> 
> http://hub.opensolaris.org/bin/view/Community+Group+zfs/23



OpenSolaris.  Which gets updated every ... month I think?


----------



## SaveTheRbtz (Mar 27, 2010)

There is very interesting feature in zpool v20
http://hub.opensolaris.org/bin/view/Community+Group+zfs/20
that is described here:
http://arc.opensolaris.org/caselog/PSARC/2009/571/20091019_jeffrey.bonwick



> Deduplication is a feature of modern storage platforms by which
> varying mechanisms are employed to reduce the amount of total data
> stored by eliminating and sharing common components. We are adding
> deduplication to ZFS in order to further enable market penetration
> with ZFS and the Sun Storage 7000 series.



It comes handy in specific environments like backup servers or file storages. Just curious... will it be ported to FreeBSD?


----------



## oliverh (Mar 28, 2010)

>Just curious... will it be ported to FreeBSD? 

I think most of it will be ported, if it is at least stable in Solaris. OpenSolaris to Solaris is like Fedora to Red Hat.


----------



## jalla (Mar 28, 2010)

SaveTheRbtz said:
			
		

> There is very interesting feature in zpool v20
> http://hub.opensolaris.org/bin/view/Community+Group+zfs/20
> that is described here:
> http://arc.opensolaris.org/caselog/PSARC/2009/571/20091019_jeffrey.bonwick
> ...



Backup and storing of virtual servers are the big applications of deduplication.
But dedup is a tricky businiss and it seems that the current implementation in zfs has little effect with backup. I've seen a discussion of this topic somewhere (sorry, don't have the link anymore) where it was shown that data from major backup applications had practically no benefit from zfs dedup (three consecutive full backups with EMC Networker gave a dedup factor of 1.03 !)

Apparently zfs use a simple block-by-block comparison of data which is useless in the context of backup.

There's a lot of things to like about zfs, but when it comes to storing large amounts of backup zfs won't help you anytime soon.


----------



## phoenix (Mar 29, 2010)

Oh, yes, it does.

Our backups server using gzip-9 compression has a 1.61 compression ration.

We have a test box setup using Linux + FUSE + ZFS to see how well dedupe will work with our setup.  So far, with less than 1/3 of the data copied over, we have a combined compression ration over 3.0 (gzip-9 + dedupe).  Dedupe most definitely helps with backups.

The block-level dedupe is better in a lot of ways than file-level dedupe.  We have some data blocks that are referenced 70,000 times (from different files), which means we save a tonne of space.  With large binary files (like what "standard" backup software creates), block-level dedupe is the only one that provides any benefit.

Once ZFS dedupe support is enabled in FreeBSD, we'll be able to cut our storage needs in half, or store more daily backups in the space we have.


----------



## wonslung (Mar 29, 2010)

I follow the lists for ZFS-Discuss and there are a lot of people using dedup who have had amazing results with it.  I think it just depends on your data set.


----------



## jalla (Mar 29, 2010)

phoenix said:
			
		

> Oh, yes, it does.
> 
> Our backups server using gzip-9 compression has a 1.61 compression ration.
> 
> ...



I'm not convinced. Tests with major backup applications like Networker and Netbackup show that zfs dedup has no effect.

My source for this is a conversation taking place on the Networker mailing list a few days ago. One posting from Sun engineer Attilla Mester pretty much sums it up.


> Content-type: text/plain; CHARSET=US-ASCII; format=flowed
> References: <4B9D3FF9.40109@aristo.tau.ac.il>
> <3BEB5F9B6605A140847DEEEDF7439C5D03D2A4E5@CORPUSMX50A.corp.emc.com>
> User-Agent: Thunderbird 2.0.0.24 (Macintosh/20100228)
> ...


----------



## phoenix (Mar 29, 2010)

To me, that says that Networker is a brain-dead backup app.    But, I have an aversion to any backup app that uses it's own undocumented binary archive format.

We used to use similar products, but they are more hassle than they are worth, especially since most of them require running some kind of agent on each of the systems to be backed up.  We've since moved to plain Rsync and ZFS snapshots.  It works so much quicker, smoother, nicer, and makes things so much simpler.  Plus, our backups are fully searchable using standard CLI tools like find.

With that setup, you really see the benefit of ZFS dedupe.  (Plus, we have a backup system for $10,000 CDN that works better, with more storage space, supporting more server, than the >$100,000 CDN system other districts are using.)


----------



## jalla (Mar 30, 2010)

phoenix said:
			
		

> To me, that says that Networker is a brain-dead backup app.    But, I have an aversion to any backup app that uses it's own undocumented binary archive format.


Results are similar with Netbackup, which is based on tar.
The fact is that zfs dedup does not not handle that type of data. You may blame that on the applications if you like


----------



## phoenix (Mar 30, 2010)

Tar is a binary archive format (although, at least it's documented).  Once you stuff your data into a binary archive, dedupe of any kind will not work.  Which is why we've moved away from all binary archive formats, and just store data as files.

Compressing archives is all you can do, which does it's own form of "dedupe" internally.


----------



## SirDice (Mar 30, 2010)

I don't think binary data is the problem here. It's more likely because of compression and/or encryption of the files. The odds that one or more compressed and/or encrypted files share the same data blocks on disk are somewhat astronomical. Dedup won't work.

If, however, the files are relatively static, maybe some blocks added in between, at the end, the beginning, dedup will definitely work.


----------



## danger@ (Mar 30, 2010)

as I understand it, the problem with newver ZFS versions is that it adds dependency on Python(?) for administrative commands (and maybe other tasks), which is not part of the FreeBSD base. Another problem is that those newer versions go deep into the changes in the OS internals, and require much more work to get ported to FreebSD ;-(


----------



## jalla (Mar 31, 2010)

SirDice said:
			
		

> I don't think binary data is the problem here. It's more likely because of compression and/or encryption of the files. The odds that one or more compressed and/or encrypted files share the same data blocks on disk are somewhat astronomical. Dedup won't work.
> 
> If, however, the files are relatively static, maybe some blocks added in between, at the end, the beginning, dedup will definitely work.



Backup applications don't copy diskblocks. They read the files and produce a single stream of data. Any change to the source will introduce a shift of bytes within the backupstream.

When written back to disk, while the data may be 99% identical to a previous stream, a simple block-by-block comparison may well be unable to identify a single duplicate block.

Modern dedup solutions clearly use other tecniques than this. Compression ratios of 20-50X is quite common with this type of data in appliances from DataDomain, etc.
(And, yes those solutions cost $$)


----------



## Matty (Apr 1, 2010)

Little offtopic but what are the consequences for freebsd if oracle would change the zfs/dtrace license from cddl to gpl to make it available to linux? or change it at all so it's not longer available for free.
wouldn't that mean that zfs could no longer be part of the base system?

seeing the latest changes make me wonder (solaris is no longer free but 90day trail).


----------



## p5ycho (Apr 1, 2010)

What we have now they can't take from us. If they decide to keep future code to themselves that would suck, but nothing we can do about it.

By the looks of it, ZFS being GPL'ed will never happen. Oracle wants Solaris to be their high-end OS.

Let's hope they keep OpenSolaris cddl and uptodate, so people have an easy way to get to know Solaris.


----------



## chrcol (Apr 4, 2010)

danger@ said:
			
		

> as I understand it, the problem with newver ZFS versions is that it adds dependency on Python(?) for administrative commands (and maybe other tasks), which is not part of the FreeBSD base. Another problem is that those newer versions go deep into the changes in the OS internals, and require much more work to get ported to FreebSD ;-(



Thanks for the response, so defenitly not easy to do then.


----------

