From: Austin S Hemmelgarn <ahferroin7@gmail.com>
To: Tomasz Chmielewski <tch@virtall.com>
Cc: linux-btrfs <linux-btrfs@vger.kernel.org>
Subject: Re: compression disk space saving - what are your results?
Date: Wed, 2 Dec 2015 09:49:05 -0500 [thread overview]
Message-ID: <565F04E1.6000003@gmail.com> (raw)
In-Reply-To: <18fb40ae4411f31353e06bf99ee12c8a@admin.virtall.com>
[-- Attachment #1: Type: text/plain, Size: 2158 bytes --]
On 2015-12-02 08:53, Tomasz Chmielewski wrote:
> On 2015-12-02 22:03, Austin S Hemmelgarn wrote:
>
>>> From these numbers (124 GB used where data size is 153 GB), it appears
>>> that we save around 20% with zlib compression enabled.
>>> Is 20% reasonable saving for zlib? Typically text compresses much better
>>> with that algorithm, although I understand that we have several
>>> limitations when applying that on a filesystem level.
>>
>> This is actually an excellent question. A couple of things to note
>> before I share what I've seen:
>> 1. Text compresses better with any compression algorithm. It is by
>> nature highly patterned and moderately redundant data, which is what
>> benefits the most from compression.
>
> It looks that compress=zlib does not compress very well. Following
> Duncan's suggestion, I've changed it to compress-force=zlib, and
> re-copied the data to make sure the file are compressed.
For future reference, if you run 'btrfs filesystem defrag -r -czlib' on
the top level directory, you can achieve the same effect without having
to deal with the copy overhead. This has a side effect of breaking
reflinks, but copying the files off and back onto the filesystem does so
also, and even then, I doubt that you're using reflinks. There probably
wouldn't be much difference in the time it takes, but at least you
wouldn't be hitting another disk in the process.
>
> Compression ratio is much much better now (on a slightly changed data set):
>
> # df -h
> /dev/xvdb 200G 24G 176G 12% /var/log/remote
>
>
> # du -sh /var/log/remote/
> 138G /var/log/remote/
>
>
> So, 138 GB files use just 24 GB on disk - nice!
>
> However, I would still expect that compress=zlib has almost the same
> effect as compress-force=zlib, for 100% text files/logs.
>
That's better than 80% space savings (it works out to about 83.6%), so I
doubt that you'd manage to get anything better than that even with only
plain text files. It's interesting that there's such a big discrepancy
though, that indicates that BTRFS really needs some work WRT deciding
what to compress.
[-- Attachment #2: S/MIME Cryptographic Signature --]
[-- Type: application/pkcs7-signature, Size: 3019 bytes --]
next prev parent reply other threads:[~2015-12-02 14:49 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-12-02 9:46 compression disk space saving - what are your results? Tomasz Chmielewski
2015-12-02 10:36 ` Duncan
2015-12-02 14:03 ` Imran Geriskovan
2015-12-02 14:39 ` Austin S Hemmelgarn
2015-12-03 6:29 ` Duncan
2015-12-03 12:09 ` Imran Geriskovan
2015-12-04 12:33 ` Austin S Hemmelgarn
2015-12-04 12:37 ` Austin S Hemmelgarn
2015-12-02 13:03 ` Austin S Hemmelgarn
2015-12-02 13:53 ` Tomasz Chmielewski
2015-12-02 14:03 ` Wang Shilong
2015-12-02 14:06 ` Tomasz Chmielewski
2015-12-02 14:49 ` Austin S Hemmelgarn [this message]
2015-12-22 3:55 ` Kai Krakow
2015-12-22 17:25 ` james northrup
2015-12-05 13:37 ` Marc Joliet
2015-12-05 14:11 ` Marc Joliet
2015-12-06 4:21 ` Duncan
2015-12-06 11:26 ` Marc Joliet
2015-12-05 19:38 ` guido_kuenne
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=565F04E1.6000003@gmail.com \
--to=ahferroin7@gmail.com \
--cc=linux-btrfs@vger.kernel.org \
--cc=tch@virtall.com \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.