Cloud storage metering needs to be redefined using capacity and IOps

Today Service Provider charge customers based on amount of storage which is being consumed by the hosted virtual machines. However, they always oversight the usage of the IOps. It may happen that with a small sized VM it will oversubscribe the storage IO.

In those cases, service providers loose out on the money as they don’t charge on the IOps but just the capacity.

Also, Service Providers don’t charge based on Slab. Premium and high usage customers and SMB customers are always charged at a same scale. However, scale of their usage varies drastically.

Today’s Problems

  • SSD Premium Tier – High cost to buy in
  • Expensive capacity sits idle
  • Paying for unused IOps / Features
  • Uneven costs for expansion

Now the obvious question comes to your mind is, “what you really would like to see them doing/providing”?

We are working on a solution that is focused on a combination of actual IOps usage and Capacity on a scale. Three main points which will help service providers through this solution are:

  • Grow as you go: Incremental scalability delivers predictable costs
  • Buy the IOps & Capacity what you need
  • Tune performance as required

To emphasize these, customers will be charged based on the actual IOps usage and they can limit the IOps based on their charge at a later stage. It will provide an easy way for Service Providers and Aggregators to gather and report on accurate usage to support the billing process. It will monitor, measure and report on VM resource usage (IOps & Capacity).

It will be deployed at the Service Provider to collect raw usage information from all vCenter Server instances.

  • Usage information will be collected on monthly basis for each monitored VM
  • Information for all VMs will be held in one file (.csv file)
  • Usage reports will be generated to support the billing process

IOPs & Capacity Based Metering Metric

This solution will allow Service Provider to charge customers based on VM’s Storage IO Resource and also an eye opener for customers to control the storage IO resource as SSD Tier storage is premium ($$). It will align closer to Service Provider business models and allows Service Provider to increase margins.

Using this solution, total IOps & Capacity aggregated points calculation helps as with only IOps customers can use SSD capacity as DR capacity without any charge.

This about the slab based billing. Slab based Billing to the customer will help premium customers need to pay more and SMB customers less using Slabs.

Let me show you an example of how the calculation will help service providers.

IOps Metering


Formula for calculating the points is:

(Total IOps * X Points) + (Total Capacity * Y Points) = Total Points/VM

After this the entire point will be charged based on a usage scale. I have created a workflow as well, have a look at it.

IOps Metering Workflow


About Prasenjit Sarkar

Prasenjit Sarkar is a Product Manager at Oracle for their Public Cloud with primary focus on Cloud Strategy, Oracle Openstack, PaaS, Cloud Native Applications and API Platform. His primary focus is driving Oracle’s Cloud Computing business with commercial and public sector customers; helping to shape and deliver on a strategy to build broad use of Oracle’s Infrastructure as a Service (IaaS) and Platform as a Service (PaaS) offerings such as Compute, Storage, Java as a Service, and Database as a Service. He is also responsible for developing public/private cloud integration strategies, customer’s Cloud Computing architecture vision, future state architectures, and implementable architecture roadmaps in the context of the public, private, and hybrid cloud computing solutions Oracle can offer.

2 Replies to “Cloud storage metering needs to be redefined using capacity and IOps”

  1. Great post!!! Finally someone open this very important problem. I’m constantly explaining this point during my consulting engagements for customers implementing private or public cloud infrastructures.

    It’s important to understand that 1 IOPS is more expensive than 1 GB!!!
    In my TCO calculations IOPS is usually 3x times more expensive on midrange Fibre Channel storages. Of course final ratio little bit differs among storage models. All flash and hybrid storages also change this economy.

    But the result is the same – IOPS is always more expensive. The question is only how much.

    Unfortunately vCloud Director nor vCloud Automation Center does not support IOPS consumption model. That’s the reason I’m almost 3 years participating on development of Cloud Infrastructure Abstraction software Virtix which allows this model including self-service portal, service catalog, monitoring, SLA measurement, reporting and billing.

    You can see quick introduction of Virtix at

    Virtix – IaaS Cloud Provider System – is in production almost two years and I have to say that both – customers and provider operations team are very happy mainly because clear expectations due to exactly defined and also reported SLAs. Another benefit is very quick performance troubleshooting and system also proactively recommends to customers what resource (CPU, DISK) is going to have performance issue so customers can simply go up or down via self-service portal.

    And last but not least sales team is happy because they can differentiate cost between vDisk with 50 IOPS hourly average and vDisk with 1000 IOPSes. That’s brings them good margin from customers with disk intensive workloads, good price for customers with average IO workloads, and low price for disk low activity workloads.

    It always surprised me that even big telco/IaaS cloud providers and VMware Cloud Architects disregard this problem.

    So thanks again for opening this topic and I absolutely agree with you on general need of IOPS cloud consumption model.

Leave a Reply