3

I'm investigating some 4TB database systems and I'm comparing differences between RAID-10 & RAID-50.

I know how to calculate the IOPS for common RAID levels like RAID-1, RAID-5 & RAID-10. However, I am unsure how to calculate IOPS for RAID-50 & RAID-60 systems, specifically with respect to the RAID Write penalties which are the bane of RAID-5 & RAID-6 system.

How would I calculate the IOPS for a RAID-50 system? Should I combine the RAID-10 & RAID-5 metrics somehow? What is the RAID write penalty for a RAID-50 or RAID-60 array?

We know that effective IOPS for RAID arrays can be calculated with the following formula

Ieffective = (n * Isingle) / (READ% + (F * WRITE%))

Where:

  • Ieffective is effective number of IOPS
  • Isingle is a single drive's average IOPS.
  • n is number of disks in the array
  • READ% is the fraction of reads taken from disk profiling
  • WRITE% is the fraction of writes taken from disk profiling
  • F is the RAID write penalty (The number of operations required for each write). RAID Penalties for common raid levels are:

    RAID Level      Write Penalty
    RAID-0          1   
    RAID-1          2   
    RAID-5          4
    RAID-6          6
    RAID-10         2
    RAID-DP         2
    

But what is the write penalty for a RAID-50 system?

Note: For people who are wondering about ZFS: IOPS used for ZFS RAIDZ, RAIDZ2 and RAIDZ3 are much, much improved compared to traditional RAID5 & RAID6: See Is calculating IOPS for ZFS RAIDZ different then calculating IOPS for RAID5 & RAID6?

Stefan Lasiewski
  • 24,361
  • 42
  • 136
  • 188

1 Answers1

2

Here are the basics of the calculation:

  • A 16-drives RAID-50 array has the same read and write IOPS as two 8-drives RAID-5 arrays.
  • A 16-drives RAID-60 array has the same read and write IOPS as two 8-drives RAID-6 arrays.

You have to calculate the IOPS of the RAID arrays being used to build the block, then add them together.

You can't make an easy formula for these spanned RAID types. You would need to include the number of underlying RAID groups and the characteristics of each, calculating each member raid and adding them together.

Basil
  • 8,931