ZFS Striping and Optimizing Capabilities

Dan Nelson dnelson at allantgroup.com
Sun Apr 10 06:33:00 UTC 2011


In the last episode (Apr 09), Chris Telting said:
> Just a few questions about what ZFS actually does.  So if anyone has
> intimate knowledge about ZFS's implementation on Freebsd I'm sure I and
> others would appreciate the answers.
> 
> When you add a second and or thrid drive/partition to a zpool I'm assuming
> that it's going to start using the drives like a raid 0 stripe.  How do
> the ZFS versions differ in this?  Does it immediately start striping all
> files in the background on low priority or does it do it as files are
> accessed?  Does ZFS in any way do performance testing of

Currently ZFS never moves a block once it has been written.  The whole
implementation of copy-on-write and snapshots relies on this.  If you add a
new zvol to a pool, new data will get balanced across all the zvols but old
data will stay where it was.  Ideally you should expand pools before they
get too full, or zpool export/import them into new pools if you want good
distribution over all disks.  There have been hints for the last few years
of a "bp rewite" feature appearing, but it has never materialized.

-- 
	Dan Nelson
	dnelson at allantgroup.com


More information about the freebsd-questions mailing list