0% found this document useful (0 votes)
3 views21 pages

Notes CC Unit1

Cloud computing utilizes remote servers on the internet for data storage and management, enabling various operations like application development, data analysis, and software delivery. It encompasses different computing paradigms such as parallel, distributed, cluster, grid, utility, and edge computing, each with unique characteristics and advantages. The history of cloud computing highlights its evolution from early centralized computing to modern services provided by major platforms like AWS and Azure, emphasizing its scalability, reliability, and cost-effectiveness.

Uploaded by

sinchanasin364
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)
3 views21 pages

Notes CC Unit1

Cloud computing utilizes remote servers on the internet for data storage and management, enabling various operations like application development, data analysis, and software delivery. It encompasses different computing paradigms such as parallel, distributed, cluster, grid, utility, and edge computing, each with unique characteristics and advantages. The history of cloud computing highlights its evolution from early centralized computing to modern services provided by major platforms like AWS and Azure, emphasizing its scalability, reliability, and cost-effectiveness.

Uploaded by

sinchanasin364
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
You are on page 1/ 21

UNIT-1

CLOUD COMPUTING
The term cloud refers to a network. It is a technology that uses remote servers
on the internet to store, manage, and access data online rather than local drives.
The data can be anything such as files, images, documents, audio, video, and
more.

There are the following operations that we can do using cloud computing:
Developing new applications and services
Storage, back up, and recovery of data
Hosting blogs and websites
Delivery of software on demand
Analysis of data
Streaming videos and audios

Different Computing Paradigms

Over the years different computing paradigms have been developed and
used. In fact different computing paradigms have existed before the cloud
computing paradigm.

Let us take a look at all the computing paradigms below.

Parallel Computing:

Parallel computing is defined as a type of computing where


multiple computer systems are used simultaneously.
Here a problem is broken into sub-problems and then further broken
down into instructions. These instructions from each sub-problem are
executed concurrently on different processors.
Here in the below diagram you can see how the parallel
computing system consists of multiple processors that
communicate with each other and perform multiple tasks over a
shared memory simultaneously.
The goal of parallel computing is to save time and provide
concurrency.
There are many reasons to use parallel computing, such as save time
and money, provide concurrency, solve larger problems, etc.
Furthermore, parallel computing reduces complexity. In the real-life
example of parallel computing, there are two queues to get a ticket of
anything; if two cashiers are giving tickets to 2 persons
simultaneously, it helps to save time as well as reduce complexity.

Types of parallel computing

There are generally three types of parallel computing available

1. Bit-level parallelism: The form of parallel computing in which every


task is dependent on processor word size. In terms of performing a task
on large-sized data, it reduces the number of instructions the processor
must execute. There is a need to split the operation into series of
instructions
2. Instruction-level parallelism: In a single CPU clock cycle, the processor
decides in instruction-level parallelism how many instructions are
implemented at the same time. For each clock cycle phase, a processor in
instruction-level parallelism can have the ability to address that is less
than one instruction. The software approach in instruction-level
parallelism functions on static parallelism, where the computer decides
which instructions to execute simultaneously.
3. Task Parallelism: Task parallelism is the form of parallelism in which
the tasks are decomposed into subtasks. Then, each subtask is allocated
for execution. And, the execution of subtasks is performed concurrently
by processors.

Distributed Computing :

Distributed computing is defined as a type of computing where multiple


computer systems work on a single problem.
Here all the computer systems are linked together and the problem is
divided into sub-problems where each part is solved by different
computer systems.
The goal of distributed computing is to increase the performance and
efficiency of the system and ensure fault tolerance. In the below diagram,
each processor has its own local memory and all the processors
communicate with each other over a network.

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.

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.
3. Cluster Computing :

A cluster is a group of independent computers that work together to


perform the tasks given.
Cluster computing is defined as a type of computing that
consists of two or more independent computers, referred to as
nodes, that work together to execute tasks as a single machine.
The goal of cluster computing is to increase the performance,
scalability and simplicity of the system. As you can see in the below
diagram, all the nodes, (irrespective of whether they are a parent node
or child node), act as a single entity to perform the tasks.

Advantages of Cluster Computing

The advantages of cluster computing are as follows −


 Cost-Effectiveness − Cluster computing is considered to be much more
cost effective. These computing systems provide boosted implementation
concerning the mainframe computer devices.
 Processing Speed − The processing speed of cluster computing is
