Introduction to cloud storage and cloud data management interface CDMI

Source: Internet
Author: User
Keywords Cloud storage cloud storage

Cloud storage is a concept that extends and develops in the concept of cloud computing (Cloud Computing). Its goal is to combine application software with storage devices to transform storage devices into storage services through application software. In short, cloud storage is not storage, it's a service. This service can provide virtual storage on demand on the network, also known as data storage as a service (Storage, DaaS). The customer pays for the storage capacity that is actually required to purchase. Any way to provide storage based on a fixed capacity increase is not cloud storage.

Cloud storage does not refer to a specific device, but to a collection of many storage devices and servers. Instead of using a single storage device, consumers use cloud storage to use a data access service that is brought about by the entire cloud storage system.

Cloud storage is divided into three categories: the first is the public cloud storage, compared to the well-known Dropbox is a typical public cloud storage, the second is the enterprise-class private cloud storage; The third is the hybrid cloud storage that combines the public cloud with the private cloud. A common feature of these types of cloud storage is that the client actively sends out management instructions and the server responds passively. It can therefore be considered a client-side data management system.

What is CDMI?

As information data exploded, cloud storage is taking on an increasingly important role in the IT marketplace with strong gestures. This is followed by the increasing challenges faced by cloud storage service providers in data storage, management, protection, and data mining. Therefore, the standardization of cloud storage management is imperative. To eliminate user confusion, industry fragmentation and related losses in market growth dynamics, the storage industry standards organization SNIA the first cloud storage standard CDMI published in April 2010.

CDMI is the acronym for the Cloud Data management interface (Cloud data Management Interface), which defines the database management interface specification for cloud storage. It developed a data exchange interface between the client and the Cloud data center, standardized the client data management system, and normalized how the client managed data center data.

Figure 1 shows the basic process of CDMI work. The client and the data center through the REST protocol, using a URI to uniquely any block of data and accessed by the HTTP protocol, so that the data block and URI form a one by one correspondence, thus forming the client Active data Center passive data management interface.

Figure 1. Basic flowchart of CDMI work

CDMI and common methods of data storage

At present, the common way to access cloud storage data can be summed up in the following three kinds:

The first is access to block storage and file storage through traditional data access protocols such as Figure 2. The CDMI specification can support such blocks (logical unit numbers or virtual volumes) and files (through a common Internet file system, a network file system, or a file system accessed by WebDAV) to store clients. The underlying storage space for blocks and files is abstracted into wrappers.

Figure 2. Traditional data storage methods

Another way is tablespace storage (table Space storage) (Figure 3). The CDMI specification can also be abstracted into simple table storage space for database operations, but the focus is on scalability rather than functionality. CDMI is not based on a virtualized association table (RDBMS) instance. Each RDBMS has its own proprietary interface, and CDMI does not even provide access to the virtual RDBMS in the cloud. SNIA explains: "Because of the speed of innovation in this field, we'd better wait for this type of cloud storage to evolve, rather than immediately standardize the functional interface of the storage." ”

Figure 3. Table Space data storage mode

The third type is the type of object storage that is currently maturing (Figure 4). CDMI the object as a unique project that can be accessed through the URI (Uniform Resource ID), and the data object is treated as an independent resource that can be created, searched, updated, and deleted (CRUD). With objects, wrappers can encapsulate other wrappers. To be precise, CDMI defines the functional interface in which applications create, search, update, and delete data components in the cloud. The client will be able to discover the functionality of the cloud storage service and use CDMI to manage the wrapper and its data. In addition, metadata can be set on wrappers and their data components through the CDMI interface.

Figure 4. Object-type data storage mode

CDMI can also be used in administrative and management applications to manage wrappers, accounts, secure access and monitoring/billing information, and even to other stores accessed by other familiar protocols such as SANS (storage lan), NAS (network-attached storage), FTP, WebDAV, and HTTP /rest. The client can see the functionality of the underlying storage and data services to understand this cloud service.

CDMI and RESTful

REST is defined as representational state transmits, which is the transformation of the representation layer status. In the RESTful schema, each URI represents a resource, and the client uses four HTTP verbs: Get to obtain the resource, the POST is used to create a new resource (can also be used to update the resource), put is used to update the resource, delete deletes the resource, operates on the server-side resources, and implements the Performance Layer State transformation ".

CDMI uses the Restful principle at all possible design places. Specifically, CDMI defines a series of RESTful HTTP operations for handling cloud storage operating systems such as allocating and accessing wrappers and objects, managing users and groups, implementing access control, adding metadata, providing queries, transferring data, and so on.

CDMI uses RESTful HTTP as an object to store data paths because RESTful's common architectural rules are simple and applicable to multiple platforms, easy to learn, and used by developers. The open interfaces offered by the major cloud platform products are very similar, but not exactly the same, by using RESTful to have a level of encapsulation that can reduce the burden on developers and users.

CDMI metadata

In cloud storage, data storage is an important part of how data is managed in the cloud in detail, and it plays an important role in reducing the complexity of data management. The SNIA storage industry Resource Domain model (SIRDM) also provides a framework for handling cloud metadata (Figure 5). As can be seen from the diagram, the metadata framework provided by SIRDM mainly includes three kinds of metadata: User metadata, storage system metadata, data system metadata. In the CDMI specification, the HTTP metadata is included in addition to these three types of metadata.

