0% found this document useful (0 votes)
4 views27 pages

Cloud Computing - Introduction

A distributed system consists of independent computers that work together to appear as a single system, utilizing various architectures such as client-server and peer-to-peer (P2P). P2P architecture offers advantages like decentralization, resource sharing, and scalability, but also presents challenges in security and performance. Distributed computing, including cloud computing, enhances scalability and reliability by distributing processing and data storage across multiple devices, while enabling technologies like networking, middleware, and virtualization facilitate these systems.
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
4 views27 pages

Cloud Computing - Introduction

A distributed system consists of independent computers that work together to appear as a single system, utilizing various architectures such as client-server and peer-to-peer (P2P). P2P architecture offers advantages like decentralization, resource sharing, and scalability, but also presents challenges in security and performance. Distributed computing, including cloud computing, enhances scalability and reliability by distributing processing and data storage across multiple devices, while enabling technologies like networking, middleware, and virtualization facilitate these systems.
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Unit 1: Introduction

What is a Distributed System?


A distributed system is a collection of independent computers that appear to the users of the
system as a single coherent system. These computers or nodes work together, communicate
over a network, and coordinate their activities to achieve a common goal by sharing resources,
data, and tasks.

Below are some of the common distributed system architectures:


 Client-Server Architecture:
o In this setup, servers provide resources or services, and clients request them.
Clients and servers communicate over a network.
o Examples: Web applications, where browsers (clients) request pages from web
servers.
 Peer-to-Peer (P2P) Architecture:

Peer-to-Peer (P2P) Architecture is a decentralized network design where each node, or


"peer," acts as both a client and a server, contributing resources and services to the network.
This architecture contrasts with traditional client-server models, where nodes have distinct
roles as clients or servers.
 In a P2P architecture, all nodes (peers) are equal participants in the network, each capable
of initiating and receiving requests.
 Peers collaborate to share resources, such as files or computational power, without relying
on a central server.
Key Features of Peer-to-Peer (P2P) Architecture in Distributed Systems
 Decentralization
o Function: There is no central server or authority. Each peer operates
independently and communicates directly with other peers.
o Advantages: Reduces single points of failure and avoids central bottlenecks,
enhancing robustness and fault tolerance.
 Resource Sharing
o Function: Peers share resources such as processing power, storage space, or
data with other peers.
o Advantages: Increases resource availability and utilization across the network.
 Scalability
o Function: The network can scale easily by adding more peers. Each new peer
contributes additional resources and capacity.
o Advantages: The system can handle growth in demand without requiring
significant changes to the underlying infrastructure.
 Self-Organization
o Function: Peers organize themselves and manage network connections
dynamically, adapting to changes such as peer arrivals and departures.
o Advantages: Facilitates network management and resilience without central
coordination.
Advantages of Peer-to-Peer (P2P) Architecture in Distributed Systems
 Fault Tolerance: The decentralized nature ensures that the failure of one or several peers
does not bring down the entire network.
 Cost Efficiency: Eliminates the need for expensive central servers and infrastructure by
leveraging existing resources of the peers.
 Scalability: Easily accommodates a growing number of peers, as each new peer
enhances the network's capacity.
Disadvantages of Peer-to-Peer (P2P) Architecture in Distributed Systems
 Security: Decentralization can make it challenging to enforce security policies and manage
malicious activity, as there is no central authority to oversee or control the network.
 Performance Variability: The quality of services can vary depending on the peers'
resources and their availability, leading to inconsistent performance.
 Complexity: Managing connections, data consistency, and network coordination without
central control can be complex and may require sophisticated protocols.
Examples of Peer-to-Peer (P2P) Architecture in Distributed Systems
 File Sharing Networks: Systems like BitTorrent allow users to share and download files
from multiple peers, with each peer contributing to the upload and download processes.
 Decentralized Applications (DApps): Applications that run on decentralized networks,
leveraging P2P architecture for tasks like data storage and computation.
Three-Tier Architecture:
o This model has three layers: presentation (user interface), application (business
logic), and data (database). Each layer is separated to allow easier scaling and
maintenance.
o Examples: Many web applications use this to separate user interfaces, logic
processing, and data storage.

Difference between centralized system and distributed system


All data and computational resources are kept and controlled in a single central place, such as
a server, in a centralized system. Applications and users connect to this hub in order to
access and handle data. Although this configuration is easy to maintain and secure, if too
many users access it simultaneously or if the central server malfunctions, it could become a
bottleneck.
A distributed system, on the other hand, disperses data and resources over several servers or
locations, frequently across various physical places. Better scalability and reliability are made
possible by this configuration since the system can function even in the event of a component
failure. However, because of their numerous points of interaction, distributed systems can be
more difficult to secure and administer.

