Cloud Data Management Interface
The Cloud Data Management Interface--better known as CDMI--is a SNIA standard that specifies a protocol for self-provisioning, administering and accessing cloud storage.[1]
CDMI defines RESTful HTTP operations (see REST) for assessing the capabilities of the cloud storage system, allocating and accessing containers and objects, managing users and groups, implementing access control, attaching metadata, making arbitrary queries, using persistent queues, specifying retention intervals and holds for compliance purposes, using a logging facility, billing, moving data between cloud systems, and exporting data via other protocols such as iSCSI and NFS. Transport security is obtained via TLS.
Capabilities
Compliant implementations must provide access to a set of configuration parameters known as """capabilities""". These are either boolean values that represent whether or not a system supports things such as queues, export via other protocols, path-based storage and so on, or numeric values expressing system limits, such as how much metadata may be placed on an object. As a minimal compliant implementation can be quite small, with few features, clients need to check the cloud storage system for a capability before attempting to use the functionality it represents.
Containers
A CDMI client may access objects, including containers, by either name or object id (OID), assuming the CDMI server supports both methods. When storing objects by name, it is natural to use nested named containers; the resulting structure corresponds exactly to a traditional filesystem directory structure.
Objects
Objects are similar to files in a traditional file system, but are enhanced with an increased amount of and capacity for metadata. As with containers, they may be accessed by either name or OID. When accessed by name, clients use URLs that contain the full pathname of objects to create, read, update and delete them. When accessed by OID, the URL specifies an OID string in the cdmi-objectid container; this container presents a flat name space conformant with standard object storage system semantics.
Subject to system limits, objects may be of any size or type and have arbitrary user-supplied metadata attached to them. Systems that support query allow arbitrary queries to be run against the metadata.
References
- ^ "Cloud Data Management Interface". SNIA. Retrieved 26 June 2011.
External links
- ISO-8601 International Standards Organization, "Data elements and interchange formats -- Information interchange -- Representation of dates and times”, ISO 8601:20044
- ITU-T509 International Telecommunications Union Telecommunication Standardization Sector (ITU-T), Recommendation X.509: Information technology - Open Systems Interconnection - The Directory: Public-key and attribute certificate frameworks, May 2000. Specification and technical corrigenda -
- POSIX ERE The Open Group, Base Specifications Issue 6, IEEE Std 1003.1, 2004 Edition