First off, let’s set the scene, what does IOPS mean?
IOPS stands for “Input/Output Operations Per Second” and is a performance measurement used to benchmark storage devices: HDD, SSD and SANs. The other measurement for storage is “transfer rate” but we’ll cover that another time.
IOPS can be generated in a variety of ways, block size, mixture of read/writes and how randomised the I/O stream is. This ability to generate IOPS numbers in different ways stems the confusion around using IOPS as a measurement.
In our experience, it’s best to generate IOPS in two mixtures of READ/WRITE and we’ve done just that for this; see the testing conditions below:
READ 80% – WRITE 20%
WRITE 80% – READ 20%
Not all clouds are built the same, so we've used the enforced sizing model of Azure and AWS as below (the Access Alto Cloud allows for right-sizing of machines and storage tiers):
To build out what a set of results look like, we need to consider:
- I/O Latency: the measure of time it takes to process a single storage transaction or data request
- Average IOPS: this is what you are aiming for, how many read/write operations can happen in a second
- Average Mbps: the amount of throughput on your given workload
- CPU Load: the load on your CPU to process the requests
All of the above help us ascertain the potential performance of the storage for a given workload.
Onto the results - the full results are below, with some graphical assistance for the READ 80% – WRITE 20% following them.
RESULTS: READ 80% – WRITE 20%
Summary:
AWS
You can expect some good results on AWS Premium with their Standard offering not being up to any primary Production workloads. Their Premium offering shows distinct advantages over their Standard offering with less latency which is good to see.
Azure
Some worrying latency issues on both their Standard and Premium offerings, on the tests there isn’t really much difference between the achievable IOPS along with latency been high for both. Running our test VMs on Azure showed less than desirable results both on the results here as well as the performance of the RDP sessions of the VMs.
Access Alto
No surprises here as this is running on NetApp’s industry leading SolidFire Arrays, impressive average IOPS and Mbps results on both their Standard and Premium offerings. The CPU load showing that the VMs were really working to get the throughput, increasing the CPU could increase this further, impressively the Premium option is able to offer up to nearly 50’000 Average IOPs on Public Cloud with low latency!
Dedicated SAS SAN
Some good results from a dedicated device, no contention on this device as it’s dedicated to a Private Cloud. Low latency and up to 20’000K Average IOPs would give good performance for Production workloads.
We used IOMeter here for testing, give it a go here: http://www.iometer.org/doc/downloads.html
Find out more about Access Cloud Hosting Solutions