From: Peter Zaitsev <pz@percona.com>
To: linux-btrfs@vger.kernel.org
Subject: Help understanding autodefrag details
Date: Fri, 10 Feb 2017 09:21:27 -0500 [thread overview]
Message-ID: <CA+RUij0XsPsnCMTj4esnpJpmP9D+HCD6uD+r-pUH=eYPwuowrA@mail.gmail.com> (raw)
Hi,
As I have been reading btrfs whitepaper it speaks about autodefrag in very
generic terms - once random write in the file is detected it is put in the
queue to be defragmented. Yet I could not find any specifics about this
process described anywhere.
My use case is databases and as such large files (100GB+) so my
questions are
- is my understanding what defrag queue is based on files not parts of
files which got fragmented correct ?
- Is single random write is enough to schedule file for defrag or is there
some more elaborate math to consider file fragmented and needing
optimization ?
- Is this queue FIFO or is it priority queue where files in more need of
fragmentation jump in front (or is there some other mechanics ?
- Will file to be attempted to be defragmented completely or does defrag
focuses on the most fragmented areas of the file first ?
- Is there any way to view this defrag queue ?
- How are resources allocated to background autodefrag vs resources serving
foreground user load are controlled
- What are space requirements for defrag ? is it required for the space to
be available for complete file copy or is it not required ?
- Can defrag handle file which is being constantly written to or is it
based on the concept what file should be idle for some time and when it is
going to be defragmented
Let me know if you have any information on these
--
Peter Zaitsev, CEO, Percona
Tel: +1 888 401 3401 ext 7360 Skype: peter_zaitsev
next reply other threads:[~2017-02-10 14:21 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-02-10 14:21 Peter Zaitsev [this message]
2017-02-13 12:56 ` Help understanding autodefrag details Austin S. Hemmelgarn
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='CA+RUij0XsPsnCMTj4esnpJpmP9D+HCD6uD+r-pUH=eYPwuowrA@mail.gmail.com' \
--to=pz@percona.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).