On Sat, 7 Jan 2012, Edward Ned Harvey wrote:
If you don't split out your ZIL separate from the storage pool, zfs already
chooses disk blocks that it believes to be optimized for minimal access
time. In fact, I believe, zfs will dedicate a few sectors at the low end, a
few at the high end, and various other locations scattered throughout the
pool, so whatever the current head position, it tries to go to the closest
"landing zone" that's available for ZIL writes. If anything, splitting out
your ZIL to a different partition might actually hurt your performance.
Something else to be aware of is that even if you don't have a
dedicated ZIL device, zfs will create a ZIL using devices in the main
pool so there is always a ZIL, even if you don't see it. Also, the
ZIL is only used to record pending small writes. Larger writes (I
think 128K or more) are written to their pre-allocated final location
in the main pool. This choice is made since the purpose of the ZIL is
to minimize random I/O to disk, and writing large amounts of data to
the ZIL would create a bandwidth bottleneck.
There are postings by Matt Ahrens to this list (and elsewhere) which
provide an accurate description of how the ZIL works.
GraphicsMagick Maintainer, http://www.GraphicsMagick.org/
zfs-discuss mailing list