What is Distributed Computing?



Distributed computing refers to a system where processing and data storage is distributed
across multiple devices or systems, rather than being handled by a single central device. In a
distributed system, each device or system has its own processing capabilities and may also
store and manage its own data. These devices or systems work together to perform tasks and
share resources, with no single device serving as the central hub.

One example of a distributed computing system is a cloud computing system, where resources
such as computing power, storage, and networking are delivered over the Internet and
accessed on demand. In this type of system, users can access and use shared resources
through a web browser or other client software.

Components
There are several key components of a Distributed Computing System
 Devices or Systems: The devices or systems in a distributed system have their own
processing capabilities and may also store and manage their own data.
 Network: The network connects the devices or systems in the distributed system, allowing
them to communicate and exchange data.
 Resource Management: Distributed systems often have some type of resource
management system in place to allocate and manage shared resources such as computing
power, storage, and networking.
The architecture of a Distributed Computing System is typically a Peer-to-Peer Architecture,
where devices or systems can act as both clients and servers and communicate directly with
each other.
Characteristics
There are several characteristics that define a Distributed Computing System
 Multiple Devices or Systems: Processing and data storage is distributed across multiple
devices or systems.
 Peer-to-Peer Architecture: Devices or systems in a distributed system can act as both
clients and servers, as they can both request and provide services to other devices or
systems in the network.
 Shared Resources: Resources such as computing power, storage, and networking are
shared among the devices or systems in the network.
 Horizontal Scaling: Scaling a distributed computing system typically involves adding more
devices or systems to the network to increase processing and storage capacity. This can be
done through hardware upgrades or by adding additional devices or systems to the network..

Advantages and Disadvantages

Some Advantages of the Distributed Computing System are:

 Scalability: Distributed systems are generally more scalable than centralized systems, as
they can easily add new devices or systems to the network to increase processing and
storage capacity.
 Reliability: Distributed systems are often more reliable than centralized systems, as they
can continue to operate even if one device or system fails.
 Flexibility: Distributed systems are generally more flexible than centralized systems, as they
can be configured and reconfigured more easily to meet changing computing needs.

There are a few limitations to Distributed Computing System:

 Complexity: Distributed systems can be more complex than centralized systems, as they
involve multiple devices or systems that need to be coordinated and managed.
 Security: It can be more challenging to secure a distributed system, as security measures
must be implemented on each device or system to ensure the security of the entire system.
 Performance: Distributed systems may not offer the same level of performance as
centralized systems, as processing and data storage is distributed across multiple devices or
systems.

Applications

Distributed Computing Systems have a number of applications, including:


 Cloud Computing: Cloud Computing systems are a type of distributed computing system
that are used to deliver resources such as computing power, storage, and networking over
the Internet.
 Peer-to-Peer Networks: Peer-to-Peer Networks are a type of distributed computing system
that is used to share resources such as files and computing power among users.
 Distributed Architectures: Many modern computing systems, such as micro-services
architectures, use distributed architectures to distribute processing and data storage across
multiple devices or systems.
Enabling Technologies in Distributed Computing

1. Networking Technology

Networking enables different computers to communicate and share resources in a distributed


environment. Without fast and reliable networks, distributed computing is not possible because
every task requires data exchange between nodes. Protocols like TCP/IP provide reliability,
while high-speed connections like 5G and optical fiber reduce latency.

Example: In Google Search, when you type a query, it is sent over the internet (networking
technology) to distributed servers worldwide, which then process and return the result in less
than a second.

2. Cloud Computing

Cloud computing provides shared resources (servers, storage, software) on-demand through the
internet. It reduces hardware costs and allows businesses to scale up or down as needed. Cloud
services are offered as IaaS, PaaS, SaaS.

Example: Netflix runs its video streaming platform on Amazon Web Services (AWS). When
millions of users watch videos simultaneously, AWS automatically scales the servers and storage
in the background using distributed computing.

3. Middleware

Middleware is software that connects applications running on different systems in a distributed


environment. It hides complexity and provides services like messaging, authentication, and
communication between nodes.

Example: In banking systems, middleware ensures that if you transfer money from one bank to
another, the transaction request goes smoothly across multiple servers and databases without you
noticing the complexity.

4. Virtualization and Containers

Virtualization allows multiple virtual machines (VMs) to run on one physical server. Containers
(like Docker) provide lightweight, portable environments where applications run the same way
on any system. Kubernetes manages containers across multiple servers.
Example: Spotify uses Docker containers to run its music recommendation system across
distributed servers. If one container fails, another starts instantly, ensuring that users never face
interruptions in streaming.

