Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

Ok, simple question here. When doing performance calculations on RAID arrays that involve number of spindles (such as measuring disk queue length), how many "spindles" do I use?

The array in question is RAID 6. Should I use N-2 spindles? N-1 if it were RAID 5?

share|improve this question

2 Answers 2

up vote 4 down vote accepted

You can't simply subtract the number of parity disks from number of total spindles and end up with useful results if you're doing IOP transaction calculations. There's more going on behind the scenes:

RAID 10:

  • 1 frontend read translates into 1 backend IOP (d0 read)
  • 1 frontend write translates into 2 backend IOPS (d0 write, d1 write)

RAID 5:

  • 1 frontend read translates into 1 backend IOP (d0 read)
  • 1 frontend write translates into 4 backend IOPS (d0 read, parity read, d0 write, parity write)

RAID 6: (not 100% sure on these numbers - someone please correct me if they are off)

  • 1 frontend read translates into 1 backend IOP (d0 read)
  • 1 frontend write translates into 6 backend IOPS (d0 read, parity read, qarity read, d0 write, parity write, qarity write)

So for example in a RAID set with 8 disks:

  • RAID10: 100 frontend writes translates to 200 IOPS on the backend (or 25/drive)
  • RAID5: 100 frontend writes translates to 400 IOPS on the backend (or 50/drive)
  • RAID6: 100 frontend writes translates to 600 IOPS on the backend (or 75/drive)

Note that for the RAID10 calculations the method of "subtract number of parity spindles from total number of spindles" gives you the right answer. However, this falls over in RAID5/RAID6 calculations.

share|improve this answer

Depends on your formula, assuming its a good one you should use the total number of spindles in the array, minus hot-spares.

Here's a good calculator btw: http://wmarow.com/strcalc/

share|improve this answer
    
Nice calculator! Thanks for that link. –  xeon Dec 18 '09 at 20:13
    
What if the formula isn't taking RAID level into account? It seems like I wouldn't include parity drives in my spindle count... ? –  Boden Dec 18 '09 at 21:10
    
Then its not much of a formula. MikeyB's answer below is a great explanation of why it matters. Also remember battery backed write cache makes a massive difference for intermittent/bursty writes. So a RAID-6 with bbwc will likely do much better on a relatively write-heavy database than a RAID-10 without it. –  cagenut Dec 18 '09 at 22:37

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.