Network and Storage Protocols

Maximum IOPS for a RAID-DP



I am looking for the calculation to find out the maximum IOPS that a Disk shelf  can provide , Raid type is RAID-DP .

1) is it just Number of disk X IOPS per disk

It should not be right ?  we have to consider write penalty for parity and also the Shelf Loop has a limitation of bandwidth (2G/4G)

2) How  Size of IO and Type of IO play their part ..

For example :   If we consider  50% Read and 50% write IOPS, how much IOPS we will get , and how its is calculated

3) How latency play its part in the calculation .....

I am searching a deatiled  calculation that consider these all matrix and provide the IOPS that a Shelf offer ...

Do netapp explains these calclulation somewhere , Any Doc will be gr8 help

Thanks in advanced




Also interested in same information.

It will good if someone post answer for this Question.



There are two ways you can approach this:

1) NetApp sizers dealing with different applications / workloads (e.g. Oracle, Exchange, SQL, etc.)

2) rule of thumb sizing, based on average number of IOPS per disk / spindle

The second approach assumes all IOPS are random with the majority of reads. Typical 'rough' figures I've seen are:

- 180-200 IOPS per 15k spindle

- 60-80 IOPS per SATA spindle

(you exclude parity & hot spare drives from calculations)




Hi Bipul

I wrote a article about this subject with how 3140 and 3160 latency levels compare and also how to calculate the theoretical maximum IOps based on type and quantity of hard disk in a RAID-DP based aggregate.

Hope this helps



I Just came across this calculation


Raw IOPS = Disk Speed IOPS * Number of disks

Functional IOPS = (Raw IOPS * Write % / RAID Penalty) + (RAW IOPS * Read %)


Note :- For Raid 6 write penalty is 6.


Hope it helps.


That's sounds good. How to find Write % & Read %?


seeing as most the tech support are clueless with performance analysis I will help the OP out.


Run this command


statistics show-periodic -object disk:raid_group -instance /node1_aggr1/plex0/rg0  -counter read_ops|write_ops -interval 1 -iterations 60


you will need to be in Priveleged Mode - Advanced. 


From there you can work out your read/write % and actually work out how to fix it, DO NOT Involve netapp support - they will read off a script and ask for a perfstat then a week later they will say "buy more disk" rather than, oh you have high latency? maybe you need to re-balance the aggregate? or reallocate or add jumbo frames or anything constructive lol.