5. Parallel and Distributed Programming Models

Programming models divide big problems into smaller tasks that can run in parallel on multiple
computers. Models like MapReduce, Spark, MPI, and RPC are widely used.

Example: Google’s MapReduce is used for building its search index. A huge dataset is split
into smaller parts, processed in parallel by thousands of servers, and then combined to give quick
search results.

6. Security Technologies

Security ensures safe communication and data handling in distributed systems. Encryption
(SSL/TLS), authentication (passwords, biometrics), and authorization (who can access what) are
critical.

Example: Online shopping sites like Amazon use SSL/TLS encryption so that when you pay
with your credit card, your information is safely transmitted across distributed cloud servers
without being exposed to hackers.

7. Big Data & Storage Systems

Distributed storage systems divide data into small parts and store it across multiple servers for
fast access and fault tolerance. Systems like HDFS, Cassandra, DynamoDB ensure data is
never lost even if one node fails.

Example: Facebook uses Apache Cassandra to store billions of user interactions every day.
Even if one data center goes offline, the system continues working because data is replicated
across multiple servers.
Introduction to Cloud Computing
Cloud Computing is a technology that allows you to store and access data and applications
over the internet instead of using your computer’s hard drive or a local server.
In cloud computing, you can store different types of data such as files, images, videos, and
documents on remote servers, and access them anytime from any device connected to the
internet.
 Infrastructure: Cloud computing depends on remote network servers hosted on the
Internet to store, manage, and process data.
 On-Demand Access: Users can access cloud services and resources on demand, scaling
up or down without having to invest in physical hardware.
 Types of Services: Cloud computing offers various benefits such as cost saving,
scalability, reliability, and accessibility. It reduces capital expenditures, and improves
efficiency.

Evolution of Cloud Computing

The phrase "Cloud Computing" was first introduced in the 1950s to describe internet-related
services, and it evolved from distributed computing to the modern technology known as cloud
computing. Cloud services include those provided by Amazon, Google, and Microsoft. Cloud
computing allows users to access a wide range of services stored in the cloud or on the
Internet. Cloud computing services include computer resources, data storage, apps, servers,
development tools, and networking protocols.
1. Mainframe Computing (1950–1970)

Mainframes were the first powerful computers, introduced in 1951. They were very strong and
reliable, capable of handling huge amounts of data and running big operations like bank
transactions. They hardly ever stopped working (high uptime) and had good fault tolerance.
However, they were very costly. To reduce the cost of such systems, cluster computing later
became an alternative.

Example: Banks still use mainframes for online transaction processing.

2. Distributed Systems (1970–1980)

Distributed systems are made up of many independent computers that look like one single
system to the user. They share resources and work together to provide services efficiently. They
are scalable, can run tasks at the same time, and are always available. But one limitation was that
all computers had to be in the same location. This led to new models like cluster computing and
grid computing.

Example: A company’s internal network of computers working together for file sharing and
processing.

3. Cluster Computing (1980–1990)

In cluster computing, many computers are connected through a fast network and work together
as one system. Unlike mainframes, clusters were much cheaper but still powerful. Adding a new
computer (node) to the cluster was easy, so scalability was better. But the problem was that the
cluster computers still had to be in the same place. To overcome this, grid computing was
developed.

Example: Research institutes use clusters for weather forecasting or scientific simulations.

4. Grid Computing (1990–2000)

Grid computing allowed computers at different physical locations to be connected through the
internet and work together as one large system. The nodes (computers) could belong to different
organizations and be very different from one another (heterogeneous). It solved the location
problem but faced issues like low internet speed and bandwidth limitations in the 1990s. This
concept later evolved into cloud computing.
Example: SETI@home project used grid computing to analyze radio signals from space by
connecting computers from all over the world.

5. Utility Computing (Late 1990–2000)

Utility computing provides IT services like computing power, storage, and infrastructure on a
pay-as-you-use basis, just like electricity or water. This model helped organizations avoid
buying costly hardware, instead paying only for what they needed.

Example: Amazon Web Services (AWS) follows utility computing by charging users based on
usage.

6. Virtualization (1980–Present)

Virtualization creates a virtual layer over hardware so multiple systems (virtual machines) can
run on the same physical computer. It is one of the most important technologies behind cloud
computing, as it allows better resource usage and flexibility.

Example: Amazon EC2 and VMware use virtualization to allow businesses to run multiple
applications on shared hardware.

7. Web 2.0 (2004–Present)

Web 2.0 made the internet more interactive and dynamic compared to static Web 1.0. It allowed
users to create, share, and interact with content easily, making the web social and collaborative.
Because of Web 2.0, modern web applications and social media became possible.

