From: Natanji <natanji@gmail.com>
To: David T-G <davidtg-robot@justpickone.org>,
Linux RAID <linux-raid@vger.kernel.org>
Subject: Re: striping 2x500G to mirror 1x1T
Date: Mon, 7 Mar 2022 15:19:13 +0100 [thread overview]
Message-ID: <335f6238-9329-7616-051f-075706ac9022@gmail.com> (raw)
In-Reply-To: <20220305044704.GB4455@justpickone.org>
Hello David,
what you propose here should work, but be aware that you are essentially
first writing all data to the 2 smaller drives and then reading from
them only when the mirror 1 TB disk gets added. If there are bad sectors
that only gets dicovered while reading (not writing), you might lose
data. A much cleaner way would be to make a backup of your data disk and
then first crate the array with all disks, then write the data back from
your backup once the disks are in sync. You should definitely make a
backup or you could potentially lose data when creating this array.
I don't see the benefit of striping in your setup, by the way. For the
two smaller disks it might seem that this is beneficial for performance,
but since every write also needs to be made on the mirror, this will
essentially lead to your read/write head moving back and forth a lot,
no? Because if you write four consecutive chunks C1-C4 on the striped
side, two of these would be written to each smaller disk. And on the 1
TB disk side this would mean writing the sectors with only one
read/write head, each around 500GB apart from each other, and in a back
and worth fashion (although that might be optimized by queuing). So your
write performance could actually be *worse* than on a single drive, and
definitely not gain the 2x speed benefit of striping. For read
performance you might be okay, but nevertheless put unneccessary
mechanical wear on your 1 TB drive.
[C1 C3 ....] 500GB-1 [C2 C4 ....] 500GB-2
[C1 C3 ... (500G space) C2 C4 ....] 1TB
At least that's my understanding, someone correct me if I'm wrong and
mdadm handles such setups more intelligently (i.e. by laying out the
chunks completely linearly on the 1TB disk instead of 1-to-1 "mirroring"
the chunks on the 2x500G RAID0). If you think I'm correct, then instead
of striping I would just use linear mode on the 500GB disks to pool them
into one large volume, and thus essentially get Raid1 speed benefits of
double read performance compared to a single drive. This has the
downside of putting very different wear on the two 500GB volumes, of course.
Best regards,
Natanji
Am 05.03.2022 um 05:47 schrieb David T-G:
> Hi, all --
>
> I have a 1T data drive (currently in use with data) that I'd like to
> mirror with a pair of 500G drives striped together. I'll be mirroring
> two partitions, and I'll be striping partitions to ensure the correct
> size, and my understanding is that I'll have to create the mirror on the
> two new drives with half missing, mount it up, copy over the data, dump
> the original disk, and add it as the other half of the mirror to sync.
> If I've missed anything there, please let me know, but all of that
> matches my Googling and I don't think I have any questions.
>
> What I do wonder, and what I don't see in any searches since apparently
> nobody talks about striping up half of a mirror, is if I should do
> anything special with my two-disk RAID0 stripe. I was gobsmacked at
> the simplicity of RAID10 on only two drives by splitting each in half
> and "flipping" one to maximize head movement performance. Awesome! :-)
> Are there any brilliant hacks for simple striping? If I'm just putting
> together two [not terribly large] disks, will I benefit from any other
> funny stuff, or should I just stripe together two partitions -- each
> half the size of my other drive, of course -- to make a "boring basic"
> stripe and run with that?
>
>
> TIA & HANW
>
> :-D
next prev parent reply other threads:[~2022-03-07 14:19 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-03-05 4:47 striping 2x500G to mirror 1x1T David T-G
2022-03-07 14:19 ` Natanji [this message]
2022-03-07 16:24 ` Wols Lists
2022-03-09 3:02 ` backups and losses (was "Re: striping 2x500G to mirror 1x1T") David T-G
2022-03-08 23:08 ` striping 2x500G to mirror 1x1T Jani Partanen
2022-03-08 23:34 ` Roman Mamedov
2022-03-09 2:59 ` David T-G
2022-03-09 16:04 ` to partition or not to partition (was "Re: striping 2x500G to mirror 1x1T") David T-G
2022-03-09 16:25 ` Roman Mamedov
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=335f6238-9329-7616-051f-075706ac9022@gmail.com \
--to=natanji@gmail.com \
--cc=davidtg-robot@justpickone.org \
--cc=linux-raid@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).