validated with that of the mainframe systems and other supercomputers
demonstrate around the globe.
 Increased Resource Availability − Availability plays an important role
in cluster computing systems. Failure of some connected active nodes can
be simply transformed onto different active nodes on the server,
providing high availability.
 Improved Flexibility − In cluster computing, better description can be
updated and improved by inserting unique nodes into the current server.

Types of Cluster Computing

The types of cluster computing are as follows −

High Availability (HA) and Failover Clusters

These cluster models generate the availability of services and resources in


an uninterrupted technique using the system’s implicit redundancy.
The basic term of Cluster is that if a node declines, then applications and
services can be made available to different nodes.
These methods of clusters deliver as the element for critical missions,
mails, documents, and application servers.

Load Balancing Clusters

This cluster allocates all the incoming traffic/requests for resources from
nodes that run the equal programs and machines.
In this cluster model, some nodes are answerable for tracking orders, and
if a node declines, therefore the requests are distributed amongst all the
nodes available. Such a solution is generally used on web server farms.

HA & Load Balancing Clusters

This cluster model associates both cluster features, resulting in boost


availability and scalability of services and resources.
This kind of cluster is generally used for email, web, news, and FTP
servers.

Distributed & Parallel Processing Clusters

This cluster model boosts availability and implementation for


applications that have huge computational tasks.
A large computational task has been divided into smaller tasks and
distributed across the stations.
Such clusters are generally used for numerical computing or financial
analysis that needs high processing power

4. Grid Computing :

Grid computing is defined as a type of computing where it is constitutes a


network of computers that work together to perform tasks that may be
difficult for a single machine to handle.
All the computers on that network work under the same umbrella and are
termed as a virtual super computer.
The tasks they work on is of either high computing power and consist of
large data sets .
All communication between the computer systems in grid computing is done
on the “data grid”.
The goal of grid computing is to solve more high computational
problems in less time and improve productivity.

Advantages of grid computing


 Reduced Cost − A separate setup for grid computing is not needed and it
can be installed in the existing computers. For data storage purposes
cloud services can be used.
 Efficiency − When a large task is given, it can be broken down into
pieces and each small task can be assigned to each node thus making the
process faster and more efficient.
 Flexible − Its function is not limited to the building or a region, the
computers can be implemented anywhere around the world and can be
accessed through the network.

Working of Grid Computing

The computer or node raises a request for the resources and then the
control node will be used to provide access to the users to choose the
resources in the network.
The node can be in user mode when resources are available or switch to
provider mode when the resources are not available.
The tasks are performed in grid computing using the three primary grid
nodes namely,
User node

The user node or the computer requests for the need of resources and then
gets them from other nodes of the computer.
It simply uses the resources available in the network.

Provider node

It is a node or computer that shares its resources with the user nodes
based on the request.
When a request is received from the user node, some sort of task is
performed by the nodes like forecasting the stocks needed in the future.

Control node

It is a computer with a server or group of servers that serve as an


administrator and manages both the user and provider node.

5. Utility Computing :

Utility computing is defined as the type of computing where the


service provider provides the needed resources and services to the
customer and charges them depending on the usage of these resources
as per requirement and demand, but not of a fixed rate.
Utility computing involves the renting of resources such as hardware,
software, etc. depending on the demand and the requirement.
The goal of utility computing is to increase the usage of resources
and be more cost-efficient.

Example:- Travel reservation services: The travel and hotel industry is highly
dependent on seasonal demand and peak festival times. COVID-19 travel
restrictions have also played a huge part in setting new trends in the hospitality
industry. As countries are opening their borders to international travel, we are
seeing a surge in demand for tickets to exotic destinations.

Process

The concept of utility computing is transformational.


Service providers match demand with delivery almost immediately.
It enables businesses to transform their organization from a traditional
environment to a more dynamic, adaptive, and service-oriented one.
When demand exceeds capacity, utility computing becomes the perfect
solution to top up resources as and when needed.

Step 1: Determine the need:- The initial steps involved are assessing
internal organizational needs and the combination of services and resources
required.

Step 2: Evaluate the service provider’s claims:- Once your objectives are
determined, evaluate if the utility computing solution will align with your
goals and missions.

Step 3: Assess the health of a computing resource:-To assess the health of


a computing resource, it is critical to deploy resource monitoring tools that
look after its security and dynamic resource configuration requirements.
Monitoring a utility computing resource involves identifying failures in the
network, storage, and application resources.