Example: Google Maps, Facebook, Twitter, YouTube — all are based on Web 2.0 technologies.

8. Service Orientation

Service orientation is a design model where software and applications are provided as services.
It led to concepts like SaaS (Software as a Service) and introduced Quality of Service (QoS)
and Service Level Agreements (SLA) to ensure reliability. It is the foundation of cloud
computing, making applications flexible and cost-effective.

Example: Gmail is a SaaS application where email service is provided to users through the
internet as a service.
History of Cloud Computing
Before Computing was come into existence, client Server Architecture was used where all
the data and control of client resides in Server side. If a single user want to access some
data, firstly user need to connect to the server and after that user will get appropriate
access. But it has many disadvantages. So, After Client Server computing, Distributed
Computing was come into existence, in this type of computing all computers are networked
together with the help of this, user can share their resources when needed. It also has
certain limitations. So in order to remove limitations faced in distributed system, cloud
computing was emerged.

 During 1961, John MacCharty delivered his speech at MIT that “Computing Can be sold as
a Utility, like Water and Electricity.” According to John MacCharty it was a brilliant idea. But
people at that time don't want to adopt this technology. They thought the technology they
are using efficient enough for them. So, this concept of computing was not appreciated
much so and very less will research on it. But as the time fleet the technology caught the
idea after few years this idea is implemented. So, this is implemented by [Link] in
1999.

 This company started delivering an enterprise application over the internet and this way the
boom of Cloud Computing was started.

 In 2002, Amazon started Amazon Web Services (AWS), Amazon will provide storage,
computation over the internet. In 2006 Amazon will launch Elastic Compute Cloud
Commercial Service which is open for Everybody to use.

 After that in 2009, Google Play also started providing Cloud Computing Enterprise
Application as other companies will see the emergence of cloud Computing they also
started providing their cloud services. Thus, in 2009, Microsoft launch Microsoft Azure and
after that other companies like Alibaba, IBM, Oracle, HP also introduces their Cloud
Services. In today the Cloud Computing become very popular and important skill.

Advantages
The following are some of the benefits of using cloud computing:
 It is easier to get backup in cloud.
 It allows us easy and quick access stored information anywhere and anytime.
 It allows us to access data via mobile.
 It reduces both hardware ad Software cost, and it is easily maintainable.
 One of the biggest advantage of Cloud Computing is Database Security.

Disadvantages
The following are some of disadvantages you will face while using cloud computing:
 It requires good internet connection.
 User have limited control on the data.

Characteristics of Cloud Computing


There are many characteristics of Cloud Computing here are few of them :
1. On-demand self-services: The Cloud computing services does not require any human
administrators, user themselves are able to provision, monitor and manage computing
resources as needed.
2. Broad network access: The Computing services are generally provided over standard
networks and heterogeneous devices.
3. Rapid elasticity: The Computing services should have IT resources that are able to scale
out and in quickly and on a need basis. Whenever the user require services it is provided to
him and it is scale out as soon as its requirement gets over.
4. Resource pooling: The IT resource (e.g., networks, servers, storage, applications, and
services) present are shared across multiple applications and occupant in an uncommitted
manner. Multiple clients are provided service from a same physical resource.
5. Measured service: The resource utilization is tracked for each application and occupant, it
will provide both the user and the resource provider with an account of what has been used.
This is done for various reasons like monitoring billing and effective use of resource.
6. Multi-tenancy: Cloud computing providers can support multiple tenants (users or
organizations) on a single set of shared resources.
7. Virtualization: Cloud computing providers use virtualization technology to abstract
underlying hardware resources and present them as logical resources to users.
8. Resilient computing: Cloud computing services are typically designed with redundancy and
fault tolerance in mind, which ensures high availability and reliability.
9. Flexible pricing models: Cloud providers offer a variety of pricing models, including pay-
per-use, subscription-based, and spot pricing, allowing users to choose the option that best
suits their needs.
10. Security: Cloud providers invest heavily in security measures to protect their users' data and
ensure the privacy of sensitive information.
11. Automation: Cloud computing services are often highly automated, allowing users to deploy
and manage resources with minimal manual intervention.
12. Sustainability: Cloud providers are increasingly focused on sustainable practices, such as
energy-efficient data centers and the use of renewable energy sources, to reduce their
environmental impact.

Advantage of Cloud Computing


1. Scalability

Cloud computing allows organizations to grow or shrink their resources as needed.


Businesses don’t have to buy expensive hardware in advance. They can add more storage,
servers, or computing power whenever required.

