Linux Btrfs filesystem development
 help / color / mirror / Atom feed
From: Johannes Pfrang <johannespfrang@gmail.com>
To: Roman Mamedov <rm@romanrm.net>
Cc: linux-btrfs@vger.kernel.org
Subject: Re: Btrfs - distribute files equally across multiple devices
Date: Mon, 6 Jul 2015 19:31:09 +0200	[thread overview]
Message-ID: <559ABB5D.9070305@gmail.com> (raw)
In-Reply-To: <20150706214544.184908dd@natsu>

[-- Attachment #1: Type: text/plain, Size: 1925 bytes --]

That looks quite interesting!
Unfortunately this removes the ability to specify different RAID-levels
for metadata vs data and actually behaves more like btrfs "single" mode.
According to your link it fills drive by drive instead of distributing
files equally across them:

"When you create a new file in the virtual filesystem, |mhddfs| will
look at the free space, which remains on each of the drives. If the
first drive has enough free space, the file will be created on that
first drive."

What I propose (simplest implementation):

"When you create a new file in the filesystem, btrfswill look at used
space on each of the drives. The file will be created on the drive with
the least used space that can hold the file."

Difference:

mhddfs only achieves maximum recoverability once the filesystem is full
(just like "single"), while my proposal achieves such recoverability
from the start.
(maximum recoverability by (totalDisks-failedDisks)/totalDisks as
percentage of recoverable data/files (depending on by which the fs is
balanced))

Also I'm not sure if it's compatible to btrfs's special
remaining-space-calculation magic ^^

On 06.07.2015 18:45, Roman Mamedov wrote:
> On Mon, 6 Jul 2015 18:22:52 +0200
> Johannes Pfrang <johannespfrang@gmail.com> wrote:
>
>> The simplest implementation would probably be something like: Always
>> write files to the disk with the least amount of space used. I think
>> this may be a valid software-raid use-case, as it combines RAID 0 (w/o
>> some of the performance gains[2]) with recoverability of about half of
>> the data/files (balanced by filled space or amount of files) in the
>> event of a drive-failure[3] by using filesystem information a
>> hardware-raid doesn't have. In the end this is more or less JBOD with
>> balanced disk usage + filesystem intelligence.
> mhddfs does exactly that: https://romanrm.net/mhddfs
>



[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 819 bytes --]

  reply	other threads:[~2015-07-06 17:31 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-07-06 16:22 Btrfs - distribute files equally across multiple devices Johannes Pfrang
2015-07-06 16:45 ` Roman Mamedov
2015-07-06 17:31   ` Johannes Pfrang [this message]
2015-07-06 17:53 ` Hugo Mills
2015-07-06 18:34   ` Johannes Pfrang

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=559ABB5D.9070305@gmail.com \
    --to=johannespfrang@gmail.com \
    --cc=linux-btrfs@vger.kernel.org \
    --cc=rm@romanrm.net \
    /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