Download the authoritative guide: Enterprise Data Storage 2018: Optimizing Your Storage Infrastructure
Quality of service (QoS) is a powerful storage system feature. Adoption so far has been limited, but it is becoming clear that storage QoS is a capability whose time has come. And in the not too distant future it will be part of just about every storage system.
That's certainly the opinion of Henry Baltazar, a senior analyst at Forrester Research. He says that while storage QoS is still early in its adoption cycle – although major vendors like IBM and HP are already adding it to their product offerings – its proliferation is inevitable. "I am pretty sure that it will become standard in most products – especially when used in the cloud or in highly virtualized infrastructures," he says.
In fact storage QoS is useful not just in these environments but in any server room or data center – virtualized or not – where workloads utilize shared storage resources. That's because it can help provide predictable and controllable storage performance levels, and it can solve the so-called "noisy neighbor" problem.
That's when an application or virtual machine starts consuming more than its fair share of storage resources to the extent that it negatively impacts the performance of other applications or virtual machines that use the same storage resources. It can happen in an enterprise environment, but it can also affect individual cloud customers if they happen to be sharing storage resources with other customers whose workloads are noisy neighbors.
QoS gives storage staff the tools they need to mitigate the noisy neighbor problem either by limiting the resources these applications or VMs can hog or by guaranteeing a minimum level of storage resources that other applications can access when they need them.
"The main point of storage QoS is that it provides you with superior management of the storage resources you have. So at the high end, it provides you with the ability to guarantee that if you have an important database and it needs a certain number of IOPS, then your storage system will consistently provide them."
In that respect storage QoS is similar to the type of network QoS many organizations use to ensure the quality of their VoIP calls. But when it comes to storage QoS in cloud environments Baltazar believes that it has other uses as well.
"An interesting nuance is that the power of QoS is not just to guarantee the high end, but also to limit the low end," he says. "A bronze level customer on a shared array without QoS is not bound by any restrictions. But you don't want bronze customers getting gold performance – that applies in cloud and in the enterprise too.
"If there are no boundaries then these customers can eat up cache and outbound bandwidth – and there you have the noisy neighbor problem. You have to have a way to ensure that the people who need (and perhaps pay for) high storage performance get it."
The way that storage vendors implement storage QoS is likely to vary widely – from software bolted on to existing hybrid arrays, to high end, purpose built flash-only systems for the public cloud provider and very large (think eBay) Internet-based organization market.
At the SME-end of the market, it's likely that QoS will appear in hybrid storage offerings, with the QoS software helping to automate the allocation of data on faster SSD storage or slower but cheaper and more abundant spinning disk media. That's the approach that's being taken by Utah-based Fusion-io with its ioControl Hybrid Storage, which includes QoS technology the company acquired when it purchased NexGen Storage a little over a year ago.
"The problem companies face is understanding which data needs to be on SSD and which needs to be on disk," explains Chris McCall, senior director of ioControl marketing at Fusion-io. "Our software manages how much data needs to be on a disk or SSD and manages that dynamically."