Step 4: Identify the resource provisioning requirements:-The next step


involves analyzing the service provider’s capability to customize and
configure resources to meet customer needs and establishing a load balance
without overprovisioning or under provisioning resources.

Step 5: Map out a timeframe:- Once the need, objectives, and type of
resources are determined, the final step for architecting a utility computing
solution involves mapping out the schedule, identifying when a specific
resource might be needed, and for how much time. This allows the service
provider to release unused resources early and improve the overall resource
utilization strategy.

6. Edge Computing : Edge computing is defined as the type of


computing that is focused on decreasing the long distance
communication between the client and the server.

This is done by running fewer processes in the cloud and moving these
processes onto a user’s computer, IoT device or edge device/server.

The goal of edge computing is to bring computation to the network’s edge


which in turn builds less gap and results in better and closer interaction.
7.Cloud Computing : Cloud is defined as the usage of someone else’s
server to host, process or store data. Cloud computing is defined as the
type of computing where it is the delivery of on-demand computing
services over the internet on a pay-as-you-go basis. It is widely
distributed, network-based and used for storage.

There type of cloud are public, private, hybrid and community and some
cloud providers are Google cloud, AWS, Microsoft Azure and IBM cloud.

CLOUD COMPUTING
Cloud computing is the on-demand availability of computing resources (such as
storage and infrastructure), as services over the internet. It eliminates the need
for individuals and businesses to self-manage physical resources themselves,
and only pay for what they use.

HISTORY OF CLOUD COMPUTING

The history of cloud computing is a fascinating journey that has revolutionized


the way businesses and individuals access and manage their data and computing
resources. Here are some key points in the history of cloud computing:

1950s - 1960s: Early Concepts

The concept of cloud computing can be traced back to the 1950s and 1960s
when mainframe computers were used to provide centralized computing
resources to multiple users. This laid the foundation for the idea of shared and
remote computing.

1970s - 1980s: Early Networks and Virtualization

The development of computer networks and virtualization technologies, like


VMware, in the 1970s and 1980s, enabled the creation of isolated environments
for running multiple operating systems on a single physical machine, a
precursor to the virtualization used in cloud computing.

1990s: Internet and Web-Based Services

With the growth of the internet, web-based services and applications started to
gain popularity. Companies began to offer services like email and web hosting,
which were early forms of cloud computing.

2000s: Emergence of Modern Cloud Providers

Amazon Web Services (AWS) launched in 2002, marking a significant


milestone in the development of cloud computing. AWS provided scalable, on-
demand computing resources that could be accessed via the internet, setting the
stage for the cloud industry's rapid growth.

2006: Launch of Amazon Web Services (AWS)

AWS introduced Elastic Compute Cloud (EC2), a cloud infrastructure-as-a-


service (IaaS) offering, making it easier for businesses to deploy and manage
applications and services in the cloud.

2008: Google and Microsoft Enter the Market

Google launched Google App Engine, a platform-as-a-service (PaaS) offering,


and Microsoft introduced Azure, its cloud computing platform. These
companies further expanded the cloud market.

2010s: Widespread Adoption and Innovation


Throughout the 2010s, cloud computing saw widespread adoption by businesses
of all sizes. Cloud providers offered a wide range of services, including storage,
databases, machine learning, and more.

2020s: Maturation and Hybrid Cloud

Cloud computing continued to mature with an emphasis on security,


compliance, and hybrid cloud solutions that allow organizations to integrate on-
premises infrastructure with public and private cloud services.

Cloud Computing Characteristics:

Agility :The cloud works in a distributed computing environment. It shares


resources among users and works very fast.
High availability and reliability: The availability of servers is high and
more reliable because the chances of infrastructure failure are minimum.
High Scalability: Cloud offers "on-demand" provisioning of resources on a
large scale, without having engineers for peak loads.
Multi-Sharing:With the help of cloud computing, multiple users and
applications can work more efficiently with cost reductions by sharing
common infrastructure.
Device and Location Independence:Cloud computing enables the users to
access systems using a web browser regardless of their location or what
device they use e.g. PC, mobile phone, etc. As infrastructure is off-site
(typically provided by a third-party) and accessed via the Internet, users can
connect from anywhere.
Maintenance: Maintenance of cloud computing applications is easier, since
they do not need to be installed on each user's computer and can be accessed
from different places. So, it reduces the cost also.
Low Cost : By using cloud computing, the cost will be reduced because to
take the services of cloud computing, IT Company need not to set its own
infrastructure and pay-as-per usage of resources.
Services in the pay-per-use mode : Application Programming Interfaces
(APIs) are provided to the users so that they can access services on the cloud
by using these APIs and pay the charges as per the usage of services.

