Interop NY: Cloud Language: The Taxonomy of On-Demand Computing

September 17th, 2008 by Valerie Barber

IMG_3508 This session on cloud computing was presented by Peter Laird of Oracle Corporation. Peter is a lead architect for the WebCenter product family. He previously worked with BEA as an architect for SaaS efforts. He also blogs at Laird On Demand.

Defining Cloud Computing

IMG_3506

Cloud computing is a very active community. The Google Group gets 600 posts per month and many bloggers are covering the space. However, “cloud computing” is impossible to define in a way that satisfies everyone (or even most). Cloud computing is not alone in this controversy, consider the definition and meaning of “Web 2.0″, “mashups” or “RESTful architecture”. All of these terms are relatively recent. According to Google Trends, these terms became popular to the general public sometime between 2005 and 2007:

  • Web 2.0 - often confused with RIA, AKA Social Computing, Long-Tail Apps, Crowdware (2005 by O’Reilly Media)
  • Mashup - made popular by Google Maps, AKA Composite/Situational Apps. (2005)
  • REST - Has a strict definition, but many don’t understand it and abuse the term. (2006 by R. Fielding)
  • Cloud computing - collides with many other terms, such as SaaS, Grid, Utility, PaaS, etc. (2007)

The definition of cloud computing is in progress:

There’s a Darwinian evolution of the exact definition of cloud computing running around. We’re about a country mile away from “knowing when I see it”, which is excellent progress. The cloud to everyone’s silver-lining has enough material to write a 3 volume desktop reference at this point. - Michael Cote, June 2008

Definition #1 - “Cloud computing is the realisation of Internet (”Cloud”) based development and use of computer technology (”Computing”) delivered by an ecosystem of providers. - Sam Johnston, July 2008

Definition #2 - “Cloud computing = network computing. I love the idea of cloud computing, the next evolution of the most network intensive architecture possible, but one that if it works well, is transparent. It’s all about the transparency.” - Douglas Gourlay, Cisco, May 2008

Definition #3 - “There seems to be a group myopia around so-called “cloud computing” and its definitions. What we’re really talking about are “cloud services” of which, “computing” is only a subset…Cloud services are not SaaS. They are far more akin to web services…” - Randy Bias, neoTactics, May 2008

(Anti-)Definition #4 - “Note that I refer to cloud services, not to the could. I am not interested in defining cloud as a term, because I don’t think it’s very useful. For those of us in the distributed computing’s pace

The Working Definition (Winner!):

“…the notion of providing easily accessible compute and storage resources on a pay-as-you-go, on-demand basis, from a virtually infinite infrastructure managed by someone else. As a customer, you don’t know where the resources are, and for the most part, you don’t care. What’s really important is the capability to access your application anywhere, move it freely and easily, and inexpensively add resources for instant scalability.” - Mitchell Crandell, Rightscale, June 2008

Taxonomies of the Cloud Space

Taxonomies are useful to provide insight into a market. It classifies a multitude of players into a smaller bucket.

Andreessen’s Platforms - September 2007

Provided an early taxonomy model for emerging cloud platforms

Platform being a system that can be programmed

  • Access API - platform that provides web service endpoints
  • Plug-In API - platform invokes your code, that you have deployed remotely
  • Runtime Environment - your code runs inside the platform’s process space.

Mehta 11 Layer Stack, April 2008

  1. Facilities (space, power, cooling)
  2. Network
  3. Hardware (e.g. servers Amazon EC2 runs)
  4. Hardware virtualization (e.g. Xen for EC2) - optional
  5. O/S (e.g. Linux)
  6. Systems Management (e.g., tools to manage EC2 instances)
  7. Application Middleware (e.g., MySQL on EC2)
  8. Application Code
  9. Application APIs / Web Services
  10. GUI for Application
  11. GUI for Application Development / Customization

Croll Cloud Stack, June 2008

7 layer stack within Turnkey app and Generic Platform.

Turnkey app

  • SaaS
  • Extensible app
  • Generic IDE
  • Constrained APIs
  • App Cluster
  • Virtual Data Center
  • Virtual Servers

Generic Platform

The bottom of Alistair’s stack includes “root access “style compute clouds.

Robert Anderson, July 2008

3 layer stack

  • Software (SaaS)
  • Platform (PaaS)
  • Infrastructure (IaaS)

This is the model taxonomy for this session.

Related Concepts and Terms

  • Infrastructure as a Service (IaaS), Hardware as a Service (HaaS) are synonyms to cloud infrastructure.
  • Virtualization
  • Hosting
  • Autonomic computing
  • Distributed computing
  • Grid computing

Cloud Applications

  • SaaS
  • S+S (Software+Services)
  • Managed Service Provider (MSP)

Popularity: 5% [?]

September 17th, 2008

2 Comments Add your own

  • 1. David, Business Technology Roundtable  |  September 19th, 2008 at 6:13 pm

    Michael Cote’s point about a “Darwinian evolution” made me smile — it’s certainly progress from the prior religious evangelism on this topic, from the not too-distant past.

    Reply

  • 2. Julia  |  September 22nd, 2008 at 4:00 pm

    David - I think the “Darwinian evolution” comment is more appropriate than ever now. To be sure, there’s evolution here but there’s also a concept of survival of the fittest too. Just got back from Vegas - where VMworld and the 451 Group’s ICE summit were going on. Some pretty heated arguments - especially on definition of cloud. Fun to watch though… :)

    Reply

Leave a Comment

Required

Required, hidden

Some HTML allowed:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Trackback this post  |  Subscribe to the comments via RSS Feed