Example: During the pandemic, Zoom scaled up its servers using cloud platforms to handle
millions of new users in a short time.

2. Security

Cloud service providers offer advanced cybersecurity measures like encryption, firewalls, and
24/7 monitoring that small businesses can’t afford on their own. This reduces risks of hacking,
data theft, and cyberattacks.
Example: Amazon Web Services (AWS) uses strong encryption and security tools to protect
companies like Netflix and Airbnb from cyber threats.

3. Access to Modern Technology

Cloud platforms provide access to latest technologies like Artificial Intelligence (AI), Machine
Learning (ML), Data Analytics, and Containerization without needing powerful local servers.
Businesses can use these to improve services and decision-making.

Example: Spotify uses AI and cloud computing to analyze user preferences and create
personalized music recommendations for millions of users worldwide.

4. Cost-Effectiveness (Cheaper)

Cloud works on a pay-as-you-go model. Organizations pay only for the resources they use
instead of buying costly servers and maintaining them. This reduces both capital and operational
costs.

Example: Startups use Google Cloud to run apps without investing in expensive data centers.
They only pay for storage and computing they actually use.

5. Mobility

Cloud computing makes it possible to access files and applications anywhere, anytime using the
internet. Employees can work remotely and still collaborate effectively.

Example: Employees of Microsoft Office 365 users can edit and share documents from home,
office, or even on the move using cloud storage like OneDrive.

6. Easy Collaboration

Cloud allows teams to work together in real-time on the same platform. Everyone works with the
latest version of data, reducing errors and duplication.

Example: Google Workspace (Docs, Sheets, Drive) allows multiple users to edit the same
document simultaneously, making collaboration faster and easier.
7. Prediction Ability

Cloud platforms provide powerful data analytics and predictive modeling tools. Even
businesses without supercomputers can run advanced analytics by renting processing power from
the cloud.

Example: Amazon uses cloud-based predictive analytics to forecast what products customers
may buy, helping in inventory management and personalized recommendations.

Disadvantages of Cloud Computing


1. Internet Dependency

Cloud services work only if there is a good internet connection. Without internet or with slow
speed, cloud apps and storage become useless.
Example: If your internet goes down, you can’t access Google Drive or Office 365 files.

2. Security and Privacy Risks

Your data is stored on someone else’s server. If the provider is hacked, your data may be
exposed. Sensitive information may also face privacy issues.
Example: In 2019, a misconfigured cloud server exposed millions of Facebook user records.

3. Downtime (Service Outages)

Even the biggest cloud providers sometimes face technical failures or outages. During this time,
users cannot access their services.
Example: AWS outage in 2020 caused many apps like Zoom, Netflix, and Disney+ to stop
working for hours.

4. Limited Control

Users have less control over hardware and software since everything is managed by the cloud
provider. You can only use the tools and settings given to you.
Example: A company using Google Cloud cannot change the server’s internal settings as they
would on their own system.
5. Hidden Costs

Although cloud is cheap at first, costs can rise with heavy usage of storage, computing, or extra
features. Businesses sometimes pay more than expected.
Example: A startup using AWS for free initially may face high bills when traffic grows
suddenly.

6. Vendor Lock-In

Once a business starts using one cloud provider (like AWS, Azure, or Google Cloud), it is
difficult to move to another provider because of compatibility and cost issues.
Example: A company using Microsoft Azure may find it hard to shift its apps to AWS without
extra expense.

7. Compliance Issues

Some industries (like healthcare, finance, or government) have strict rules for storing data. Cloud
providers may not always meet those rules, causing legal risks.
Example: Hospitals using cloud must ensure patient data storage complies with HIPAA (Health
Data Privacy Law).

Applications of Cloud Computing


1. Online Data Storage

 We can store files, images, videos, and documents on the cloud.


 No need to buy expensive hard drives or servers.
 Data can be accessed anytime, from anywhere.
 Example: Google Drive, Dropbox.

2. Backup and Recovery

 Cloud automatically creates backup copies of your data.


 If data is lost due to system crash or disaster, it can be easily recovered.
 Unlike traditional backup methods (which were slow and risky), cloud makes it quick and
reliable.
3. Big Data Analysis

 Today, huge amounts of data (big data) are generated daily.


 Storing and analyzing such massive data on local systems is impossible.
 Cloud provides large storage and powerful tools for analyzing this data to get insights.
 Example: Companies use cloud to analyze customer behavior for better marketing.

4. Software Testing and Development

 Developing and testing a new product requires a lot of servers, tools, and infrastructure.
 Cloud provides these resources at low cost and on demand.
 Developers can easily build, test, and deploy applications without buying expensive
hardware.

