Cloud Computing - Introduction
Cloud Computing - Introduction
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.
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..
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.
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
1. Networking Technology
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
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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).
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
6. E-commerce Applications
7. Cloud in Education
8. E-Governance Applications
1. Software as a Service
2. Infrastructure as a Service
3. Platform as a Service
4. Function as a Service
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.
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.
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.
Example: Amazon web service (AWS) and Google Example: Microsoft KVM, HP, Red
AppEngine etc. Hat & VMWare etc.
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