The rate of innovation amongst cloud computing providers is mind boggling – developments are building on each other (for example look at the ecosystem which has sprung up overnight around Amazon Web Services) and advances are being made at a furious rate.
Accordingly, the recent drive for ‘cloud standardisation’, while inevitable, is ill-conceived and premature. Standards bodies are typically not fertile grounds for agile innovation and involving existing consortiums like IEEE and W3C at this early stage could well be like throwing a wet blanket over everything. What we need are simple, rugged, market tested interfaces defined by the innovators in each area (virtualisation, storage, services, etc.) and indeed patterns and defacto standards are already starting to appear.
For example for cloud databases we are seeing collections of entities with attributes and values emerging and before long multilingual libraries should rein these interfaces in to a point where a reasonable common ground can be codified as a standard. Trying to do this the other way around is putting the cart before the horse and will surely end with bad standards (some would say WS-* fits this category).
3tera were originally spearheading the movement and they just happen to have Cloudware(™) and it’s catchy “Cloud Computing Without Compromise™” to solve the standards ‘problem’ (fortunately “the architecture is vendor agnostic so that third party vendors, not just 3tera, can participate in the system“). While ‘several small cloud-computing firms including Elastra and Rightscale are already on board with 3Tera’s standards group‘, the big fish were understandably less enthusiastic, for example Amazon being ‘open to the idea [of creating a cloud computing standard] if we can do so in such a way that enables us to continue innovating quickly and delivering on [our] focus for our customers‘.
The Enomaly guys have been firing up about standards too but have since pulled their heads in a bit and released a nice looking API for their virtualisation platform which is more in line with how the standards process ought to work. That said, the scope of their ‘The Standardized Cloud‘ post is a little scary (covering all sorts of details that cloud computing users should never even have to think about) and it’s unsurprising one of the first responses was already ‘quibbling on the details’. There’s some evidence that grid computing previously ventured down this road too, and the seeminly endless WS-Man thread that drilled down into the bowels of SNMP ought to give pause to even the most committed standards junkie.
Note that I’m not the only one who thinks someone’s getting ahead of themselves. Let’s not forget too that most of the banter is coming from people selling virtualisation management products which are but a very small piece of the cloud computing puzzle. Let’s all just calm down a bit and let the dust settle – there’ll be plenty of time for writing standards soon and in the mean time some juicy opportunities for those who can bridge the gaps.
Anyway here’s a post I sent a few days ago on this topic:
I’m glad I’m not alone in thinking standardisation efforts are premature. I have grave concerns about trying to toss a standardisation blanket over all the innovation currently taking place at a furius rate and believe that doing so now would be at best unnecessary and at worst dangerous (we all know what happened to grid computing when they started wandering down this path – see the WS-* thread if you need an example that’s closer to home).
This is not to say I’m anti-standards; quite the contrary (I’m currently serving as an ‘invited’ expert for W3C, have contributed to OASIS most recently on ODF, etc.), it’s just that we don’t yet have enough cloud users, enablers & providers to churn out sensible ones, and we’re doing just fine without them (in fact the absence of such standards creates opportunities for companies like Enomaly to act as translators in the interim).
As a concrete example, take data stores (SimpleDB, AppEngine’s datastore, MS SSDS, etc.) – we’re just now getting to the point where patterns are starting to emerge which could result in some form of standard interface, but this will best be done by putting the users, enablers and providers in a room together and seeing what comes out.
Compute cloud interfaces are also quite similar, and have common functions with legacy virtualisation that should be addressed. Ditto for storage. But in each case it is the people directly involved in these areas who should churn out standards, when a statistically significant quorum has been achieved.