6

This is specifically for backup storage but, for informational purposes, I would like to know why would you chose one over the other?

Five minutes ago, I was not even aware that RAID 0+1 was an option for 3 disks. So now I have a decision to make.

Edit: Raid 0+1 with 3 disks

Glad I am not the only one that was unaware that Raid 0+1 could be done with 3 disks :-). This Wikipedia section explains it. And here is a diagram of how it would look:

3 disk Raid01

Belmin Fernandez
  • 10,799
  • 27
  • 84
  • 148
  • 1
    That arrangement is not a standard one, though is a not-uncommon extension. Some decent hardware controllers support it (IBM controllers call it "RAID1E"). It is implemented in recent Linux kernels in the single-level (not nested) RAID10 driver. You'll not find it on cheaper hardware controllers (nor all more expensive ones) or the software RAID implementation found in Windows. – David Spillett Nov 09 '10 at 20:28
  • Areca controllers also support this. They however make no distinction between RAID10 and RAID1E. The number of disks in your raid set determines how the data and mirror bits are striped across the drives. – 3dinfluence Nov 09 '10 at 21:20
  • If it's for backup only, RAID5 would be a better choice IMO. You get more space, and the small difference in write speed should not be important (read speed for backup is not important anyway). – vgru Nov 09 '10 at 21:28

3 Answers3

6

Standard nested RAID10 is not possible with three drives so you may be stuck with RAID5 out of those two options.

Under Linux you can use the single-level RAID10 driver over three drives. This acts like RAID5 but with mirroring rather than checksums - giving both read performance similar to two or three drive RAID0 (depending on layout chosen and I/O pattern) and write performance similar to two drive RAID1. The redundancy offered is the same as that offered by RAID5, so essentially you get a better performing array (i.e. without the read-before-write performance hit usually seen with RAID5) with the same redundancy.

Some higher-end hardware controllers offer similar arrangements under various names. IBM controllers usually refer to it as RAID1E.

Edit:

The arrangement shown in your edit is that used by the default settings for the Linux RAID10-over-three-drives arrangement and IBM's RAID1E. The linux driver offers several arrangement options (near, far and offset) which trade different performance metrics off against each other. For instance this layout:

1     2     3
4     5     6
...   ...   ...
N-2   N-1   N
2     3     1
5     6     4
...   ...   ...
N-1   N     N-2

has performance gains for reading. Essentially it acts like a three-drive RAID0 for just reads and better still it could potentially concentrate pure read activity to the faster end of the platters of spinning-disks. It suffers on write performance with spinning disks though because the heads will end up doing half sweeps or worse more often especially for writes to sequential blocks. The default arrangement generally has write performance no better then a 2-drive RAID0 but write performance generally no worse than RAID1. See http://en.wikipedia.org/wiki/Non-standard_RAID_levels#Linux_MD_RAID_10 for some more detail.

Which and Why:

To cut a long story short: if RADI1E/RAID10x3n2/what-ever-your-controller-calls-it is available in your environment and all other things are equal it should perform better than RAID5 while offering the same "any single drive can fail" redundancy, so I would say it is preferable for performance reasons. If space is more important than performance (especially write speed) then go with RAID5 as that will give you two drives worth of space rather than 1.5x.

Under Linux some would warn that 3-device RAID10 it is far less mature and tested by time than the RAID5 driver (though I think it has been in the mainline kernels long enough and been used enough to consider it relatively stable rather than "experimental"). Also if you are working in a large environment with many admins, factor in the chance of other people not understanding (only being familiar with the common 0/1/5/6/10 levels) and messing something up in their confusion!

David Spillett
  • 22,754
  • 45
  • 67
2

Raid5 seems similar to Raid10 with 3 drives in terms of fault-tolerance. The system can tolerate one HD failure.

However, raid5 is better in terms of overall storage capacity. You will get the size of 2 drives out of 3. In raid10, you will get only around 1.5 out of 3 (50%).

Khaled
  • 36,533
  • 8
  • 72
  • 99
  • 4
    And how do you do Raid 10 with 3 drives? Not possible. – TomTom Nov 09 '10 at 17:10
  • For fault-tolerance, however, RAID5 would require a complete rebuild before it comes up since there is no hot-spare. With RAID 10 or 0+1, you could pop in a cold spare and no down time. – Belmin Fernandez Nov 09 '10 at 17:11
  • @TomTom you are correct. I misunderstood what I was reading before. Modified the question. @Khaled's answer still applies for RAID 0+1. – Belmin Fernandez Nov 09 '10 at 17:14
0

One option for 3 disks is to go RAID 1, and use the remaining drive as a hot spare. I'm not sure if your raid controller supports it, but this is a good option. Basically, the third drive is sitting unused until the event when one of the drives fails. At that point the failed disk will be removed from the array, and the third disk will take over for the failed one. Basically it a allows you to recover to full redundancy as quick as possible. You can then replace the disk that failed the next day, or later, depending on how safe you want to be. Sure you're wasting a disk most of the time, but it ensures that even if no one replaces the failed drive, you still have redundancy, except for that small window where it's rebuilding the failed drive.

This is also a good solution if you have 4 disks, and are using RAID 5. Set up three drives as RAID 5, and the fourth drives as a hot spare.

Kibbee
  • 351
  • 2
  • 15