Cloud Computing

An Introduction to Cloud Computing

An Introduction to Cloud Computing

Introduction to Cloud Computing

Cloud Computing is a buzzword across the industry these days. With a few years of experience in Cloud Computing, I have come across two distinct types of people due to the emergence of Cloud Computing. One who understands Cloud very well and knows when to use Cloud and why? There is another set of people who do not quite understand Cloud but still want to move to Cloud, considering its hype, and these people do not want to be left behind in the Race. With this set of experience, I thought to explain Cloud Computing in some simple language.

What is my understanding of Cloud Computing?

If you go to Wikipedia or Gartner, or Google, you likely come across many definitions or different opinions.  So, what is the real Cloud Computing definition? As a technologist, I believe if you just want to talk in theoretical ways, you should go with the definition provided by NIST, but do you think it’s easy to understand? Even if you read the definition, does it mean every virtualized or web application is Cloud Computing? If your answer is “No,” then how do you define an application as a Cloud Service?

I started with lots of questions, but if you have noticed, I switched to one word very carefully. It is “Cloud Service”. If you want to understand (Again, I am not using the  word define as I am not providing and definition) Cloud Computing, the easiest way is

“Any business service that is elastic, available on-demand, accessible everywhere, uses resource pooling, and follows a pay-as-you-go model qualifies as a Cloud Service.”

Let’s break this down step-by-step for better understanding:

Elasticity

The service should be able to scale up or down automatically based on demand, ensuring optimal performance without manual intervention.

Available On-Demand

The service must be readily available whenever required, without needing human interaction with the service provider.

Accessible Everywhere

The service should be accessible from anywhere, typically via the internet.

Note: This mainly applies to Public Clouds. Private, Hybrid, or Community Clouds may have restricted access depending on organizational controls.

Resource Pooling

The service should support multi-tenancy, where computing resources are dynamically allocated and reassigned based on demand, ensuring optimal utilization for multiple clients or users.

Pay-As-You-Go Model

Charges should be based on actual usage or consumption.
This requires a reliable measuring or metering mechanism to track and bill resources accurately.

Introduction to Cloud Computing

Now, with a clear understanding of the five key tenets of Cloud Computingon-demand self-service, broad network access, resource pooling, rapid elasticity, and measured service—let’s explore how they apply to business services.

A business service in the cloud can encompass a wide range of offerings, including application hosting, infrastructure, CRM, collaboration tools, email, data processing, databases, and more.

To connect the dots, let’s look at a few simplified examples that illustrate how these tenets work in real-world cloud services:

1. Infrastructure as a Service (IaaS):
A business service offering infrastructure on demand, backed by the five core cloud tenets, is a classic example of IaaS.
Examples: Amazon Web Services (AWS), Google Compute Engine, Microsoft Azure, Rackspace.
These platforms provide scalable virtual machines, storage, and networking resources.

2. Email as a Service:
When a provider offers email services to multiple users with scalability, self-service, and a usage-based model, it qualifies as a cloud-based business service.
Examples: Gmail, Outlook, Yahoo Mail.
They serve millions of users while maintaining performance, reliability, and accessibility.

3. Collaboration as a Service:
These platforms enable users to communicate and share information on demand, with elasticity and usage-based pricing models.
Examples: Cisco Webex, GoToMeeting, Microsoft Teams, Google Meet.
Such services demonstrate cloud capabilities through seamless collaboration and real-time communication.

4. Storage as a Service:
Elastic storage that expands and contracts based on usage is another cloud-powered business service.
Examples: Dropbox, Google Drive, Microsoft OneDrive, Flickr, Instagram.
These tools allow users to store and access data from anywhere, with built-in scalability and cost efficiency.

Requirement:
A user needs a Travel Service (Business Service) to travel from one place to another.
This service can be achieved either by the user owning a luxurious car and driving to the location, or the user does car pooling with someone, or by just hiring a taxi. I put each into three categories. Note: If your sole purpose is travel, you do not care how you travel.


Organization Data Center
(The user owns a luxurious car)You own & manage everything. You have the best of the product, but it’s costly and not scalable when you have more than 5 travellers.

Third-party provider Service
(The user does car pooling)You do not own, but you share resources with someone. This is cheaper, but you have to pay for this even if you use it or do not use. This is also not scalable when you have more than 5-6. It’s also not on-demand, as it depends on the owner of the car when service is available.

Cloud Service
(The user hires a taxi)Your sole purpose is travel. This is scalable as you can call as many taxis as possible. This is on-demand, as whenever you need, you call for it. It’s cheaper as you pay for only the amount you travel.

I hope the above explanation helps you understand Cloud Computing better.

By the way, the five tenets we’ve discussed are not arbitrary—they are the five essential characteristics of Cloud Computing as defined by NIST (National Institute of Standards and Technology). These core attributes play a pivotal role in identifying and defining what truly qualifies as a Cloud Service.