What is Cloud Computing? Explained in Detail

We have seen in the last decades that data and information can be processed efficiently when computing and storage systems are combined through the concept of the cloud. Users can connect and run their applications on these large farms of computers that are connected to the internet. There has been tremendous improvement in internet speed which have resulted in the spread of data centers in different geographical location.

Currently, we see that all the big Information technology companies like Amazon, Google, IBM, and Microsoft provide these cloud services to the public. This is done in the same manner as companies are providing public utilities like water and electricity to the public.

What is Cloud Computing?

Cloud computing is a delivery mechanism of various services along with the needed servers, storage, database, software, analytics, and intelligence over the internet at a massive scale. Customers pay for the cloud services they used. This enables the organization to lower its operating cost and run its platform economically and at scale. Cloud computing is the storage and retrieval of data and applications from remote locations over the internet. It is the on-demand availability of data storage and computes power from the computer system resources without having to manage it yourself. In Cloud computing, we use the services provided and maintained by the third party to host the applications instead of hosting locally or on-premise.

Types of Cloud Computing

There are various types of clouds available in the market. Each of these cloud-based solutions has its own type, of service and evolved so that it can provide the right solution for the customer’s needs.

Cloud computing can be mainly categorized into three types according to the geographical location and availability of computing resources.

  • Private
  • Public
  • Hybrid Cloud

Public Cloud

Public cloud providers offer computing services and supporting infrastructure to anyone and can be accessible from the public internet. They are owned, operated, and managed by third-party cloud providers which maintain large data centers with thousands of computing hardware resources, servers, and storage, and provide their services to the public over the internet.

Some popular public cloud providers are given below.

  • Amazon AWS
  • Microsoft Azure
  • IBM Bluemix
  • Oracle Cloud
  • Alibaba Cloud

Private Cloud

A private cloud is a cloud environment that is specifically for a private organization or business. There are many large-scale enterprises that choose to keep their application and data in a private cloud for security, privacy, and regulatory reasons. Private clouds can be physically located in the company’s on-premise data center or also in the third-party service provider’s data center. All the services and infrastructure in a private cloud are maintained on a private network.

Those organizations wanting a private cloud have two options for implementing it.

  • Maintaining and Hosting their own Datacenters
  • Exclusively work with Cloud service providers to allocate certain resources for the organization.

Hybrid Cloud

A hybrid cloud is a combination of both public and private clouds that are bounded such that they can share data and applications with each other. Typical usage for this would be using a limited number of servers during normal time and increasing its capacity during peak use. Hybrid cloud gives greater flexibility to business and helps them to optimize their infrastructure and protect their data by providing stricter security.

Cloud Service Models

An enterprise or a cloud user can use the Cloud computing model in three ways.

  • PaaS or Platform as a Service
  • IaaS or Infrastructure
  • SaaS or Software as a Service

What is Platform as a Service (PaaS)?

In the PaaS model, cloud providers provide end clients with a computing platform as a service. The end client will get some servers or many servers as a cluster from the cloud provider. Servers in the data center will be maintained by the cloud provider. The end client will develop the process to deploy applications on top of these machines. Examples: Amazon AWS, Microsoft Azure, Google, Alibaba Cloud, and IBM cloud

What is Infrastructure As a Service (IaaS)?

In the IaaS model, cloud providers will provide and maintain computing infrastructures such as a server, storage space, and network as a service. This model is the most popular among the cloud service models, among the various cloud users and the vendors that will manage the IT infrastructure. It’s based on a pay-per-use model, in which end clients pay only for the computing resource they use. Examples: AWS, Azure, IBM Cloud, and Google Cloud Platform(GCP).

What is Software As a Service (SaaS)?

In the SaaS model, cloud providers will give access to software and its functionality over the internet through a web browser or web-based applications. Customers of this model have to pay the subscription fees at regular (Monthly or Annual) intervals. Examples: SalesForce, Dropbox, Microsoft Office 365.

Advantages or Benefits of Cloud Computing

Cloud computing provides several advantages in comparison to on-premise-based clusters. We will see the major advantages cloud computing provides.

  • Save costs in the Long run
  • Provides Flexibility
  • Disaster Recovery Provision out of the box
  • On-Demand Scalability
  • Provides Competitive edge
  • Unlimited Storage based on Demand

Cloud Computing Platforms

There are many cloud computing platform that exists today. An organization’s requirement or needs drives the choice of these platforms. Below are the top cloud platforms based on their market size

  • Amazon Web Services(AWS)
  • Google Cloud Platform(GCP)
  • Microsoft Azure
  • IBM Bluemix
  • Digital Ocean
  • Alibaba Cloud

Best Programming Languages for Cloud Computing

There are many programming languages supported by cloud computing platforms. This programming language differs from cloud platform by platform. Here we will see the top programming languages supported by most of the cloud computing platforms.

  • Java
  • Python
  • Scala
  • ASP.NET
  • Golang
  • JavaScript
  • React/Angular Framework
  • Ruby

Reference

https://www.webopedia.com/TERM/C/cloud_computing.html