Obscure, vague and I wonder; more expensive?
When I check out both Amazon and Azure I always get confused (sort of) when checking their price model. In some way I can agree that it looks fair, after all; you only pay for what you're using and its cut down to fair amounts (pay per GB based on maximum amount (first 1TB, Next 49TB, etc.) or when it comes to instances you pay per hour based on the instance (due to the article I'm focussing on Azure here, but the same goes for Amazon obviously).
Problem is that its very hard to keep track of it all so in a way you're depending on their way of measurement. I had this with my previous hosting provider; one month the bills were normal, then all of a sudden they billed me with for extra traffic while my stats told me otherwise. After 2 months I wrote them an e-mail about it and what do you know? Obviously the error was with me, according to them, but in the mean time I got normal bills again 4 months straight. Yeah, right....
I think that in many cases you'll be better of using a 'regular' hosting provider (if available of course) than these cloud based services. First they sell the name "cloud" while in fact its not as cloudy (redundant) as it should / could be (as we've seen in the not too recent past) and in the longer run I get the feeling you'll end up paying more in comparison.
Here in Holland you can get a 4 Core Xeon, 8GB memory, 300GB storage, 10TB traffic/month, 1 - 3 IPv4 addresses, IPv6 addresses, SMS monitoring and 1 snapshot for approx. E 50,- / month. When using a free OS (Linux, BSD) then there are no extra charges, for Windows you'll have to cover licensing too (approx. E 7,50 / month).
Azure virtual machine? 1 core with 1.75 GB memory starts at approx. E 49,90 / month (E 0,0671 / hour).
Amazon? Well, that shows another issue; the trouble you need to undertake before you finally get a good overview of solid prices. So I'm finally at the EC2 pricing page (link to Amazon): Standard on-demand instance, "Medium" : $0.120 / hour. Say one month: $89,28 (24hrs / 31 days), or E 68,-.
So; what's "Medium" ?
For that you need to go to another page; the EC2 instance types overview (link to amazon) where you'll learn that "Medium" is actually: 3.75Gb memory, 1 virtual core with 2 computing units, 410Gb instance storage, moderate performance (?).
You don't get rough numbers but at the end of the page its briefly explained yet still vague: "For many applications, low or moderate I/O performance is more than enough. However, for those applications requiring greater or more consistent I/O performance, you may want to consider instances with high I/O performance.".
And then we're told into how cool high performance is ("High I/O instances can deliver in excess of 100,000 random read IOPS and as many as 80,000 random write IOPS for high performance NoSQL ") but what about moderate and low ? Well, I guess those aren't interesting enough to share the details.
I also strongly get the feeling that both Amazon and Microsoft doesn't really expect (hope?) people to dive in so deeply but instead solely focus themselves on virtual low prices instead.
But then again... Looking back at my regular hosting example above; E 57,50 / month for a Windows server one can also state that I'm paying E 0,0772 per hour. I pay "much more" than Azure (E 0,0671 / hour) but also get more in return.
Sure; I can't terminate per hour / day but only on a per month basis. Thing is; how often do you need to terminate your servers on a per hour basis? When your money is running out perhaps? But like; wasn't that something you couldn't have seen coming ?