linux-raid.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Stan Hoeppner <stan@hardwarefreak.com>
To: Peter Grandi <pg@lxra2.for.sabi.co.UK>
Cc: Linux RAID <linux-raid@vger.kernel.org>
Subject: Re: RAID-10 explicitly defined drive pairs?
Date: Sat, 07 Jan 2012 10:25:53 -0600	[thread overview]
Message-ID: <4F087211.5020000@hardwarefreak.com> (raw)
In-Reply-To: <20232.21966.952905.343604@tree.ty.sabi.co.UK>

On 1/7/2012 8:25 AM, Peter Grandi wrote:

I wrote:
>>> And I suspect that XFS swidth/sunit settings will still work
>>> with RAID-10 parameters even over plain LVM logical volume on
>>> top of that RAID 10, while the settings would be more tricky
>>> when used with interleaved LVM logical volume on top of
>>> several RAID-1 pairs (LVM interleaving uses LE/PE-sized
>>> stripes, IIRC).


> Stripe alignment is only relevant for parity RAID types, as it
> is meant to minimize read-modify-write. 

The benefits aren't limited to parity arrays.  Tuning the stripe
parameters yields benefits on RAID0/10 arrays as well, mainly by packing
a full stripe of data when possible, avoiding many partial stripe width
writes in the non aligned case.  Granted the gains are workload
dependent, but overall you get a bump from aligned writes.

> There is no RMW problem
> with RAID0, RAID1 or combinations. 

Which is one of the reasons the linear concat over RAID1 pairs works
very well for some workloads.

> But there is a case for
> 'sunit'/'swidth' with single flash based SSDs as they do have a
> RMW-like issue with erase blocks. In other cases whether they
> are of benefit is rather questionable.

I'd love to see some documentation supporting this sunit/swidth with a
single SSD device theory.

I wrote:
>> One would use a linear concatenation and drive parallelism
>> with XFS allocation groups, i.e. for a 24 drive chassis you'd
>> setup an mdraid or lvm linear array of 12 RAID1 pairs and
>> format with something like: $ mkfs.xfs -d agcount=24 [device]
>> As long as one's workload writes files relatively evenly
>> across 24 or more directories, one receives fantastic
>> concurrency/parallelism, in this case 24 concurrent
>> transactions, 2 to each mirror pair.


> That to me sounds a bit too fragile ; RAID0 is almost always
> preferable to "concat", even with AG multiplication, and I would
> be avoiding LVM more than avoiding MD.

This wholly depends on the workload.  For something like maildir RAID0
would give you no benefit as the mail files are going to be smaller than
a sane MDRAID chunk size for such an array, so you get no striping
performance benefit.

And RAID0 is far more fragile here than a concat.  If you lose both
drives in a mirror pair, say to controller, backplane, cable, etc
failure, you've lost your entire array, and your XFS filesystem.  With a
cocncat you can lose a mirror pair, run an xfs_repair and very likely
end up with a functioning filesystem, sans the directories and files
that resided on that pair.  With RAID0 you're totally hosed.  With a
concat you're probably mostly still in business.

-- 
Stan

  reply	other threads:[~2012-01-07 16:25 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-12-12 11:54 RAID-10 explicitly defined drive pairs? Jan Kasprzak
2011-12-12 15:33 ` John Robinson
2012-01-06 15:08   ` Jan Kasprzak
2012-01-06 16:39     ` Peter Grandi
2012-01-06 19:16       ` Stan Hoeppner
2012-01-06 20:11       ` Jan Kasprzak
2012-01-06 22:55         ` Stan Hoeppner
2012-01-07 14:25           ` Peter Grandi
2012-01-07 16:25             ` Stan Hoeppner [this message]
2012-01-09 13:46               ` Peter Grandi
2012-01-10  3:54                 ` Stan Hoeppner
2012-01-10  4:13                   ` NeilBrown
2012-01-10 16:25                     ` Stan Hoeppner
2012-01-12 11:58                   ` Peter Grandi
2012-01-12 12:47               ` Peter Grandi
2012-01-12 21:24                 ` Stan Hoeppner
2012-01-06 20:55     ` NeilBrown
2012-01-06 21:02       ` Jan Kasprzak
2012-03-22 10:01       ` Alexander Lyakas
2012-03-22 10:31         ` NeilBrown
2012-03-25  9:30           ` Alexander Lyakas
2012-04-04 16:56             ` Alexander Lyakas
2014-06-09 14:26               ` Alexander Lyakas
2014-06-10  0:11                 ` NeilBrown
2014-06-11 16:05                   ` Alexander Lyakas

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=4F087211.5020000@hardwarefreak.com \
    --to=stan@hardwarefreak.com \
    --cc=linux-raid@vger.kernel.org \
    --cc=pg@lxra2.for.sabi.co.UK \
    /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).