5. Cloud-based Antivirus

 Earlier, antivirus software had to be installed on each computer.


 Now, antivirus runs on the cloud and monitors your system remotely.
 It detects threats, removes them, and sometimes also allows you to download
updates/software directly.

6. E-commerce Applications

 Cloud helps online businesses (like Amazon, Flipkart) grow faster.


 It manages customer data, product information, and payments securely.
 Cloud allows businesses to respond quickly to new opportunities and customer needs.

7. Cloud in Education

 Cloud has changed the way we learn.


 It supports online classes, e-learning platforms, and virtual labs.
 Students and teachers can access study material anytime.
 Example: Google Classroom, Microsoft Teams, Coursera.

8. E-Governance Applications

 Governments use cloud for providing online services to citizens.


 It helps in reducing costs (no need to install heavy local systems).
 Cloud makes services faster, scalable, and easier to maintain.
 Example: Digital India initiatives, online tax filing systems.

Architecture of Cloud Computing


Cloud computing Architecture refers to the components and sub-components required for
cloud computing. These components typically refer to:
1. Front end ( Fat client, Thin client)
2. Back-end platforms ( Servers, Storage )
3. Cloud-based delivery and a network ( Internet, Intranet, Inter-cloud )

1. Front End ( User Interaction Enhancement )


The User Interface of Cloud Computing consists of 2 sections of clients. The Thin clients are
the ones that use web browsers facilitating portable and lightweight accessibilities and others
are known as Fat Clients that use many functionalities for offering a strong user experience.
2. Back-end Platforms ( Cloud Computing Engine )
The core of cloud computing is made at back-end platforms with several servers for storage
and processing computing. Management of Applications logic is managed through servers
and effective data handling is provided by storage. The combination of these platforms at the
backend offers the processing power, and capacity to manage and store data behind the
cloud.
3. Cloud-Based Delivery and Network
On-demand access to the computer and resources is provided over the Internet, Intranet, and
Intercloud. The Internet comes with global accessibility, the Intranet helps in internal
communications of the services within the organization and the Intercloud enables
interoperability across various cloud services. This dynamic network connectivity ensures an
essential component of cloud computing architecture on guaranteeing easy access and data
transfer.

Types of Cloud Computing Services

1. Software as a Service
2. Infrastructure as a Service
3. Platform as a Service
4. Function as a Service

1. Infrastructure as a Service ( IaaS )


Infrastructure as a Service (IaaS) is a type of cloud computing that gives people access to IT
tools like virtual computers, storage, and networks through the internet. You don’t need to buy
or manage physical hardware. Instead, you pay only for what you use.
Here are some key benefits of using IaaS:
 Flexibility and Control: IaaS comes up with providing virtualized computing resources
such as VMs, Storage, and networks facilitating users with control over the Operating
system and applications.
 Reducing Expenses of Hardware: IaaS provides business cost savings with the
elimination of physical infrastructure investments making it cost-effective.
 Scalability of Resources: The cloud provides in scaling of hardware resources up or
down as per demand facilitating optimal performance with cost efficiency.

2. Platform as a Service ( PaaS )


Platform as a Service (PaaS) is a cloud computing model where a third-party provider offers
the software and hardware tools needed to develop, test, and run applications. This allows
users to focus on building their applications without worrying about managing servers or
infrastructure.
For example, AWS Elastic Beanstalk is a PaaS offered by Amazon Web Services that helps
developers quickly deploy and manage applications while AWS takes care of the needed
resources like servers, load balancing, and scaling.
Here are some key benefits of using PaaS:
 Simplifying the Development: Platform as a Service offers application development by
keeping the underlying Infrastructure as an Abstraction. It helps the developers to
completely focus on application logic ( Code ) and background operations are completely
managed by the AWS platform.
 Enhancing Efficiency and Productivity: PaaS lowers the Management of Infrastructure
complexity, speeding up the Execution time and bringing the updates quickly to market by
streamlining the development process.
 Automation of Scaling: Management of resource scaling, guaranteeing the program's
workload efficiency is ensured by PaaS.

3. Software as a Service (SaaS)


Software as a Service (SaaS) is a way of using software over the internet instead of installing
it on your computer. The software is hosted by a company, and you can use it just by logging
in through a web browser. You don’t need to worry about updates, maintenance, or storage
the provider takes care of all that.
A common example is Google Docs. You can write and share documents online without
downloading any software.
Here are some key benefits of using SaaS:
 Collaboration And Accessibility: Software as a Service (SaaS) helps users to easily
access applications without having the requirement of local installations. It is fully managed
by the AWS Software working as a service over the internet encouraging effortless
cooperation and ease of access.
 Automation of Updates: SaaS providers manage the handling of software maintenance