Figure 5. Cloud storage meta-data framework

User metadata is generated primarily by the CDMI client and is associated with the object. Data Objects and wrapper objects can be obtained by querying specific user metadata values. The name of the user metadata cannot begin with "Cdmi_".

The data system metadata is also generated by the CDMI client and is associated with a data object or wrapper object, which is used by the user to specify the requirements for the relevant data, which is processed by the Data Services section of the cloud storage.

The storage-system metadata is read-only metadata generated by the cloud storage System, which provides the client with access control information such as metadata.

HTTP metadata is only associated with the use of HTTP protocols in CDMI, such as protocol content size, type, etc., and is not much associated with the CDMI specification.

CDMI Object Model

Figure 6.CDMI Object Model

CDMI object model structure as shown in Figure 6, for the operation of the data store, the client only needs to know the wrapper object and the data object. The path implementation of all data needs to support at least one level of encapsulation and a certain number of data object groups. The client can emit a put request to the wrapper's URI, and then create a new wrapper with a specific name, the Key/value metadata in the graph is optional. Once the wrapper is created, the client can send a put request to create a URI for the data object. The client can obtain the actual data object and its numeric value through a GET request.

CDMI also defines a class of objects called queues that, when stored or read, can ensure that data is manipulated in a first-in, first-out order.

CDMI also provides support for domains, allowing administrator user rights and storage objects to be associated. Domains can allow the use of the user Authentication Mapping principle specification on ACLs, allowing special cloud-related privileges to be granted, allowing external users to authorize the system's agents, such as LDAP or Active Directory. Domains can be hierarchical, allowing a company-level domain to have multiple subdomains for departments or individuals. At the same time, the concept of domain can also be used for aggregating data, which is used for orders, monitoring, and metrics.

The wrapper resource in the CDMI object model and the URI associated with it allow the customer to discover the functionality provided by the cloud storage and the specific implementation of the CDMI. The client can see the functionality of the underlying storage and data services to understand this cloud service.

In a cloud storage system using the CDMI specification, each time a new object is created, there is a globally unique identifier corresponding to it, which we call the object ID. The object ID is a string of strings formatted as shown in Figure 7. The maximum length of the object ID is 40 bytes, the No. 0 byte is a reserved byte of 0, and the 1th to 3rd byte is the Enterprise's SNMP number (for specific details about the enterprise SNMP number, refer to [RFC2578] and Enterprise-numbers/enterprise-numbers), you can uniquely determine the cloud storage provider that generates this object ID, so the object IDs generated by different cloud service providers do not conflict with each other. The 4th byte is also reserved byte 0, the 5th byte indicates the length of the whole object ID, the 6th to 7th Byte is CRC, and the object ID integrity can be guaranteed by CRC checksum. The remaining bytes are opaque data bytes, and each data object has the only opaque byte of data generated by the cloud service provider.

Figure 7.CDMI Object ID format

Object IDs have a significant effect on the client's data access. As mentioned above, the client is accessed by Restful HTTP URI, the system has the URI of the root wrapper, and the data object's URI is the object ID connected to the URI of the root wrapper. For example, if the URI of a CDMI system's root wrapper is: Http://, then the URI that accesses a data object can be /root/cdmi_objectid/<objectid>.

Advantages and disadvantages of CDMI

CDMI's proposal helps users address growing data accessibility, security, mobility, and cost issues, enabling cloud storage clients and cloud storage providers to simplify all aspects of cloud storage. The client can discover the functionality of the cloud storage service and use CDMI to manage the wrapper and its data, while CDMI also provides a simple and generic interface for cloud storage users to help them find the right cloud storage service provider to meet their own proprietary requirements. For cloud storage service providers, CDMI provides them with a common interface to promote their unique features and help users discover their services.

Also for cloud storage service developers, the advent of CDMI makes their applications more broadly compatible. CDMI provides the only multi-vendor and industry-standard development interface for cloud storage application developers, ensuring that application developers can have compatible service providers, creating a potential user market for cloud application developers.

However, the slight disadvantage of the CDMI specification is that it does not provide a way to measure the quality of the cloud storage provider through reliability and quality, so it cannot absolutely prevent the existence of such risks as data loss. Of course, SNIA is only an industry association whose purpose is to facilitate collaboration among members so that customers can use the products of different SNIA members and switch between them as needed. It also has no right to stipulate that members must provide service quality assurance to their clients. However, it is foreseeable that SNIA should help customers switch from cloud storage providers adhering to CDMI to other providers.

Cloud Storage development trends

As a relatively mature storage method in cloud storage, object-type storage standard is becoming the trend of future development, its main feature is that the data stored in addition to the digital and tagged metadata, and further encapsulates the data attributes.

CDMI the object-based storage standard, the data can be flattened, the operation is simplified and the sharing is efficient. Based on such a standard, the development of storage will be from the large package to the small package development, has been developed into an object based encapsulation. This feature also confirms the close relationship between object cloud storage and the internet in a way.


As a new technology concept, cloud storage is changing the way of providing and using traditional storage, and also has a far-reaching impact on storage industry. CDMI as an industry-recognized storage interface standard, making cloud storage more convenient and able to migrate and manage data at lower cost across different cloud environments. It is believed that cloud storage will grow more mature under the CDMI specification.

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.