I’ve met quite of few customers and colleagues who are unfamiliar with the terms mentioned in the titles. Could be that a blogpost might help clear up a lot of the noise around these terms and help them understand these strange storage guys better.First let’s make clear what the terms frontend IOPS and backend IOPS mean.
For those who don’t know the term IOPS, it means IO’s per second. Next we can explain what frontend and backend IOPS are.
Frontend IOPS is the total number of read and write operations per second generated by an application or applications. These read and write operations are communicated to the disk(s) presented to the application or applications.
Backend IOPS is the total number of read and write operations per second that a RAID/storage controller sends to the physical disks. The value of the backend IOPS is higher most of the time, because of the simple reason that a certain RAID level has a certain overhead. This overhead is called the write penalty.
Some values for write penalties are:
- RAID 1: 2 backend IO’s for every frontend IO
- RAID 5: 4 backend IO’s for every frontend IO
- RAID 6: 6 backend IO’s for every frontend IO
Above values can vary based on the implementation by a manufacturer in it’s RAID controller(s). Caching also playes a part in calculating the backend IOPS, but to keep the message simple, I won’t go into that now.
Also don’t forget you read/write-ratio, which mostly depends on the application you are using. A fairly standard ratio to use is 70% reads and 30% writes, but this might not be the ratio in your specific case! Read are counted as one (1) IOPS in this case.
Total IOPS = Read IOPS + (RAID level based write penalty * Write IOPS)
Given RAID 1 the formula is:
Total IOPS = Read IOPS + (2 * Write IOPS)
And using RAID 5 the formula is:
Total IOPS = Read IOPS + (4 * Write IOPS)
The Total IOPS can be recalculated to the number of disks by knowing how many IOPS a single disk can deliver. Some commonly used values are:
- 7,2k RPM Nearline drive: 75-100 IOPS
- 10k RPM drive: 125-150 IOPS
- 15k RPM drive: 175-210 IOPS
My guess is that above information can give you ballpark figures about what your current storage system can deliver, or what your new storage system should be able to deliver. The actual performance of a storage is strongly dependent on the implementation of the manufacturer, so all above formulas are just to give you an indication.