with automatic latest updates ensuring users gain experience with the latest features and
security patches.
 Cost Efficiency: SaaS acts as a cost-effective solution by reducing the overhead of IT
support by eliminating the need for individual software licenses.

4. Function as a Service (FaaS)


Function as a service (FaaS) is a cloud-computing service that allows customers to run code
in response to events, without managing the complex infrastructure. You just write the code,
upload it and the cloud provider runs it only when it's needed. You pay only for the time your
code runs.
For example, with AWS Lambda, you can write a function that resizes images whenever
someone uploads a photo to your website. You don’t need to keep a server running all the
time AWS runs your function only when a photo is uploaded.
Here are some key benefits of using SaaS:
 Event-Driven Execution: FaaS helps in the maintenance of servers and infrastructure
making users worry about it. FaaS facilitates the developers to run code as a response to
the events.
 Cost Efficiency: FaaS facilitates cost efficiency by coming up with the principle "Pay as
per you Run" for the computing resources used.
 Scalability and Agility: Serverless Architectures scale effortlessly in handing the
workloads promoting agility in development and deployment.
What is a Cloud Deployment Model?
A cloud deployment model fundamentally determines where the infrastructure for your
deployment exists and who owns and controls that infrastructure. It also figures out the nature
and intention of the cloud.
The initial stop for any business seeking to embrace cloud services is to be familiar with the
deployment models that are available. When these are familiar, an improved choice can be
made as to which avenues the company should pursue. Every model will provide its strengths
and weaknesses in governance, scalability, security, flexibility, cost, and management

Types of Cloud Computing Deployment Models


The cloud deployment model identifies the specific type of cloud environment based on
ownership, scale, and access, as well as the cloud's nature and purpose. The location of the
servers you're utilizing and who controls them are defined by a cloud deployment model. It
specifies how your cloud infrastructure will look, what you can change, and whether you will
be given services or will have to create everything yourself. Relationships between the
infrastructure and your users are also defined by cloud deployment types.

Different types of cloud computing deployment models are described below:-

Public Cloud
The public cloud makes it possible for anybody to access systems and services. The public
cloud may be less secure as it is open to everyone. The public cloud is one in which cloud
infrastructure services are provided over the internet to the general people or major industry
groups. The infrastructure in this cloud model is owned by the entity that delivers the cloud
services, not by the consumer. It is a type of cloud hosting that allows customers and users to
easily access systems and services. This form of cloud computing is an excellent example of
cloud hosting, in which service providers supply services to a variety of customers. In this
arrangement, storage backup and retrieval services are given for free, as a subscription, or on
a per-user basis. For example, Google App Engine etc.

Advantages of the Public Cloud Model


 Minimal Investment: Because it is a pay-per-use service, there is no substantial upfront
fee, making it excellent for enterprises that require immediate access to resources.
 No setup cost: The entire infrastructure is fully subsidized by the cloud service providers,
thus there is no need to set up any hardware.
 Infrastructure Management is not required: Using the public cloud does not necessitate
infrastructure management.
 No maintenance: The maintenance work is done by the service provider (not users).
 Dynamic Scalability: To fulfill your company's needs, on-demand resources are
accessible.
Disadvantages of the Public Cloud Model
 Less secure: Public cloud is less secure as resources are public so there is no guarantee
of high-level security.
 Low customization: It is accessed by many public so it can't be customized according to
personal requirements.

Private Cloud
The private cloud deployment model is the exact opposite of the public cloud deployment
model. It's a one-on-one environment for a single user (customer). There is no need to share
your hardware with anyone else. The distinction between private and public clouds is in how
you handle all of the hardware. It is also called the "internal cloud" & it refers to the ability to
access systems and services within a given border or organization. The cloud platform is
implemented in a cloud-based secure environment that is protected by powerful firewalls and
under the supervision of an organization's IT department. The private cloud gives greater
flexibility of control over cloud resources.
Advantages of the Private Cloud Model
 Better Control: You are the sole owner of the property. You gain complete command over
service integration, IT operations, policies, and user behavior.
 Data Security and Privacy: It's suitable for storing corporate information to which only
authorized staff have access. By segmenting resources within the same infrastructure,
improved access and security can be achieved.
 Supports Legacy Systems: This approach is designed to work with legacy systems that
are unable to access the public cloud.
 Customization: Unlike a public cloud deployment, a private cloud allows a company to
tailor its solution to meet its specific needs.
Disadvantages of the Private Cloud Model
 Less scalable: Private clouds are scaled within a certain range as there is less number of
clients.
 Costly: Private clouds are more costly as they provide personalized facilities.

