CDMI Support to Swift
The SNIA CDMI is an object store interface[http://
[update 1/21/11] RFC [http://
Goal : The goal is to make a feature-rich extensible data cloud control plane layer for SPs as well as for enterprises to build private data clouds; and because of the same interfaces, the enterprises can span and cloudburst as and when needed.
+ At which level should we implement the server: independent server, middle-ware, or within current servers (hybrid architecture)?
+ Good idea to develop and leverage a common middle-ware layer in order to support further APIs (WebDav?) (rf. b ii)
A few ideas:
a) Logistics Pragmatics
i) Deliver basic framework with put, get & delete for Bexter ?
ii) Add more features working with users/discussion at dev summit
iii) Also compare the cloudfiles vs. CDMI/S3 and see what these add to cloudfiles and if the extra features are interesting
[update 1/21/11] Read through CloudFiles API doc (http://
From a first glance, CDMI lacks CDN; CloudFiles lack object metadata, capability & of course, queue.
So, IMHO, 70%-80% is a direct mapping, CloudFiles even has JSON !
Will dig deeper ...
i) REST framework & router -> Django or Pylon or Piston ?
ii) Good idea to develop and leverage a common middleware layer, developed for the S3 API ?
iii) AuthC/AuthZ can come from DevAuth or SwAuth frameworks. Would need list of groups, users and so forth when security is enabled.
c) Data Services
i) Compression, dedup, encryption, CAS, content redundancy (infrastructure redundant replication ie multiple copies with no common infrastructure dependency),...
ii) Metadata search of objects - for example for storing health records with a rich set of metadata and then the capability to search/retrieve based on the metadata. This will, of course, require different storage and interface mechanisms for metadata and the actual data
d) If the underlying mechanisms to support the data services are not available, we will add them to swift
* Blueprints in grey have been implemented.