timeAn interesting announcement from Google at their recent I/O conference was of per minute billing for virtual machine capacity. As we work with AWS a lot, cloud billing is a subject close to my heart – and so this caught my attention. On the surface, per minute-based billing is attractive as there is some inherent wastage in the per-hour model used by AWS, Microsoft Azure etc. When estimating likely AWS usage charges for customer engagements (using the excellent AWS online calculator, which says it is still in beta testing but is actually rock solid), we take great care with the assumptions made about the number of hours that instances will be running for – the classic example of this is for dev/test environments, e.g. it’s quite easy to assume 5 days per week at 10 hours day. What we’ve found over time is that because customers and their development staff have typically been brought up on a diet of inefficient server use (i.e. make a guess what I need, add some capacity contingency on top, pay for them upfront, it’s a sunk cost, so I don’t care about how efficiently I use it), then there is not a strong culture of turning off environments when not in use etc. Also, we control dev/test environments using our SmartSentinel cloud management tooling – and you need to allow a few minutes for instances to startup/shutdown to ensure you don’t fall into an additional hour of cost (especially Windows instances :)).

So per-minute billing is attractive as it just cuts down on some over-billing when we “spill” into another hour of usage. But – and this is a big but – the logistics of IaaS billing are already complex enough that I don’t really want it to become more complex. We manage cloud billing for a number of customers, and in a 30 day month we have 720 distinct hourly measurement points where virtual machine usage charges are accrued (to keep it simpler – I’m ignoring other usage based charging, e.g. for storage etc, here). Even with this level of data, validation, reconciliation and invoicing of charges is already very complex. If that became 43,200 measurement points in a month, I think it would tip our finance team over the edge :). The complexity stems from the fact that AWS have some really attractive sophistications to their charging model – we like these features and don’t want to lose them, e.g.

  • the ability to reserve instances over a 1 or 3 year time period, i.e. make a commitment and share the cost advantage with AWS
  • the ability to choose 3 different types of reservation based upon likely usage levels, e.g. 100% on all the time, or rarely on (e.g. for a DR scenario)
  • the ability for a customer to get the benefit of their reservations across their various AWS projects/deployment, e.g. if across your AWS estate on average you always have 5 m1.large instances running, but no individual project has them running all the time, you can still reserve the instances and get all the price advantage as the reduced per-hour cost is shared across the entire estate
  • volume discounts
  • ..and that’s before I even get to spot pricing!

These pricing model sophistications are real differentiators and allow a much more tailored cost model for specific customer deployment scenarios – and I think they are more important than per-minute metering of usage. It’ll be interesting to see if AWS or Azure follow the Google lead (as tends to happen with IaaS pricing between the big boys). Cloud billing truly is becoming a big data problem – if this carries on we’ll need to run up an on-demand AWS EMR Hadoop cluster to do billing reconciliation :)…

CloudCampMar2011It’s been a very cloudy day today – first a bunch of Smarties went to the AWS Tech Summit for Developers and Architects, and then some of us also attended this evening’s CloudCamp which was held in the Crypt of St James church in Clerkenwell. The usual format was followed – a selection of 5 minute lightning presentations followed by a “unpanel” discussion with a panel made up of self-selected or randomly selected members of the audience. It’s always good to hear the deadly hush when Simon Wardley asks for “cloud experts” in the audience to put themselves forward for the panel :)

For me, the presentation of the night went to the 5 minute discussion about billing for cloud services – sounds a bit dull I know but it gave a great appreciation of the complexities of it, e.g. from a quick calculation he showed that an IaaS vendor such as Amazon Web Services will capture order of magnitudes more billing line items than even the very largest mobile telco billing platform has to cope with (as these are generally considered to be one of the highest volume billing scenarios). The headline was that the challenge is not fully solved yet, such as dealing with the scale of the problem whilst still giving cloud consumers access to understandable billing data that they can meaningfully interrogate.

If you’ve never been one, I absolutely recommend that you try a CloudCamp event out if you get the chance – they are the perfect antidote to cloud computing conferences – sales pitches are not permitted (everyone in the audience has a red card and send the speaker/panel list off), and there’s pizza and beer afterwards. What more could you want? As it was St Patrick’s Day, I thought I’d go for the traditional fare as shown in the photo.


Get every new post delivered to your Inbox.

Join 1,122 other followers