Gary Mills writes:

 > On Tue, Jan 12, 2010 at 01:56:57PM -0800, Richard Elling wrote:
 > > On Jan 12, 2010, at 12:37 PM, Gary Mills wrote:
 > > 
 > > > On Tue, Jan 12, 2010 at 11:11:36AM -0600, Bob Friesenhahn wrote:
 > > >> On Tue, 12 Jan 2010, Gary Mills wrote:
 > > >>> 
 > > >>> Is moving the databases (IMAP metadata) to a separate ZFS filesystem
 > > >>> likely to improve performance?  I've heard that this is important, but
 > > >>> I'm not clear why this is.
 > > > 
 > > > I found a couple of references that suggest just putting the databases
 > > > on their own ZFS filesystem has a great benefit.  One is an e-mail
 > > > message to a mailing list from Vincent Fox at UC Davis.  They run a
 > > > similar system to ours at that site.  He says:
 > > > 
 > > >    Particularly the database is important to get it's own filesystem so
 > > >    that it's queue/cache are separated.
 > > 
 > > Another policy you might consider is the recordsize for the 
 > > database vs the message store.  In general, databases like the
 > > recordsize to match.  Of course, recordsize is a per-dataset 
 > > parameter.
 > 
 > Unfortunately, it's not a single database.  There are many of them, of
 > different types.  One is a Berkeley DB, others are something specific
 > to the IMAP server (called skiplist), and some are small flat files
 > that are just rewritten.  All they have in common is activity and
 > frequent locking.  They can be relocated as a whole.
 > 
 > > > The second one is from:
 > > > 
 > > >    http://blogs.sun.com/roch/entry/the_dynamics_of_zfs
 > > > 
 > > > He says:
 > > > 
 > > >    For file modification that come with some immediate data integrity
 > > >    constraint (O_DSYNC, fsync etc.) ZFS manages a per-filesystem intent
 > > >    log or ZIL.
 > > > 
 > > > This sounds like the ZIL queue mentioned above.  Is I/O for each of
 > > > those handled separately?
 > > 
 > > ZIL is for the pool.
 > 
 > Yes, I understand that, but do filesystems have separate queues of any
 > sort within the ZIL?  If not, would it help to put the database
 > filesystems into a separate zpool?
 > 

The slog device is for the pool but the ZIL is per
filesystem/dataset. The logbias property can be used on a dataset to
prevent that set from consuming the slog device resource  :

        http://blogs.sun.com/roch/entry/synchronous_write_bias_property

-r


 > > We did some experiments with the messaging server and a RAID
 > > array with separate logs. As expected, it didn't make much difference
 > > because of the nice, large nonvolatile write cache on the array. This
 > > reinforces the notion that Dan Carosone also recently noted: performance
 > > gains for separate logs are possible when the latency of the separate
 > > log device is much lower than the latency of the devices in the main pool,
 > > and, of course, the workload uses sync writes.
 > 
 > It certainly sounds as if latency is the key for synchronous writes.
 > 
 > -- 
 > -Gary Mills-        -Unix Group-        -Computer and Network Services-
 > _______________________________________________
 > zfs-discuss mailing list
 > zfs-discuss@opensolaris.org
 > http://mail.opensolaris.org/mailman/listinfo/zfs-discuss

_______________________________________________
zfs-discuss mailing list
zfs-discuss@opensolaris.org
http://mail.opensolaris.org/mailman/listinfo/zfs-discuss

Reply via email to