[occi-wg] Is OCCI the HTTP of Cloud Computing?

Richard Davies richard.davies at elastichosts.com
Tue May 12 05:59:19 CDT 2009


> > You're focusing not so much Atom the RFC4287 data format, but AtomPub
> > the RFC5023 publishing protocol as implemented notably in GData and
> > lots of other places, and do generic Web-resource CRUD where the
> > resources happen to represent cloud infrastructure objects. *Thus you
> > outsource most of the work of CRUD specification. *Then, you layer
> > cloud-specific stuff on top of that. *Then collections of servers and
> > clusters and networks and so on are perforce represented as Atom Feeds.
> >
> > Is that the essence of it? *-Tim
> 
> Essentially, yes - at least a subset of it (I'm not sure that service
> and category documents are supported nor required by GData to date) with
> simple extensions for querying, concurrency/performance and any other
> implementation issues we come across on the way. I've been focusing on
> Atom because that's how the data is rendered - AtomPub as you well know
> tells us how to discover and manipulate the Atom resources on the server.

My biggest concern about the GData-style approach is not XML vs. JSON syntax
('angle bracket vs. curly brackets), but whether pulling in the
GData/AtomPub meta-model is worth it to outsource the CRUD specification.


My example of a simple JSON rendering really has two differences from the
GData-XML approach:

1) [Less significant] JSON vs. XML syntax ('angle brackets vs. curly
brackets') - a trivial decision, as demonstrated by the equivalent XML
http://www.ogf.org/pipermail/occi-wg/2009-May/000526.html

2) [More significant] Very light meta-model - completely specified at
http://forge.ogf.org/sf/wiki/do/viewPage/projects.occi-wg/wiki/SimpleJSONRendering
versus pulling in the GData meta-model to wrap the cloud infrastructure
objects.


I note that all existing cloud APIs (Amazon, Sun, GoGrid, ElasticHosts,
etc.) have similarly specified their APIs directly over HTTP rather than
over a pre-existing meta model.

Whilst Sam is right that GData libraries do exist for many platforms, they
are not universal and do run to tens of thousands of lines of code*.

Should we really be pulling in a dependency which is this large when we have
a clear choice not to?

Richard.


* Within http://gdata-python-client.googlecode.com/files/gdata-1.3.1.tar.gz
  "wc -l src/{atom,gdata}/*.py" gives 13.7 kloc.

  Within http://gdata-java-client.googlecode.com/files/gdata-src.java-1.31.1.zip
  "wc -l java/src/com/google/gdata/*/*.java" gives 33.9 kloc



More information about the occi-wg mailing list