Advantages of Cloud Computing


As we all know that Cloud computing is trending technology. Almost every
company switched their services on the cloud to rise the company growth. some
important advantages of Cloud Computing
1) Back-up and restore data
Once the data is stored in the cloud, it is easier to get back-up and restore that
data using the cloud.
2) Improved collaboration
Cloud applications improve collaboration by allowing groups of people to
quickly and easily share information in the cloud via shared storage.
3) Excellent accessibility
Cloud allows us to quickly and easily access store information anywhere,
anytime in the whole world, using an internet connection.]
4) Low maintenance cost
Cloud computing reduces both hardware and software maintenance costs for
organizations.
5) Mobility
Cloud computing allows us to easily access all cloud data via mobile.
6) Services in the pay-per-use model
Cloud computing offers Application Programming Interfaces (APIs) to the users
for access services on the cloud and pays the charges as per the usage of service.
7) Unlimited storage capacity
Cloud offers us a huge amount of storing capacity for storing our important data
such as documents, images, audio, video, etc. in one place.
8) Data security
Data security is one of the biggest advantages of cloud computing. Cloud offers
many advanced features related to security and ensures that data is securely
stored and handled.
Disadvantages of Cloud Computing
A list of the disadvantage of cloud computing is given below -
1) Internet Connectivity
As you know, in cloud computing, every data (image, audio, video, etc.) is
stored on the cloud, and we access these data through the cloud by using the
internet connection. If you do not have good internet connectivity, you cannot
access these data.
2) Vendor lock-in
Vendor lock-in is the biggest disadvantage of cloud computing. Organizations
may face problems when transferring their services from one vendor to another.
As different vendors provide different platforms, that can cause difficulty
moving from one cloud to another.
3) Limited Control
As we know, cloud infrastructure is completely owned, managed, and monitored
by the service provider, so the cloud users have less control over the function
and execution of services within a cloud infrastructure.
4) Security
Although cloud service providers implement the best security standards to store
important information. But, before adopting cloud technology, you should be
aware that you will be sending all your organization's sensitive information to a
third party, i.e., a cloud computing
Applications of cloud computing
1. Online Data Storage
Cloud Computing allows storage and access to data like files, images,
audio, and videos on the cloud storage.
In this age of big data, storing huge volumes of business data locally
requires more and more space and escalating costs.
This is where cloud storage comes into play, where businesses can store
and access data using multiple devices.
The interface provided is easy to use, convenient, and has the benefits of
high speed, scalability, and integrated security.

2. Backup and Recovery

Cloud service providers offer safe storage and backup facility for data
and resources on the cloud.

In a traditional computing system, data backup is a complex problem, and


often, in case of a disaster, data can be permanently lost. But with cloud
computing, data can be easily recovered with minimal damage in case of
a disaster.

3. Big Data Analysis

One of the most important applications of cloud computing is its role in


extensive data analysis.

The extremely large volume of big data makes it impossible to store


using traditional data management systems. Due to the unlimited storage
capacity of the cloud, businesses can now store and analyze big data to
gain valuable business insights.

4. Testing and Development

Cloud computing applications provide the easiest approach for testing


and development of products.

In traditional methods, such an environment would be time-consuming,


expensive due to the setting up of IT resources and infrastructure, and
needed manpower. However, with cloud computing, businesses get
scalable and flexible cloud services, which they can use for product
development, testing, and deployment.

5. E-commerce Application

Ecommerce applications in the cloud enable users and e-businesses to


respond quickly to emerging opportunities.

It offers a new approach to business leaders to make things done with


minimum amount and minimal time. They use cloud environments to
manage customer data, product data, and other operational systems.

6. Cloud Computing in Education

E-learning, online distance learning programs, and student information


portals are some of the key changes brought about by applications of
cloud computing in the education sector.
In this new learning environment, there’s an attractive environment for
learning, teaching, experimenting provided to students, teachers, and
researchers so they can connect to the cloud of their establishment and
access data and information.

Leading cloud platform service providers

