In any system, resources are finite. There is always a limitation to what is available. However there’s also a truism that states if resources are free then they will be consumed at an infinite rate. So it is with storage. Someone has to pay for the storage resources that are placed on the floor. If customers are not charged in some way for their consumption of storage, then they will continue to consume resources ad infinitum. The solution is to implement chargeback or, to be more precise, billing.
It’s worth pausing for a moment and discussing the terms Chargeback and Billing. When computing was first made available as timesharing, customers were billed for their usage of the shared system. The billing unit may have been time, CPU resources or some combination of metrics that represented utilisation. Mainframe resources were so expensive that there had to be an efficient charging mechanism. The concept of billing is something that was intrisically built into the mainframe design and even to this day, resources can be tracked using records produced by SMF (System Management Facility) and reported on through RMF (Resource Measurement Facility). So billing represented a method of charging for usage that wasn’t directly related to the underlying hardware.
Chargeback implies a different methodology where the direct cost of delivering the service is charged back to the customer. This can include people costs, but typically hasn’t, only covering the hardware provided itself. Chargeback has its place, but when looking to develop a service, isn’t as flexible as billing. All too often, chargeback is tied to a poorly implemented service catalog (or non-existent one). Whilst the customer may pay for their equipment, there isn’t any flexibility when it comes to hardware replacement as the customer is aware of the technlogy used to deliver their service (and may be unwilling to move to new, untried hardware). Here are a few additional chargeback/billing combinations that could be implemented:
- No chargeback — IT has a budget and they provide the resources to the business. When resources are exhausted, the business have to justify or provide additional funds.
- Consumption-based — customers are charged directly for their usage.
- Shared-usage — customers are charged a share of the costs, not directly related to their usage, but perhaps size of business unit.
- Dedicated — customers are charged the whole cost of acquiring the technology. Ths doesn’t work well for shared environments.
- Service-based – customers are charged for a service provided; this isn’t directly related to the specific technology in use.
Whether you are implementing chargeback or billing, there needs to be a good reason for implementing. Here are a few for consideration.
- To Reduce Costs — If resources appear to be free they will be consumed inefficiently; charging for usage helps controls this.
- Improved Utilisation — Being charged in proportion to your usage makes customers validate whether they really need the storage they are using.
- Improved Efficiency — this goes hand in hand with utilisation, however charging customers for storage can enable tiering to be implemented more efficiently.
- Charging Fairly — there will always be sensible customers and abusers (the broadband market shows us that).
- Manage Demand — It is possible to make charges both time and planning dependent (more on that later).
- Manage Tech Refresh — Abstracting cost and service catalogue from the hardware means new/cheaper/efficient technology can be introduced more easily.
What’s clear from the above points is that chargeback/billing can be used to change customer behaviour; users can be incentivised to be more efficient or to use cheaper technology. Structured correctly, the overall cost of delivery of storage can include refresh funding, so as old devices are decommissioned, the cost of data migration is part of the overall charge. I see this as one of the major issues with the way customers pay for their technology; the overall costs in the lifecycle of deployment, operation and refresh simply aren’t considered.
What’s the best way to charge? Here are a few typical metrics:
- Per GB of storage used.
- Per port on the SAN fabric.
- By Tier of storage.
- By contention ratio of storage port (higher cost for fewer hosts on a shared port)
- Charge for replication (both local and remote)
- Charge for deduplication (which may be a lower cost)
- Charge for thin versus thick provisioned LUNs
- Charge for SAN network bandwidth
- Charge for multi-path software
- charge for online backup copies
- charge for offline backup copies
Whatever metrics are used, the key intent is to charge for customer use of a service. This needs to be abstract enough to be disconnected from technology, so charging for fibre channel ports may be too prescriptive; the cost may be described as “to be connected to the SAN” in general, providing a blended charge that would cover iSCSI, Fibre Channel or FCoE connectivity.
Implementing a Chargeback Process
As part of the implementation process, it’s worth considering having billing/chargeback principles established. These can be provided to the customer. Here are some examples:
- The charging model will be based on resource consumption of each user independently (e.g. user changing their utilisation doesn’t affect another user)
- Charging costs will be reviewed and changed on an annual/bi-annual/quarterly basis from 1 Jan 200x
- Charging will be based on storage in use on 28th day of each month
- Charging will/will not be based on utilisation (rather than allocation)
- Charging will be attributed at the host/server/LUN/file level
- A target of 100% cost recovery is the target goal
- Charging may result in an IT surplus/deficit from year to year, but will be a non-profit business
- Billing charges will be based on the published “Storage Catalogue”
- Users of equipment classed as legacy will be notified 6 months in advance of technology acquiring legacy status
- IT/Storage Team will strive to deliver price stability and/or reductions year-on-year
- Chargeback will be implemented as evolution rather than revolution
The internal cost of delivery of storage will include:
- Hardware and software costs
- Additional feature licences
- Power/cooling/space (environmental costs)
- People costs
- Network costs
- DR costs
There may be more, depending on how your technology is delivered (for instance managed data centres), but what’s essential is to baseline what it takes to deliver the service. Quite simply the process would be:
- Identify service cost components (as above)
- Identify consumption metrics (service charging units)
- Measure use
- Model costs based on consumption metrics
- Bill customers.
Other considerations, which I’ll save for future posts are:
- Standards — how they are important to chargeback
- Measuring tools
- Measurement interval
- Incentivising customer behaviour in favour of technology refresh
- Outsourcing some components
- Determining the customer
- Forecasting/Capacity Planning
There’s lots more to come, feedback on the article so far is very welcome.