From: "Austin S. Hemmelgarn" <ahferroin7@gmail.com>
To: Nikolaus Rath <Nikolaus@rath.org>, linux-btrfs@vger.kernel.org
Subject: Re: Use fast device only for metadata?
Date: Tue, 9 Feb 2016 08:22:47 -0500 [thread overview]
Message-ID: <56B9E827.2040000@gmail.com> (raw)
In-Reply-To: <87twliri6m.fsf@thinkpad.rath.org>
On 2016-02-08 16:44, Nikolaus Rath wrote:
> On Feb 07 2016, Martin Steigerwald <martin@lichtvoll.de> wrote:
>> Am Sonntag, 7. Februar 2016, 21:07:13 CET schrieb Kai Krakow:
>>> Am Sun, 07 Feb 2016 11:06:58 -0800
>>>
>>> schrieb Nikolaus Rath <Nikolaus@rath.org>:
>>>> Hello,
>>>>
>>>> I have a large home directory on a spinning disk that I regularly
>>>> synchronize between different computers using unison. That takes ages,
>>>> even though the amount of changed files is typically small. I suspect
>>>> most if the time is spend walking through the file system and checking
>>>> mtimes.
>>>>
>>>> So I was wondering if I could possibly speed-up this operation by
>>>> storing all btrfs metadata on a fast, SSD drive. It seems that
>>>> mkfs.btrfs allows me to put the metadata in raid1 or dup mode, and the
>>>> file contents in single mode. However, I could not find a way to tell
>>>> btrfs to use a device *only* for metadata. Is there a way to do that?
>>>>
>>>> Also, what is the difference between using "dup" and "raid1" for the
>>>> metadata?
>>>
>>> You may want to try bcache. It will speedup random access which is
>>> probably the main cause for your slow sync. Unfortunately it requires
>>> you to reformat your btrfs partitions to add a bcache superblock. But
>>> it's worth the efforts.
>>>
>>> I use a nightly rsync to USB3 disk, and bcache reduced it from 5+ hours
>>> to typically 1.5-3 depending on how much data changed.
>>
>> An alternative is using dm-cache, I think it doesn´t need to recreate the
>> filesystem.
>
> Yes, I tried that already but it didn't improve things at all. I wrote a
> message to the lvm list though, so maybe someone will be able to help.
That's interesting. I've been using BTRFS on dm-cache for a while, and
have seen measurable improvements in performance. They are not big
improvements (only about 5% peak), but they're still improvements, which
is somewhat impressive considering that the backing storage that's being
cached is a RAID0 set which gets almost the same raw throughput as the
SSD that's caching it. Of course, I'm using it more for the power
savings (SSD's use less power, and I've got a big enough cache I can
often spin down the traditional disks in the RAID0 set), and I also
re-tune my system as hardware and workloads change, and my workloads
tend to be atypical (lots of sequential isochronous writes, regular long
sequential reads, and some random reads and rewrites), so YMMV.
>
> Otherwise I'll give bcache a shot. I've avoided it so far because of the
> need to reformat and because of rumours that it doesn't work well with
> LVM or BTRFS. But it sounds as if that's not the case..
It should work fine with _just_ BTRFS, but don't put any other layers
into the storage system like LVM or dmcrypt or mdraid, it's got some
pretty pathological interactions with the device mapper and md
frameworks still.
next prev parent reply other threads:[~2016-02-09 13:24 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-02-07 19:06 Use fast device only for metadata? Nikolaus Rath
2016-02-07 20:07 ` Kai Krakow
2016-02-07 20:59 ` Martin Steigerwald
2016-02-08 1:04 ` Duncan
2016-02-08 12:24 ` Austin S. Hemmelgarn
2016-02-08 13:20 ` Qu Wenruo
2016-02-08 13:29 ` Austin S. Hemmelgarn
2016-02-08 14:23 ` Qu Wenruo
2016-02-08 21:44 ` Nikolaus Rath
2016-02-08 22:12 ` Duncan
2016-02-09 7:29 ` Kai Krakow
2016-02-09 16:09 ` Nikolaus Rath
2016-02-09 21:43 ` Kai Krakow
2016-02-09 22:02 ` Chris Murphy
2016-02-09 22:38 ` Nikolaus Rath
2016-02-10 1:12 ` Henk Slager
2016-02-09 16:10 ` Nikolaus Rath
2016-02-09 21:29 ` Kai Krakow
2016-02-09 18:23 ` Henk Slager
2016-02-09 13:22 ` Austin S. Hemmelgarn [this message]
2016-02-10 4:08 ` Nikolaus Rath
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=56B9E827.2040000@gmail.com \
--to=ahferroin7@gmail.com \
--cc=Nikolaus@rath.org \
--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).