1. Amazon Web Services (AWS): AWS is often considered the largest and
most dominant cloud service provider, offering a wide range of cloud services,
including computing power, storage, databases, machine learning, analytics, and
more.

2. Microsoft Azure: Microsoft's cloud platform, Azure, is a strong competitor,


providing a comprehensive set of services and integration with Microsoft
products. It's particularly popular in the enterprise space.

3. Google Cloud Platform (GCP): Google Cloud offers a robust set of cloud
services, especially in data analytics, machine learning, and container
orchestration. Google's expertise in search and AI technologies has helped it
gain a foothold in the market.

4. IBM Cloud: IBM's cloud services cover a wide spectrum, with a focus on
hybrid cloud and AI. They are known for their enterprise-level offerings.

 Open technologies that ensure interoperability


 An integrated hybrid cloud that lets companies unlock hybrid data
 Powerful analytics system
 Development solutions for enterprises

IBM acquired the untapped hybrid cloud solutions area. It acquired Red Hat,
which aids the efficient delivery of hybrid solutions.
5. Alibaba Cloud: Alibaba Cloud is a major player in the Asian market and is
expanding globally. It provides a wide range of cloud services and is
particularly competitive in e-commerce and IoT.

6. Oracle Cloud: Oracle Cloud is known for its cloud services, including
databases and enterprise software solutions. It's often chosen by organizations
with heavy investments in Oracle technologies.

Its tie-up with Microsoft in delivering the cloud has also proved advantageous.
The combination of these two services is also being offered in Canada.

7. Salesforce:

Salesforce is a leader in cloud-based customer relationship management (CRM)


services, and it also provides a wide range of cloud solutions beyond CRM.

Salesforce is another major player in the cloud mark.

The clients of SalesForce CRM rely on AI to recognize sales opportunities,


which leads to more revenue. Another reason behind the enormous growth is the
advantage of being an early mover. It was the first company to offer CRM in the
cloud.

The launch of AppExchange, a third-party marketplace that allowed developers


to create and sell their apps to Salesforce users, was also a significant event that
added to its success.

Trends in cloud computing


Hybrid and Multi-Cloud Adoption: Many organizations are embracing
hybrid and multi-cloud strategies to combine the benefits of public and
private clouds. This allows them to maintain control over sensitive data
while leveraging the scalability and flexibility of public cloud services.
Edge Computing: With the growth of IoT devices and the need for low-
latency processing, edge computing has become increasingly important.
Cloud providers are extending their services to the edge, bringing
computing resources closer to the data source.
Serverless Computing: Serverless computing, such as AWS Lambda and
Azure Functions, has gained popularity. It allows developers to focus on
writing code without managing server infrastructure, which can lead to
increased efficiency and cost savings.
Artificial Intelligence (AI) and Machine Learning (ML): Cloud
providers are offering AI and ML services, making it easier for
organizations to integrate machine learning into their applications. This
trend includes services for natural language processing, image
recognition, and predictive analytics.
Containers and Kubernetes: Containers, managed container services,
and Kubernetes orchestration have become essential for application
deployment and scaling. Cloud providers offer container services like
Amazon EKS, Google Kubernetes Engine, and Azure Kubernetes
Service.
Serverless Containers: The combination of serverless and containers is a
growing trend, offering the flexibility of containers without the need to
manage underlying infrastructure.
Zero Trust Security: The Zero Trust security model, which assumes no
trust in a network and requires verification of every user and device
trying to connect, is gaining traction to enhance cloud security.
Quantum Computing in the Cloud: Quantum computing services are
being developed by cloud providers. While these are in early stages, they
have the potential to revolutionize computing for specific use cases.
Data Governance and Compliance: With the increasing focus on data
privacy regulations like GDPR and CCPA, cloud providers are offering
tools and services to help organizations manage data governance and
compliance in the cloud.
Sustainability and Green Cloud: Cloud providers are making efforts to
reduce their carbon footprint and adopt sustainable practices. This
includes investments in renewable energy and more energy-efficient data
centers.
Data Lakes and Analytics: Cloud providers are enhancing their data
storage and analytics services, making it easier for organizations to
manage and analyze vast amounts of data.
Container Security: As containers proliferate, container security
becomes crucial. Cloud providers are offering solutions for scanning and
securing container images and orchestrators.
Robotic Process Automation (RPA): Cloud providers are integrating
RPA capabilities into their services, making it easier for organizations to
automate routine business processes.

You might also like