The Cloud Verse
The Beginner’s Guide to Cloud Computing
Updated On Mar 12, 2023
Need help understanding cloud computing? This comprehensive guide is perfect for beginners just starting out in the world of cloud technology.
Back in the 90s, typically every organization needed to maintain the on premise data center to deploy applications but now cloud computing has revolutionized the way we store and process data, allowing for greater flexibility, scalability, and cost-efficiency.
Plus it reduces the operations the resources are deployed in the service provider’s data center.
In this guide, we'll dive into cloud computing concepts and provide you with a comprehensive understanding of its benefits, challenges, and different types available.
What is Cloud Computing?
Cloud computing allows businesses or individuals to use compute / storage / network resources without having to invest in and maintain physical infrastructure themselves.
Instead, they can rent the resources from cloud service provider, who manage and maintain the underlying infrastructure. This enables them to effectively manage the costs.
Advantages of Cloud Computing
Scalability
You don't need to worry about capacity planning as the resources can be automatically scaled up or down based on the demand.
Cost effectiveness
In the cloud computing environment, you pay for what you use as resources are charged on a pay as you go basis.
This can help businesses save money on capital expenses, as well as operational expenses such as electricity and maintenance costs which ultimately reduces total cost of ownership (TCO)
Reliability
Cloud provider typically offer high levels of uptime and reliability, as they have redundant systems and data centers in multiple regions in place to ensure that services are always available.
This can help businesses avoid downtime and lost productivity due to IT issues.
Security
Cloud providers typically have high levels of security and compliance, as they have invested in securing their infrastructure against cyber threats and data breaches.
This can help businesses protect their data and ensure compliance with industry regulations.
Innovation
Cloud computing allows businesses and development teams to experiment with new technologies and innovations more easily, as they can quickly spin up new resources and test them without having to invest in physical infrastructure.
Disadvantages of cloud computing
Security concerns
Cloud computing involves storing data and applications on remote servers that are managed by third-party providers.
So cloud security is a shared responsibility between the cloud provider and the customer.
Limited control over infrastructure
Cloud providers manage and maintain the underlying infrastructure, which can limit the control that businesses have over their computing resources.
This can make it more difficult to customize or optimize resources to meet specific needs.
Hidden costs
While leveraging cloud resources can be cost-effective in some cases, there may be hidden costs associated with data transfer, storage, and other usage charges.
Vendor lock-in
Cloud service providers may use proprietary technologies or formats that make it difficult to switch to a different provider or bring resources back in-house.
Cloud computing models
Infrastructure as a service (IaaS)
IaaS provides users with access to virtualized computing resources over the internet, including servers, storage, and networking components.
With IaaS, the service provider manages the underlying hardware but the customer has responsibility to manage the operating systems, patching etc.
Amazon EC2, Google Compute Engine, Azure Virtual Machines are some of the examples of IaaS services.
Platform as a service (PaaS)
PaaS provides users with a platform for building, testing, and deploying applications by offloading the infrastructure management to the cloud providers.
This enables developers to focus on building applications. Examples of PaaS services from AWS, GCP and Azure include AWS Elastic Beanstalk, Google App Engine, and Microsoft Azure App Service respectively.
Software as a service (SaaS)
SaaS provides users with access to software applications over the internet, typically on a subscription basis.
SaaS providers leverage cloud services to build their applications so users do not have to manage underlying hardware and software.
SaaS platforms include Gmail, Dropbox, Microsoft office 365, Netflix, Google Drive etc.
Different types of Clouds
Private Cloud
With a private cloud model, organizations manage their own infrastructure.
This enables organizations to have greater control, security, and customization than public clouds, but require more investment in infrastructure and maintenance.
Mostly, large enterprises or government organizations that require high levels of security and control over their data and applications use private clouds.
Public Cloud
Consider that you have created an application and have a fantastic startup idea in mind. If you need to purchase servers / setup hardware etc to deploy it and make it accessible to consumers, it can be quite difficult.
This is where public cloud comes in as the underlying infrastructure is managed by a third-party provider.
Compared to private clouds, public clouds are more scalable, affordable, and simple to use, but they may offer less customization possibilities and raise privacy and data security issues.
Public clouds are ideal for growing startups, small and medium-sized organizations. AWS is a leading public cloud provider.
Hybrid Cloud
Using both private and public cloud infrastructures together is known as hybrid cloud.
Organizations can benefit from the scalability and affordability of public clouds while still keeping control over sensitive data and applications in private clouds.
It has the ability to shift workloads between various cloud environments as needed.
Serverless Computing
Serverless computing is a new paradigm where developers only need to think about the code and leave other things, such as capacity provisioning, auto-scaling, and load balancing, to cloud providers.
Due to this, serverless architectures provide various benefits, such as faster time-to-market, reduced operational costs, and improved scalability and availability. The cloud provider scales up or down the resources as needed to meet the demand.
Additionally, serverless architectures allow for finer-grained billing, as the cloud provider charges only for the actual usage of the functions rather than for the total allocation of resources.
Cloud Service Provider
The core services include compute, storage, databases, analytics, ML, security and more. Enterprise businesses use these to run their mission critical workloads. The major cloud providers are as follows:
- Amazon Web Services (AWS)
- Microsoft Azure
- Google Cloud Platform (GCP)
- IBM Cloud
- Oracle Cloud
What do you think about where Netflix is hosted? It is on AWS.
However, there are some providers which are mostly popular among the developers due to their simplistic nature. They are as follows
- Digitalocean
- Vultr
- Rackspace
Core services provided by cloud providers
Identity and Access Management
Identity and access management is a very crucial component in every application to define who has access to what resources under what circumstances.
For example, Service Accounts in GCP are one of the integral components of the IAM.
Compute Services
These services allow users to deploy and run virtual machines, containers, and serverless computing resources.
Compute services provide the processing power and storage capacity required to run applications and services.
For example, Google Kubernetes Engine (GKE), AWS Elastic Compute Cloud (EC2), Google Cloud Run
Here is an example of how cloud functions in GCP can be leveraged to transfer data from GCS to Google Drive.
Storage Services
Most cloud providers provide multiple storage services which involve block storage, file storage, object storage, etc.
This enables developers to choose the best storage service to store data efficiently in the cloud.
For example, Amazon S3, Google Cloud Storage, Azure blob
Networking Services
In the cloud environment, the networking resources are provisioned using software-defined networking (SDN).
You don't need to provision routers, load balancers, switches, etc. Within a couple of clicks, you will have your private network (VPC), site-to-site VPNs, load balancers, etc.
For example, AWS CloudFront, Google Cloud CDN, Azure CDN, Load Balancing
Database Services
Managing a database can be a quite challenging task in itself. You need to manage the OS, Storage, Connections, etc.
To solve this, the majority of public cloud providers have database services that provide fully managed, scalable databases for storing and managing data in the cloud, including relational databases, NoSQL databases, and data warehouses.
For example, Amazon RDS, Google Cloud SQL, Azure SQL
Security Services
These services provide the tools and features required to secure cloud resources, including identity and access management, encryption, and threat detection and response.
Analytics Services
In today's world, a huge amount of data is generated from applications/systems. This data can be really useful to drive business decisions, increase revenue, etc.
So cloud providers have multiple analytics services which allow users to process, analyze and generate insights from the data.
For example. Google BigQuery, Amazon Redshift
Developer Tools
Developer tools simplify building, testing, and deploying applications in the cloud including development tools, integrated development environments (IDEs), source code management, and continuous integration and delivery (CI/CD) pipelines.
For example. AWS Code Build, Google Cloud Build
Applications of cloud computing in other industries
E-commerce
Cloud computing enables e-commerce companies to scale their operations as per demand without investing in on-premise hardware infrastructure.
It provides a secure platform for online transactions, inventory management, and customer relationship management.
Healthcare
Cloud computing is transforming the healthcare industry by providing secure storage and processing of large volumes of patient data.
It provides remote access to patient records, enhances clinical decision-making, and facilitates telemedicine and virtual consultations.
Education
Cloud computing has revolutionized the education industry by providing online learning platforms and virtual classrooms.
It enables educational institutions to deliver online courses, manage student records, and provide personalized learning experiences.
Gaming
The gaming industry typically requires lower latency and massive scale due to the rise of multiplayer gaming.
So businesses can host their games on the cloud which provides better scalability, low latency, and increased performance
Financial Services
Finance data needs to be securely processed and stored which requires the data processor to be compliant. Businesses can leverage compliant services in the cloud to build online banking, trading, and mobile payment services.
Media and Entertainment
Due to the rise of OTT platforms, there is a huge demand for video streaming, music streaming, and digital asset management services.
Streaming and content distribution over the internet are simplified by leveraging the edge locations.
Manufacturing
Cloud computing is transforming the manufacturing industry by providing tools and platforms for managing production, supply chain, and logistics.
It facilitates real-time monitoring and predictive maintenance of production lines, as well as remote collaboration among team members.
FAQs
Is Netflix A SaaS?
Yes, Netflix is SaaS which provides on demand movies / series over the internet.
Is Google Cloud public or private?
Google Cloud is a public cloud as anyone can sign up and start building applications on Google's infrastructure. The underlying hardware is managed by google.
Is Azure a private cloud?
No, Azure is a private cloud as anyone can start building applications on Microsoft’s infrastructure. The data centers are managed by Microsoft.
Is coding required for AWS?
No, you do not need to know coding to use AWS but you cannot go too far with AWS without coding. So it is recommended to understand if you want to use AWS efficiently.
Is AWS good for Career?
Yes, The demand for cloud engineers is growing day by day and having AWS as a skill will definitely help.
I am an Experienced Engineer with a strong IT background and a passion for technology exploration. My journey started in college, where I went into web development, AI/ML, and more. I've worked with GCP and AWS, holding certifications in both and being proficient in Kubernetes, Docker, and Terraform. This blog is where I write about my technical expertise.
Stay up to date