Cloud Computing
Fundamentals
2
Learning Outline
05
Advantages and
01
Introduction to Cloud
Disadvantages of Cloud
Computing
Computing
Security Best Practices for
02
Features of Cloud
Computing 06 Cloud Computing
Popular Cloud Platforms for
03 07
Cloud Computing Use
Cases Data Engineering
Types and Use Cases of Cloud Computing
04 •
•
Private, Public, Hybrid
IaaS, Paas, SaaS
Introduction to Cloud
Computing
Cloud Computing
Cloud computing refers to the use of
hosted services, such as data storage,
servers, databases, networking, and
software over the internet.
Cloud Computing
The data is stored on physical servers,
which are maintained by a cloud service
provider.
Computer system resources, especially
data storage and computing power, are
available on-demand, without direct
management by the user in cloud
computing.
Features of Cloud
Computing
Features of Cloud Computing
Cloud usage is tracked and monitored, so
Providers use multi-tenant models to serve
users pay based on actual
multiple customers with dynamically
consumption—like storage, bandwidth, or
assigned physical and virtual resources.
compute time.
Users can provision computing Users are billed only for the services
resources like storage or servers and resources they actually use,
automatically, without human making costs predictable and
intervention. scalable.
Cloud platforms offer strong
Cloud systems automatically
security features, including data
update and maintain
encryption, identity management,
themselves, reducing the need
and access controls.
for manual interventions and IT
overhead. Reduces upfront capital costs
by eliminating the need for
Services are accessible over a physical infrastructure and
wide network (like the internet) reducing operational expenses.
from various devices, anytime
and anywhere. Cloud systems can automatically
manage tasks like load balancing,
Cloud providers offer reliable
updates, and resource scaling
infrastructure with minimal downtime,
without human input.
ensuring services are almost always
accessible.
Cloud Computing
Use Cases
Cloud Computing Use Cases
1 Store files, databases, and 5 Deliver video, music, or
Data Storage backups securely in the cloud Streaming games to users globally (e.g.,
and Backup with easy access and scalability Services Netflix, Spotify using cloud
(e.g., Google Drive, AWS S3). infrastructure).
Train and deploy ML models
2 Web and App
Host websites and applications 6 Machine Learning at scale using tools like Azure
without managing physical
Hosting and AI ML, Amazon SageMaker, or
servers (e.g., using Azure App
Services or AWS Elastic Google AI Platform.
Beanstalk).
Use cloud-based
3 Disaster
Protect data and systems with 7 Email and
automated backup and recovery communication tools like
Recovery solutions in case of failures or Communication Microsoft 365, Gmail, or Zoom
cyberattacks. for business productivity.
Enable teams to work
4 Big Data
Analyze large datasets in real time 8 Remote together using tools like
using cloud-based tools like Collaboration
Analytics Google Workspace, Slack, or
Google BigQuery or Azure Synapse.
Microsoft Teams.
Types of Cloud
Computing
Types of Cloud Computing
These models exist to offer
organizations flexibility in how
they access, manage, and scale
computing resources, depending
on their specific needs for
control, security, cost, and
development speed.
Types of Cloud Computing - Based on Deployment
Types of Cloud Computing - Based on
Deployment
1. Private Cloud
Cloud infrastructure is used exclusively by one
organization, either on-premises or hosted privately.
Example: A bank running sensitive financial systems
on its own private servers.
Use Case: Suitable for organizations with strict data
privacy or regulatory requirements.
Types of Cloud Computing - Based on
Deployment
2. Public Cloud
Cloud services are provided over the internet by
third-party providers like AWS, Azure, or Google
Cloud.
Example: Hosting a company website on Microsoft
Azure, AWS or GCP.
Use Case: Ideal for startups or businesses that need
scalability without managing infrastructure.
Types of Cloud Computing - Based on
Deployment
3. Hybrid Cloud:
Combines public and private clouds to allow data
and applications to move between them.
Example: An e-commerce site using a private cloud
for customer data and a public cloud to handle high
traffic during sales.
Use Case: Useful for businesses needing both
security and flexibility for varying workloads.
Types of Cloud Computing - Based on Service Model
Types of Cloud Computing - Based on
Service Model
IaaS 1. Infrastructure as a Service (IaaS):
Provides virtualized computing resources like servers,
storage, and networking over the internet.
Example: Using Amazon EC2 to host and manage
virtual machines.
Use Case: Ideal for IT administrators who want
control over infrastructure without owning physical
hardware.
Types of Cloud Computing - Based on
Service Model
PaaS 2. Platform as a Service (PaaS):
Offers a platform with tools and services for
developers to build, test, and deploy
applications without managing the underlying
infrastructure.
Example: Using Google App Engine to deploy a
web application.
Use Case: Great for developers who want to
focus on coding rather than infrastructure setup.
Types of Cloud Computing - Based on
Service Model
3. Software as a Service (SaaS):
Delivers ready-to-use software applications
over the internet on a subscription basis.
Example: Using Microsoft 365 for email, word
processing, and collaboration tools.
Use Case: Best for end users who need easy
access to applications without installation or
maintenance.
Advantages and
Disadvantages of
Cloud Computing
Advantages of Cloud Computing
Reduces hardware and Automatic updates
software costs and maintenance
Easily scalable based Built-in backup and
on demand disaster recovery
Accessible from Supports real-time
anywhere with internet collaboration
Disadvantages of Cloud Computing
Requires Limited Potential Ongoing
Risk of vendor
reliable control over security and subscription
lock-in
internet infrastructure privacy risks costs
connection
1 2 3 4 5
Security Practices for
Cloud Computing
Security Best Practices for Cloud Computing
Vulnerability
Management
03
Identifies and fixes security
Access Control
weaknesses through
Restricts access patching, scanning, and
using methods like testing.
MFA and RBAC to Security Practices
ensure only for Cloud
Computing
authorized users Encryption
01 02
can access
resources. Secures data by
converting it into
unreadable code,
protecting both data at
rest and data in transit.
Security Best Practices for Cloud Computing
A. Access Control
1. Principle of Least Privilege (PoLP):
Users should have only the minimum level of access necessary to
perform their tasks. This limits the exposure of sensitive data and
reduces the risk of internal threats.
2. Multi-Factor Authentication (MFA):
Implement MFA to require more than one method of authentication,
such as something you know (password) and something you have
(token or mobile app), adding an extra layer of security.
Security Best Practices for Cloud Computing
A. Access Control
3. Role-Based Access Control (RBAC):
Assign users specific roles and permissions to ensure they only have
access to the resources they need for their job, reducing the likelihood
of unauthorized access.
4. Audit and Monitor Access:
Continuously track and log access to critical systems to detect unusual
activity and ensure compliance with security policies.
Security Best Practices for Cloud Computing
B. Encryption
1. Data Encryption at Rest:
Store data in an encrypted format when it's not in use (e.g., on storage
devices or databases), ensuring that unauthorized users cannot read or
modify sensitive information.
2. Data Encryption in Transit:
Protect data as it moves between systems or over networks by encrypting it
using secure protocols like TLS/SSL to prevent interception during
transmission.
Security Best Practices for Cloud Computing
B. Encryption
3.Key Management:
Use proper key management practices, including the use of strong
encryption keys and secure storage of these keys. Consider solutions like
AWS KMS or Azure Key Vault to manage and rotate encryption keys.
4. End-to-End Encryption (E2EE):
Use end-to-end encryption to ensure that data remains encrypted at all
times, from the sender to the receiver, preventing third parties from gaining
access.
Security Best Practices for Cloud Computing
C. Vulnerability Management
1. Regular Patch Management:
Continuously update and patch software to fix known vulnerabilities. Automate
this process where possible to ensure timely application of critical security
updates.
2. Vulnerability Scanning and Penetration Testing:
Regularly scan systems for vulnerabilities and conduct penetration testing to
identify weak points in your environment. Tools like Nessus or Qualys can help
identify vulnerabilities in your cloud infrastructure.
Security Best Practices for Cloud Computing
C. Vulnerability Management
3. Security Audits and Compliance Checks:
Conduct regular security audits to assess whether your cloud services comply
with relevant standards and regulations (e.g., GDPR, HIPAA). Cloud providers
often offer tools to help with compliance management.
4. Risk Assessment and Remediation:
Evaluate the risk of potential vulnerabilities and implement risk mitigation
strategies. This could include applying security patches, altering configurations,
or taking other measures to reduce the potential impact.
Popular Cloud
Platforms for Data
Engineering
Popular Cloud Platforms for Data Engineering
Amazon Web Services (AWS)
Offers services like AWS Redshift, AWS Glue, and AWS S3 for building scalable
data pipelines and processing large datasets.
Microsoft Azure
Provides services such as Azure Synapse Analytics, Azure Data Factory, and
Azure Databricks for integrating, processing, and analyzing data at scale.
Google Cloud Platform (GCP)
Features BigQuery, Google Cloud Dataflow, and Google Cloud Storage for
high-performance analytics and data engineering solutions.
IBM Cloud
Offers tools like IBM Db2 Warehouse and IBM DataStage for data integration,
transformation, and analytics.
Conclusion
Cloud computing is the on-demand delivery of computing services over the internet, providing
flexibility, scalability, and cost-efficiency.
Key features like resource pooling, broad network access, and rapid elasticity make cloud
computing ideal for modern businesses and developers.
Common use cases include data storage, web hosting, disaster recovery, big data analytics,
remote collaboration, and AI/ML model deployment.
Cloud models can be classified by deployment (Private, Public, Hybrid) and service (IaaS, PaaS,
SaaS), each suited to different business needs.
Advantages include lower costs, remote accessibility, and automatic updates, while disadvantages
include dependency on internet access, security risks, and potential vendor lock-in.
Security best practices such as access control, encryption, and vulnerability management are
critical to protecting cloud environments.
Leading platforms like AWS, Azure, GCP, and IBM Cloud provide robust tools and services for data
engineering and AI development
Assignment
1. In your own words, define cloud computing and explain three key features that make it
different from traditional on-premise computing.
2. Imagine you're building a startup that allows users to store and stream short videos
online.
a) Which type of cloud deployment model would you choose and why?
b) Which cloud service model (IaaS, PaaS, SaaS) would best support your backend
development, and why?
3. Compare Public Cloud and Private Cloud in terms of Ownership, Security and Cost.
Then, state which one a government agency should adopt and explain why.
4. List and explain three best practices for keeping data and services secure in the cloud.