Monday, February 02, 2009

ZFS send performance

Recently some ZFS related performance fixes were integrated into Open Solaris builds 102-105. I was mostly interested in 'zfs send' improvements (i.e. 6418042). Brent Jones reported an improvement 'on the order of 5-100 times faster' for replicating zfs file systems using zfs send|receive - that got my attention :)

I did a test on x4500 with a pool which is a 4x raidz2(11 disks each) + 2 hot spares.
I have many file systems there with relatively lots of files.
The test was to compare times of 'ptime zfs send -R -I A B >/dev/null' on build 101 and 105. I repeated the test several times to be sure that I'm getting consistent results. There are many snapshots between A and B and the output stream size is ~111GB. Additionally a file system with A and B snapshots has lzjb compression enabled.

Results are really good! On b101 it takes about 1010s on average to complete while on b105 it takes about 213s on average - that's a 4.7x improvement!

No comments: