Cloud ComputingUnit 112 min read
Cloud Computing Basics: Definitions, Models, and Real-World Impact
Unit 1 of Cloud Computing introduces the core concepts of cloud computing, including its definition, evolution, service and deployment models, and the transformative impact on businesses and daily life. This note covers how cloud computing works, its key characteristics, and its advantages and disadvantages, illustrate
What is Cloud Computing?
Cloud computing is the delivery of computing services—such as servers, storage, databases, networking, software, analytics, and intelligence—over the internet ("the cloud") to offer faster innovation, flexible resources, and economies of scale. Instead of owning physical data centers or local servers, users access these services on-demand from a cloud provider.
Key Characteristics of Cloud Computing
Cloud computing is defined by five essential characteristics (NIST model):
mindmap
root((Cloud Computing Characteristics))
On-Demand Self-Service
Broad Network Access
Resource Pooling
Rapid Elasticity
Measured Service- On-Demand Self-Service: Users can provision computing resources (e.g., storage, processing power) automatically without human interaction from the service provider.
- Broad Network Access: Services are accessible over the network (e.g., internet) via standard mechanisms (e.g., web browsers, APIs) and can be used from anywhere.
- Resource Pooling: The provider’s computing resources are pooled to serve multiple customers using a multi-tenant model, with different physical and virtual resources dynamically assigned.
- Rapid Elasticity: Resources can be scaled up or down elastically to match demand, often in real-time.
- Measured Service: Cloud systems automatically control and optimize resource use by leveraging metering capabilities (e.g., storage used, processing time, bandwidth).
Evolution of Cloud Computing
Cloud computing evolved from earlier computing models:
| Era | Model | Description | Example |
|---|---|---|---|
| 1960s | Time-Sharing Systems | Multiple users share a single mainframe computer. | IBM Mainframes |
| 1990s | Utility Computing | Computing resources treated as a metered utility (like electricity). | Early ISPs |
| 2000s | Grid Computing | Distributed computing across multiple machines for large tasks. | SETI@home |
| 2006-Present | Cloud Computing | On-demand, scalable, and elastic services over the internet. | AWS, Google Cloud, Azure |
Cloud Computing Models
Cloud computing is categorized into three primary service models:
1. Service Models
classDiagram
class ServiceModel {
<<abstract>>
+Name: String
+Description: String
}
class Iaas {
+Name: Infrastructure as a Service
+Description: Provides virtualized computing resources over the internet.
+Examples: AWS EC2, Google Compute Engine
}
class Paas {
+Name: Platform as a Service
+Description: Provides a platform allowing customers to develop, run, and manage applications.
+Examples: Google App Engine, Heroku
}
class Saas {
+Name: Software as a Service
+Description: Delivers software applications over the internet, on a subscription basis.
+Examples: Google Workspace, Microsoft 365
}
ServiceModel <|-- Iaas
ServiceModel <|-- Paas
ServiceModel <|-- SaasInfrastructure as a Service (IaaS)
- Provides virtualized computing resources (e.g., virtual machines, storage, networks).
- Users manage applications, data, runtime, middleware, and OS.
- Examples: AWS EC2, Microsoft Azure Virtual Machines, Google Compute Engine.
Platform as a Service (PaaS)
- Provides a platform for developing, testing, and deploying applications.
- Users manage applications and data; the provider manages everything else.
- Examples: Google App Engine, Heroku, AWS Elastic Beanstalk.
Software as a Service (SaaS)
- Delivers software applications over the internet.
- Users access the software via a web browser or API; the provider manages everything.
- Examples: Google Workspace (Gmail, Docs), Microsoft 365, Salesforce.
Cloud Deployment Models
Cloud computing can be deployed in four primary models:
mindmap
root((Cloud Deployment Models))
Public Cloud
Private Cloud
Hybrid Cloud
Community Cloud1. Public Cloud
- Services are delivered over the public internet and shared with other organizations.
- Advantages: Cost-effective, scalable, no maintenance.
- Disadvantages: Less control, security concerns.
- Examples: AWS, Google Cloud, Microsoft Azure.
2. Private Cloud
- Cloud infrastructure is operated solely for a single organization.
- Advantages: Enhanced security, customization, control.
- Disadvantages: High cost, maintenance overhead.
- Examples: Used by large enterprises like banks (e.g., NMB Bank’s internal cloud).
3. Hybrid Cloud
- Combines public and private clouds, allowing data and applications to be shared between them.
- Advantages: Flexibility, optimized performance, security.
- Disadvantages: Complexity in management.
- Examples: Ncell’s use of hybrid cloud for customer data and public-facing services.
4. Community Cloud
- Shared infrastructure between several organizations with common concerns (e.g., security, compliance).
- Advantages: Shared costs, tailored to specific needs.
- Disadvantages: Limited to specific communities.
- Examples: Government agencies sharing a cloud for citizen services.
How Cloud Computing Works: A Real-World Example
Let’s trace how eSewa, Nepal’s leading digital payment platform, uses cloud computing:
- User Request: A user in Kathmandu initiates a payment via the eSewa app.
- SaaS Layer: The app (SaaS) connects to eSewa’s servers hosted on a public cloud (e.g., AWS).
- PaaS Layer: The backend uses a PaaS (e.g., AWS Lambda) to process transactions securely.
- IaaS Layer: The cloud provider (AWS) dynamically allocates virtual machines (IaaS) to handle the transaction load.
- Database: Transactions are stored in a cloud-based database (e.g., Amazon RDS) for real-time updates.
- Scalability: During festivals (e.g., Dashain, Tihar), AWS auto-scales resources to handle peak traffic.
- Security: Data is encrypted and stored in a private cloud for sensitive operations (e.g., KYC verification).
Advantages and Disadvantages of Cloud Computing
Advantages
- Cost Efficiency: No need for physical hardware; pay-as-you-go model.
- Scalability: Resources can be scaled up or down based on demand.
- Reliability: High availability and redundancy (e.g., AWS has 99.99% uptime).
- Security: Cloud providers invest heavily in security (e.g., encryption, firewalls).
- Disaster Recovery: Automated backups and recovery options.
- Collaboration: Easy access for teams (e.g., Google Workspace for remote work).
Disadvantages
- Dependency on Internet: Requires a stable connection.
- Security Risks: Data breaches if not properly managed (e.g., hacking, insider threats).
- Vendor Lock-in: Difficulty in migrating between providers.
- Compliance Issues: Data sovereignty laws (e.g., GDPR, Nepal’s Data Privacy Act).
- Limited Customization: Public clouds may not meet niche requirements.
In the Real World
Cloud computing powers many services Nepalese students and professionals use daily:
eSewa (SaaS + IaaS)
- Idea Used: SaaS for the mobile app and IaaS for backend servers.
- How: eSewa uses AWS to host its payment processing servers, ensuring 24/7 availability and scalability during high-traffic periods like Dashain. The app itself is a SaaS that users access without installing backend infrastructure.
Khalti (PaaS + IaaS)
- Idea Used: PaaS for developing and deploying financial APIs, IaaS for hosting.
- How: Khalti’s backend runs on Google Cloud Platform (GCP), using PaaS (e.g., Cloud Functions) to process transactions and IaaS (e.g., Compute Engine) for scaling during events like Dashain or New Year. The platform also uses hybrid cloud for sensitive data storage.
Daraz (SaaS + IaaS)
- Idea Used: SaaS for the e-commerce platform, IaaS for inventory and order management.
- How: Daraz uses AWS to handle millions of orders during sales events like 11.11. The IaaS layer manages virtual servers for product catalogs, while the SaaS layer delivers the shopping experience via web and mobile apps. During peak traffic, AWS auto-scales resources to prevent downtime.
Ncell (Hybrid Cloud)
- Idea Used: Hybrid Cloud for balancing public-facing services and private customer data.
- How: Ncell uses a hybrid cloud model where public cloud services (e.g., AWS) handle customer-facing apps (e.g., Ncell App), while sensitive data (e.g., customer billing records) is stored in a private cloud for security. This ensures compliance with Nepal’s telecom regulations.
Nepal Stock Exchange (NEPSE) (Private Cloud)
- Idea Used: Private Cloud for secure financial transactions.
- How: NEPSE uses a private cloud to manage stock trading data, ensuring high security and compliance with financial regulations. This model is chosen to prevent data breaches and maintain control over critical infrastructure.
Pathao (IaaS + PaaS)
- Idea Used: IaaS for ride-matching servers, PaaS for real-time analytics.
- How: Pathao’s backend runs on Microsoft Azure, using IaaS (e.g., Virtual Machines) to match riders with drivers in real-time. The PaaS layer (e.g., Azure Functions) processes ride data for analytics (e.g., peak hours, driver earnings). During Diwali, when demand spikes, Azure auto-scales to handle thousands of concurrent requests.
Cloud Computing Architecture: A Layered Model
Cloud computing follows a layered architecture, where each layer serves a specific function:
- Frontend (SaaS): The user interface (e.g., web or mobile app).
- API Layer (PaaS): Connects frontend to backend services.
- Runtime (PaaS): Executes application code (e.g., Java, Python).
- Middleware (PaaS): Manages communication between frontend and backend.
- Data Layer (IaaS): Stores data (e.g., databases, file storage).
- Virtualization (IaaS): Abstracts physical hardware into virtual resources.
- Hardware: Physical data centers (e.g., AWS regions).
Exam Tip
For the TU board exam on this unit, focus on the following:
- Definitions: Be ready to define cloud computing, its five characteristics, and the three service models (IaaS, PaaS, SaaS).
- Deployment Models: Compare public, private, hybrid, and community clouds with examples (e.g., eSewa = public, NMB Bank = private, Ncell = hybrid).
- Real-World Applications: Link concepts to Nepali companies (e.g., Khalti’s PaaS, Daraz’s IaaS, NEPSE’s private cloud). Examiners love case-based questions.
- Advantages/Disadvantages: Know the pros and cons of cloud computing, especially for Nepal’s context (e.g., internet dependency, data sovereignty).
- Diagrams: Practice drawing:
- The five characteristics (mindmap).
- Service models (class diagram).
- Deployment models (mindmap).
- Cloud architecture layers (layers diagram).
- Worked Examples: Be prepared to trace a transaction (e.g., eSewa payment) through the cloud layers (SaaS → PaaS → IaaS).
- Short vs. Long Questions:
- Short: Define cloud computing. List two advantages of SaaS.
- Long: Compare IaaS and PaaS with examples from Nepalese companies. Explain how Daraz uses cloud computing during 11.11 sales.
Based on the TU BITM syllabus for Cloud Computing (IT277), unit 1.
Discussion
Loading…