Wednesday 7 April 2010

What Do We Call This Cloud Storage Thing?

Not all cloud storage is equal, but it's even difficult to talk about those that are more comparable.

Does an API make it a platform? Are all APIs the same? Setting these questions aside temporarily, we come to a more fundamental question: What should we call cloud storage services, anyway?

The Case for "Platform as a Service" (PaaS)

Platform as a Service is variously defined, but it generally refers to a middle layer between infrastructure (hardware and software) and applications. Cloud platforms offer simplified interfaces for a new generation of applications that use web protocols and are often coded in languages like php, Java, .NET, Ruby, Python, and the like. Public cloud storage solutions like Amazon S3, Nirvanix SDN, and AT&T/EMC are fundamentally different from traditional storage infrastructure.

* Both control and access use a web services (REST) API rather than a traditional block or file storage protocol.
* These APIs are really programming interfaces, and libraries make them highly accessible to modern web-oriented languages.
* To varying extents, these systems do a lot more than just storing data - they can organize it, manage it autonomously, and even process it!*
* Cloud storage APIs often allow rudimentary programming of data control and disposition.
* Public services like these are multi-tenant and have much more extensive accounting and reporting than any conventional storage system.

In short, public cloud storage services match the letter and spirit of Platform as a Service definitions like the one at Wikipedia

The Case for "Infrastructure as a Service" (IaaS)


No storage system is a programming environment, and even the best public cloud storage service isn't anything like what is generally understood as PaaS. Find 10 people who think they know what PaaS is, and few will name Amazon S3 (the most visible public cloud storage service) in their examples. In fact, most won't even think of storage at all! Storage is infrastructure and always will be. The new REST access methods are great, but does an interface change the nature of a system? There are REST APIs to control old-school non-platform storage, too, and vendors might tack on API access at some point. That Wikipedia article about PaaS goes on and on about programming and application development, making scant mention of storage. It's not a platform, so it must be infrastructure!
The Case for "Something Else as a Service"

Storage really isn't PaaS or IaaS. Those definitions are all about compute, and storage is different enough to warrant its own definition. Whether it uses a web services API for control and access or uses old-school block or file mechanisms, storage as a service is a new business model for an old commodity. So what do we call it?

* NetApp and Iron Mountain like "Storage as a Service", abbreviated as "STaaS". But that's also used for "Software Testing as a Service".
* SNIA suggests "Data Storage as a Service", abbreviated as "DaaS". But that sounds awfully like "DAS" or "direct-attached storage", exactly the wrong connotation!
* How about we ditch the "XaaS" format entirely, as Sam Johnston suggested, and just call it something like "managed storage services". But that's exactly what the old managed storage providers called their offering a decade ago!

What do you suggest?

Call it Anything

In the end, it really doesn't matter what it is called. Cloud storage is here in many guises: Hardware or software products, purchasing models, and novel services alike. Soon, it is likely that the "cloud" moniker will lose its luster, too, but that won't change the core value proposition that some storage solutions bring to the table. Certainly this entire discussion will be forgotten as the market adopts some name or other for the thing. And that's for the best.

Join Us: http://bit.ly/joincloud

No comments: