Introduction to Cloud Computing
Cloud computing is a way of accessing compute and storage systems without actually owning and doing active management of the resources. In today’s world, compute and storage demands are very dynamic hence purchasing, maintaining and upgrading systems could be a huge investment of time and money. Companies like AWS (Amazon Web Services), Microsoft Azure, Google Cloud Platform (GCP) provide compute and storage servers on-demand and charge for what you use. These cloud services can be used to host a static website, e-commerce store, company’s internal data, etc. It has proven to be extremely useful for startups where compute resources can vary largely over time.
Cloud Computing can be classified in terms of the following models:
- Service Models
- Deployment Models
After learning about the Introduction to Cloud Computing, Now we are studying about the Service models, which are classified in terms of abstraction provided to the end-user.
SaaS (Software as a Service)
In the SaaS-based model, all the compute and storage needs are met by the cloud service provider; the user only needs to upload and download data. Maintenance, downtime, upgradation, security are all taken care of by the service provider.
PaaS (Platform as a Service)
In PaaS user manages applications along with data. Lot of times, the user wants to launch and maintain their own applications over the cloud, which is where PaaS comes into the picture. All the Hardware, Networking, O/S needs are met by the service provider. The user can use any programming language of choice. PaaS services are cheaper compared to SaaS.
IaaS (Infrastructure as a Service)
In IaaS based service hardware, Virtualization and networking services are provided by the vendor while the user takes care of OS, applications, and data.
To give a brief analogy between different service models, we can take the example of Pizza ordering. SaaS is similar to ordering Pizza at home; in PaaS you visit the restaurant and eat there, while in IaaS, you make Pizza yourself using bread and sauces.
In the above section, we have already learned about the introduction to cloud computing and about service model, now we are going to know about the three kinds of Deployment models: Public Cloud, Private Cloud, and Hybrid Cloud.
1. Public Cloud
- Service Provider makes resources such as Compute, storage, and applications available to the general public over the internet.
- Any user can log in and use these services.
- You pay for the number of resources you use.
- Users have lesser control over their data.
2. Private Cloud
- The vendor offers hosted services to fewer users with firewall security.
- The private cloud minimizes security issues.
- It provides greater control over the data.
- Typically used by organizations with a focus on data security.
3. Hybrid Cloud
- Hybrid cloud computing, as the name implies, uses a combination of private and public cloud services. Certain services are hosted with private cloud while others with the public cloud.
- With hybrid cloud service, enterprises can keep crucial data into private space and other data into public space, thus leveraging the best of both worlds.
Applications of Cloud Computing
As we studied the Introduction to Cloud computing to know more about Cloud computing, Let’s have a look at the applications of Cloud computing:
SalesForce: Sales Force provides CRM (Customer Relationship Management) services and EPR (Enterprise Resource Planning) on cloud infrastructure and charges on use basis. The software is developed and maintained by Salesforce and it also provides add on services for premium users.
Gmail: We know Gmail use for personal emails. But Gmail also provides its infrastructure to businesses with their business email-id with additional features.
Google Apps: Applications like Google Sheets, Google Drive allow cloud storage and computing for the general public.
Video Streaming Services: Several Video streaming services such as NetFlix, Amazon Prime, Hotstar rely on cloud computing storage to stream personalized data to billions of users simultaneously.
Application Development: With more and more companies providing their services via Mobile Apps, companies like Zoho Apps allow users to create apps over the cloud and make modifications. Wix and WordPress provide the same service for website creation and hosting.
Advantages and Disadvantages of Cloud Computing
Here we are going to discuss some pros and cons of Cloud Computing:
Advantages of Cloud Computing
- No need to buy to a stack of servers thus avoiding high Capital expenditure.
- Easy to scale: As demand varies with time number of servers can be easily changed.
- As more data gets generated, provisioning can be made to flush old data or add additional space dynamically.
- Monitoring and maintenance of servers are taken care of by the vendor.
- Environment benefits as resources are being shared among different users.
Disadvantages of Cloud Computing
- For a few large enterprises with huge amounts of data being generated every hour, cloud computing can prove to be very expensive, it makes senses to own and maintain compute and storage resources.
- For some applications, internet bandwidth can be a bottleneck where user requested and transmitted can large time to come online.
- Customization of applications is limited, the cloud-based app may not exactly meet your needs.
- If vendor decides to stop a service, several users are affected and have to look for alternate options
Cloud Service Providers
Following are major cloud service providers Amazon Web Services (AWS), Microsoft Azure, Google Cloud Platform (GCP), IBM Cloud, Digital Ocean
1. Amazon Web Services (AWS)
Among different cloud providers, AWS leads the market with the largest compute capacity. It allows users to try the basic version of cloud services free of charge for a year. The user can either setup Windows or Linux OS systems. AWS services are used for a variety of tasks from website hosting, E-commerce store to Machine learning models. Several big companies like Netflix, Quora, etc. rely on AWS for its services. AWS charges on an hourly basis.
2. Microsoft Azure
Azure is a close competitor of AWS used for design and managing cloud services. It allows to use a variety of Programming languages, Operating systems, databases, etc. and provides 30 days free trial to new users.
3. Google Cloud Platform (GCP)
GCP uses google datacenter to provide services such as virtual machines, storage, and numerous applications. It can also be integrated with live data and dash-boarding features are also provided. For new users, you get a certain amount of free credit which can be availed to use GCP services. Unlike AWS, it charges on seconds’ basis. So if you use service for 5 minutes, you don’t need to pay for the entire hour.
This has been a guide on the introduction to Cloud Computing. Here we have discussed Service & Deployment Models, applications and various other service providers of cloud computing along with pros and cons. You may also look at the following article to learn more –