From: Russell Coker <russell@coker.com.au>
To: ashford@whisperpc.com
Cc: linux-btrfs@vger.kernel.org
Subject: Re: ditto blocks on ZFS
Date: Fri, 23 May 2014 13:54:46 +1000 [thread overview]
Message-ID: <7834850.9NHERJjFOs@xev> (raw)
In-Reply-To: <ac1e9fe46f993235f30b4c003210dec8.squirrel@webmail.wanet.net>
On Thu, 22 May 2014 15:09:40 ashford@whisperpc.com wrote:
> You've addressed half of the issue. It appears that the metadata is
> normally a bit over 1% using the current methods, but two samples do not
> make a statistical universe. The good news is that these two samples are
> from opposite extremes of usage, so I expect they're close to where the
> overall average would end up. I'd like to see a few more samples, from
> other usage scenarios, just to be sure.
>
> If the above numbers are normal, adding ditto blocks could increase the
> size of the metadata from 1% to 2% or even 3%. This isn't a problem.
>
> What we still don't know, and probably won't until after it's implemented,
> is whether or not the addition of ditto blocks will make the space
> allocation worse.
I've been involved in many discussions about filesystem choice. None of them
have included anyone raising an issue about ZFS metadata space usage, probably
most ZFS users don't even know about ditto blocks.
The relevant issue regarding disk space is the fact that filesystems tend to
perform better if there is a reasonable amount of free space. The amount of
free space for good performance will depend on filesystem, usage pattern, and
whatever you might define as "good performance".
The first two Google hits on searching for recommended free space on ZFS
recommended using no more than 80% and 85% of disk space. Obviously if "good
performance" requires 15% of free disk space then your capacity problem isn't
going to be solved by not duplicating metadata. Note that I am not aware of
the accuracy of such claims about ZFS performance.
Is anyone doing research on how much free disk space is required on BTRFS for
"good performance"? If a rumor (whether correct or incorrect) goes around
that you need 20% free space on a BTRFS filesystem for performance then that
will vastly outweigh the space used for metadata.
> > The ZFS design involves ditto blocks being spaced apart due to the fact
> > that corruption tends to have some spacial locality. So you are adding
> > an extra seek.
> >
> > The worst case would be when you have lots of small synchronous writes,
> > probably the default configuration of Maildir delivery would be a good
> > case.
>
> Is there a performance test for this? That would be helpful in
> determining the worst-case performance impact of implementing ditto
> blocks, and probably some other enhancements as well.
http://doc.coker.com.au/projects/postal/
My Postal mail server benchmark is one option. There are more than a few
benchmarks of synchronous writes of small files, but Postal uses real world
programs that need such performance. Delivering a single message via a
typical Unix MTA requires synchronous writes of two queue files and then the
destination file in the mail store.
--
My Main Blog http://etbe.coker.com.au/
My Documents Blog http://doc.coker.com.au/
next prev parent reply other threads:[~2014-05-23 3:54 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-05-16 3:07 ditto blocks on ZFS Russell Coker
2014-05-17 12:50 ` Martin
2014-05-17 14:24 ` Hugo Mills
2014-05-18 16:09 ` Russell Coker
2014-05-19 20:36 ` Martin
2014-05-19 21:47 ` Brendan Hide
2014-05-20 2:07 ` Russell Coker
2014-05-20 14:07 ` Austin S Hemmelgarn
2014-05-20 20:11 ` Brendan Hide
2014-05-20 14:56 ` ashford
2014-05-21 2:51 ` Russell Coker
2014-05-21 23:05 ` Martin
2014-05-22 11:10 ` Austin S Hemmelgarn
2014-05-22 22:09 ` ashford
2014-05-23 3:54 ` Russell Coker [this message]
2014-05-23 8:03 ` Duncan
2014-05-21 23:29 ` Konstantinos Skarlatos
-- strict thread matches above, loose matches on Subject: below --
2014-05-22 15:28 Tomasz Chmielewski
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=7834850.9NHERJjFOs@xev \
--to=russell@coker.com.au \
--cc=ashford@whisperpc.com \
--cc=linux-btrfs@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).