In a previous blog I suggested cloud computing could be defined using standardized characteristics. This is a “black box” approach in which we describe what we observe externally without knowing what’s “under the covers.” There are benefits to this approach:
- A single, all-encompassing, all-perspectives definition for cloud computing would not be needed;
- External behaviours are easier to observe than internal mechanisms and processes; and
- Cloud computing systems do not need to be “all or nothing.”
The key cloud characteristics in the emerging ISO/IEC cloud computing standards (which were based on the NIST work) are: broad network access, measured service, multi-tenancy, on-demand self-service, rapid elasticity and scalability, and resource pooling.
This should remind you of the parable about blind men describing an elephant!
Let’s look at an example:
Dropbox is a public cloud service that stores files “in the cloud.” Dropbox lets you bring your documents, photos, and videos anywhere and share them easily. Files can be up-to-date across multiple devices and can stay in sync across a team of people. Dropbox for business also offers administrative tools, phone support, and as much space as you need. Dropbox is available as a monthly subscription for business and free with a limited capacity for personal use. The Dropbox website states that over 4 million businesses are using Dropbox including Eventbrite, foursquare, National Geographic and Avison Young (a Canadian commercial real estate services provider).
Once a file is added to Dropbox, the file is then synched to Dropbox’s secure online servers. All files stored online by Dropbox are encrypted and kept securely on Amazon’s Simple Storage Service (S3) in multiple data centers located across the United States.
Dropbox generally meets the qualifications for “cloudiness” based on its features:
- It is easily accessed via the Internet network using a variety of devices (iOS, Android and Windows);
- Service delivery must be somewhat measured (for example, up to 100GB is provided for US$9.99/month/user) but is not strictly pay-as-you-go;
- Dropbox is a provider-owned application (i.e., it is a SaaS cloud service) and is presumably based on multi-tenant software (although this is an internal feature);
- Dropbox is available on-demand and self-service. You can sign up for a monthly or yearly billing plan and you can pay with a credit card directly or you can request invoicing.
- There are no restrictions on how fast you add or remove files (i.e., it is elastic and scalable); and
- It is not externally observable if the internal Dropbox resources are pooled.
Dropbox is one of many similar services including, for example, SkyDrive (soon to be renamed OneDrive), Box, Google Drive, Apple iCloud, and Amazon Cloud Drive.
If you define cloud computing very strictly, Dropbox would probably fail the “cloudiness” test: It is not fully pay-as-you-go, and there are no guarantees that multi-tenancy and resource pooling are being used. However, for all practical purposes, Dropbox is cloud computing and it would be considered to be providing cloud services.
Consider the following two scenarios:
- A provider’s application doesn’t fully meet all the cloud characteristics (it isn’t multi-tenant, for example) but it is implemented on Amazon AWS; and
- A provider’s application does meet all of the characteristics but is implemented using a “legacy” proprietary infrastructure for a single customer.
Can either of these be classified as cloud computing? Or, would both of them be cloud-based systems?