Hybrid Cloud
By bridging the public and private worlds with a layer of proprietary software, hybrid cloud
computing gives the best of both worlds. With a hybrid solution, you may host the app in a
safe environment while taking advantage of the public cloud's cost savings. Organizations can
move data and applications between different clouds using a combination of two or more
cloud deployment methods, depending on their needs.
Advantages of the Hybrid Cloud Model
 Flexibility and control: Businesses with more flexibility can design personalized solutions
that meet their particular needs.
 Cost: Because public clouds provide scalability, you'll only be responsible for paying for
the extra capacity if you require it.
 Security: Because data is properly separated, the chances of data theft by attackers are
considerably reduced.
Disadvantages of the Hybrid Cloud Model
 Difficult to manage: Hybrid clouds are difficult to manage as it is a combination of both
public and private cloud. So, it is complex.
 Slow data transmission: Data transmission in the hybrid cloud takes place through the
public cloud so latency occurs.

Community Cloud
It allows systems and services to be accessible by a group of organizations. It is a distributed
system that is created by integrating the services of different clouds to address the specific
needs of a community, industry, or business. The infrastructure of the community could be
shared between the organization which has shared concerns or tasks. It is generally managed
by a third party or by the combination of one or more organizations in the community.
Advantages of the Community Cloud Model
 Cost Effective: It is cost-effective because the cloud is shared by multiple organizations or
communities.
 Security: Community cloud provides better security.
 Shared resources: It allows you to share resources, infrastructure, etc. with multiple
organizations.
 Collaboration and data sharing: It is suitable for both collaboration and data sharing.
Disadvantages of the Community Cloud Model
 Limited Scalability: Community cloud is relatively less scalable as many organizations
share the same resources according to their collaborative interests.
 Rigid in customization: As the data and resources are shared among different
organizations according to their mutual interests if an organization wants some changes
according to their needs they cannot do so because it will have an impact on other
organizations.

Below is a table of differences between Public Cloud and Private Cloud is as


follows:

Public Cloud Private Cloud

Cloud Computing infrastructure is shared with the Cloud Computing infrastructure is


public by service providers over the internet. It shared with private organizations by
supports multiple customers i.e, enterprises. service providers over the internet.
Public Cloud Private Cloud

It supports one enterprise.

Multi-Tenancy i.e, Data of many enterprises are


Single Tenancy i.e, Data of a single
stored in a shared environment but are isolated.
enterprise is stored.
Data is shared as per rule, permission, and security.

Cloud service provider provides all the possible


services and hardware as the user-base is the world. Specific services and hardware as
Different people and organizations may need per the need of the enterprise are
different services and hardware. Services provided available in a private cloud.
must be versatile.

It is hosted at the Service Provider


It is hosted at the Service Provider site.
site or enterprise.

It only supports connectivity over


It is connected to the public internet.
the private network.

Scalability is limited, and reliability is


Scalability is very high, and reliability is moderate.
very high.

Cloud service provider manages the cloud and Managed and used by a single
customers use them. enterprise.

It is cheaper than the private cloud. It is costlier than the public cloud.

Security matters and dependent on the service


It gives a high class of security.
provider.
Public Cloud Private Cloud

Performance is low to medium. Performance is high.

It has shared servers. It has dedicated servers.

Example: Amazon web service (AWS) and Google Example: Microsoft KVM, HP, Red
AppEngine etc. Hat & VMWare etc.

Difference between Public Cloud vs Private Cloud vs Hybrid Cloud


Factors Public Cloud Private Cloud Hybrid Cloud

Resources are It is a combination of public and


Resources are shared with
Resources shared among private clouds. based on the
a single organization
multiple customers requirement.

Data of multiple
Data of a single Data is stored in the public cloud,
organizations is
Tenancy organization is stored in a and provide security in the public
stored in the public
clouds the public cloud cloud.
cloud

It can include a mix of public


cloud pay-as-you-go pricing, and
Have a variety of pricing private cloud fixed pricing. It has
Pay Model Pay what you used
models other pricing models such as
consumption-based, subscription-
based, etc.

Operated Third-party service


Specific organization Can be a combination of both
by provider

It has scalability and flexibility by


Scalability It has more
It has predictability and allowing organizations to use a
and scalability and
consistency combination of public and private
Flexibility flexibility,
cloud services.

Can be more expensive, but it


can also be less expensive ,
Expensive less expensive More expensive depending on the specific needs
and requirements of the
organization.
Factors Public Cloud Private Cloud Hybrid Cloud

The general public Restricted to a specific


Availability Can be a combination of both.
(over the internet) organization

You might also like