Overview of Cloud Computing by Asst. Prof. Lija Mishra
Overview of Cloud Computing by Asst. Prof. Lija Mishra
Overview of Cloud Computing by Asst. Prof. Lija Mishra
OF
CLOUD
COMPUTING
By - LIJA MISHRA
(Asst. Professor & Computer Educator)
BY:LIJA MISHRA 1
Before going to forward towards cloud computing, there are some questions to be answered
.They are:
What is cloud?
How does the cloud forms in the sky?
If we think from the prospective of a layman, a cloud is a mass of water drops or ice
crystals suspended in the atmosphere. It forms when the invisible water vapour in
the air condenses into visible water droplets or ice crystals. For this to happen, the
parcel of air must be saturated, i.e. unable to hold all the water it contains in vapour
form, so it starts to condense into a liquid or solid form.
But here we are not going to discuss about the cloud in meteorology, it’s the digital cloud
every day we are coming by.
[Figure 1]
BY:LIJA MISHRA 3
The Cycle of Data:
Data
User Generation(Create &
Upload Data)
Storage(Cloud
Retrieval(We
Holds Data In
rain it back)
Servers)
[Figure2]
Shortly we can say that, we are both the source and the beneficiary of this
vast stream of data in the digital era and cloud is just a giant vessel that
makes this cycle possible.
Application Of Cloud Computing
Cloud computing is used across various industries and domains to provide scalable, flexible,
and cost-effective solutions for computing, storage, and application hosting.
Government
Remote IOT Geonomic & Public
Monitoring Research Sector
Media &
E-Learning Entertainment Online
Banking
BY:LIJA MISHRA 5
Grid Computing
In simple terms ,Grid computing is a distributed computing model that connects
multiple computer systems or resources across various locations, allowing them to
work together to achieve a common goal.
Grid Computing is a distributed computing model in which a network of computers
works together to perform large-scale tasks, such as processing massive datasets,
solving complex problems, or running simulations. It leverages the unused processing
power, storage, and other resources of multiple systems, often geographically
distributed, to achieve a common goal. This approach is particularly useful for
tackling computationally intensive tasks that exceed the capacity of a single
computer.
Grid computing can be viewed as a subset of distributed computing, where a virtual
supercomputer integrates the resources of several independent computers that are
distributed across geographies. Computers participating in a grid contribute resources
such as processing power, network bandwidth, and storage capacity to perform
operations requiring high computational power. The overall grid architecture looks
like a single computing entity.
In grid computing, each computing task is broken into small fragments and
distributed across computing nodes for efficient execution. Each fragment is
processed in parallel, and, as a result, a complex task is accomplished in less time.
BY:LIJA MISHRA 6
6. Middleware: Grid computing commonly relies on middleware that manages the
distributed resources, providing necessary services such as scheduling, data
management, and security.
Application Of Grid Computing
1. Scientific Research: Collaborations across institutions for large-scale simulations and
data analysis, such as in genomics or climate modeling.
2. Financial Services: Risk management and complex computations that require
intensive processing.
3. High-Performance Computing: Tasks that require significant computational power,
such as statistical simulations or rendering visual effects in movies.
4. Data Analysis and Big Data: Processing large datasets from various sources quickly
and efficiently.
Advantages Of Grid Computing
1. Cost-effective resource utilization through sharing.
2. Enhanced performance due to parallel processing capabilities.
3. Ability to tackle complex problems that are beyond the capacity of individual systems.
Challenges To Be Taken Into consideration
Network Security: Protecting data and resources in a distributed environment can be
challenging.
Interoperability: Ensuring different systems and applications can work together seamlessly.
Management Complexity: Coordinating resources and tasks across a distributed
environment can be complex.
Globus Toolkit
BOINC (Berkeley Open Infrastructure for Network Computing)
Apache Hadoop (often used for grid-like big data processing)
Utility Computing
Utility computing is a subset of cloud computing, emphasizing the pricing model
(pay-as-you-go), also known as pay-per-use or metered services where customer pays
for the services they use, rather than a flat rate.
In other words , Utility Computing is a service providing model where computing
resources such as storage, processing power, and software are provided to customers
on a pay-as-you-go basis.
BY:LIJA MISHRA 7
Scalability is the most important feature of utility computing which means the ability
to increase or decrease the size or power of a resource or IT solution to meet demand.
It allows businesses to adjust their computing resources without disrupting
infrastructure.
Features of Utility Computing
1. Availability: Resources are available whenever required , without any upfront
payment.
2. Pay-As-You-Go Pricing: Users are charged based on their actual usage of
resources (e.g., per hour, per GB).
3. Manageability : Resources can be scaled up or down dynamically to match
workload requirements.
4. Centralized Management : Resources are managed by a service provider,
removing the need for users to maintain infrastructure.
5. Flexibility : Users can access a wide range of computing services, from virtual
machines to application hosting.
Working Of Utility Computing
Utility Computing works in these 4 phases.
1. Resource Pooling
2. Virtualization
3. Metering
4. Dynamic Allocation
BY:LIJA MISHRA 8
Advantages of Utility Computing
1. Cost Efficiency: Eliminates the need for upfront capital investment in hardware
and software.
2. Flexibility and Agility: Enables businesses to respond quickly to changing
demands.
3. Reduced Maintenance Overheads: Service providers handle infrastructure
maintenance and updates.
4. Accessibility: Resources can be accessed from anywhere via the internet.
5. Focus on Core Activities: Businesses can concentrate on innovation and
operations instead of managing IT infrastructure.
BY:LIJA MISHRA 9
Key Features of Autonomous Computing
1. Self-Optimization: Continuous resource monitoring and adjustment and perform for
maximum efficiency.
2. Self-Configuration: System automatically configure itself based on changing
conditions and predefined goals.
3. Self-Healing: Identify, diagnose, and resolve issues without human intervention.
4. Self-Protection: Recognize threats, vulnerabilities and implement security measures
to mitigate risks.
Application Of Autonomous Computing
[Figure 5]
Components
1. AI and Machine Learning: Essential for pattern recognition, anomaly detection, and
decision-making in real time.
2. Edge Computing: Ensures faster decision-making by processing data closer to its
source.
3. IOT (Internet Of Things): Provides data for autonomous systems from connected
devices.
4. Cloud Computing: Scales resources and enables seamless system management.
Advantages
1. Efficiency: Reduces manual intervention and improves operational speed.
2. Cost Savings: Minimizes the need for human oversight, saving labour costs.
3. Reliability: Proactive system monitoring ensures uptime and system health.
4. Scalability: Adaptable to dynamic workloads and growing data demands.
BY:LIJA MISHRA 10
Challenges
1. Complexity: Requires advanced algorithms and significant initial investments.
2. Security Risks: Autonomous decisions might inadvertently expose vulnerabilities.
3. Ethical Concerns: Delegating decision-making raises questions about accountability.
BY:LIJA MISHRA 12
Hosting and Out-Sourcing In Cloud
BY:LIJA MISHRA 13
Hosting in Cloud Computing
Hosting refers to the process of running applications, websites, or other services on
cloud-based servers. Instead of using physical on-premises servers, businesses utilize
cloud-hosted environments to manage workloads. i.e Hosting refers to running your
applications, websites, or services on servers provided by a cloud service provider
(CSP)
Cloud hosting works through the process of virtualization. As mentioned above with a
virtual private server, a virtual layer is created on the server where content and other
data can be stored. Those virtual layers can then be replicated on other servers on the
cloud computing network, spread throughout other different regions across the world.
Cloud hosting allows website and applications operators to add or remove resources
when necessary. That includes more RAM, storage space, or support services such as
security or data storage. Cloud hosting provides reliability and flexibility at a
manageable cost. Cloud hosting also provides robust data backup and disaster
recovery compared to shared or dedicated hosting on a single server.
Advantages of cloud hosting
Scalability :Because cloud hosting does not rely on a single server to store and deliver
content, it can be easily scaled to meet the demands of a website or application by
spinning up more servers across the cloud network when usage increases.
Flexibility :Cloud hosting allows for the freedom to use the appropriate solution that
any situation requires by instantly provisioning the parameters of the virtual machines
across the network.
Cost :Cloud hosting often works on a pay-as-you-go model, meaning that costs can
also be scaled up or down depending on usage. In contrast, web hosting typically
works on a monthly or annual flat fee.
Security :Cloud providers provide robust physical and virtual security of servers on
their network, protecting website and application data from malicious actors. Cloud
hosting security layers include firewalls, identity management and access control,
Secure Sockets Layers (SSL) for transmitting data, and more.
Outsourcing in Cloud Computing
Outsourcing involves contracting third-party providers to manage and operate cloud
services, infrastructure, or IT functions. This can include both on-premises IT and
cloud services.
In Cloud computing outsourcing a company hires a third-party cloud service provider
to handle their cloud computing projects. This can help companies reduce IT costs,
Increase agility and scalability, and Focus on core competencies.
Cloud outsourcing is the deployment of specific functions and processes to a cloud
outsourcing provider. Under this arrangement, the cloud service provider is
responsible for running and maintaining the managed cloud services. Here, the
customer pays an ongoing subscription fee in exchange for guaranteed availability,
security, updates, and technical support.
BY:LIJA MISHRA 14
Advantages Of Outsourcing In Cloud Computing:
1. Cost savings :Outsourcing cloud computing can reduce the cost of buying,
deploying, and maintaining physical IT infrastructure. It can also eliminate the
costs of physical storage, such as heating, cooling, and electricity.
2. Security :Outsourcing cloud computing can provide stronger security than a
business might be able to implement on its own. Cloud service providers often
invest in security measures like firewalls, encryption, and intrusion detection
systems.
3. Centralized data security :Cloud computing platforms can integrate security
controls across hardware, firmware, identity, networking, data, and apps.
4. Enhanced compliance :Outsourcing cloud computing can help businesses stay
compliant with cybersecurity regulations.
5. Flexibility :Cloud computing allows businesses to scale up or down as their
needs change.
6. Centralized data management :Outsourcing cloud computing can improve
productivity by allowing employees to access applications and servers from
anywhere. It can also provide backups for storage in case of data loss.
7. Access to powerful tools :Outsourcing cloud computing gives businesses
access to powerful tools without having to build their own infrastructure.
Types Of Cloud Service Models
There are 3 Types of Cloud Computing Service Models. These service models are referred
to as a cloud computing stack, because each one is built on top of one another .They Are :
1. Infrastructure-as-a-Service (IaaS)
2. Platform-as-a-Service (PaaS)
3. Software-as-a-Service (SaaS)
[Figure 6]
BY:LIJA MISHRA 15
That means ,this service delivers fundamental cloud computing services, such as
computing power, networking, and data storage, over the internet to users on-demand.
With these virtualized services, there is no need to buy, store, and maintain physical
data servers and other equipment onsite.
Instead, users simply rent access to the cloud infrastructure resources they need on a
pay-as-you-go-basis. Here client is charged only for the computing power that is
utilized, usually, CPU hours used a month.
Example Of IaaS : AWS ,Cisco Metapod ,Microsoft Azure ,Google Compute Engine
(GCE) ,Linode and Rackspace.
Platform-as-a-Service (PaaS) – Provides an environment for building, testing, and
deploying software applications without focusing on managing underlying infrastructure.
This gives users access to a complete cloud platform, including hardware, software,
and infrastructure, so that they can develop, run, and manage applications without
investing in expensive, bulky, and inflexible onsite premises.
It Includes sub-categories like load balancers, firewalls, middleware, application
servers, HTTP servers, runtimes, libraries, and integrated development environment
(IDE).
PaaS is billed as an additional cost on top of the IaaS charges.
Examples of PaaS :include Microsoft Azure Elastic Beanstalk , Google Cloud
Infrastructure. Windows Azure ,Google App Engine ,Apache Stratos ,Red Hat
OpenShift
Software-as-a-Service (SaaS) – Users connect to and use cloud-based apps over the internet
. Means , this allows users to connect to and use cloud-based applications over the internet.
Under this arrangement, the hosting, delivery, and maintenance of the software are
handled by the cloud service provider.
It Includes industry applications like business process automation, customer
relationship management (CRM), enterprise resource planning (ERP), collaboration,
and email marketing.
The data for the app runs on a server on the network, not through an app on the user’s
computer.
Software is usually sold via subscription.
Examples of SaaS :Microsoft 365 productivity tools , Google Workspace, Dropbox
,Salesforce ,Cisco WebEx ,Concur ,GoToMeeting ,Shopify ,MailChimp ,HubSpot
Google Applications (G Suite)
Workload Patterns For The Cloud
In the general sense, A workload, is the amount of time and computing resources a system
or network takes to complete a task or generate a particular output. It refers to the total
system demand of all users and processes at a given moment.
BY:LIJA MISHRA 16
In a cloud computing context, workload refers to any service, application or capability
that consumes cloud-based resources. i.e virtual machines, databases, applications,
micro services , nodes all considered as workloads.
Workload patterns for cloud computing describe the various types of workloads that
organizations can run in the cloud. These patterns help in optimizing resource
utilization, improving performance, and reducing costs by aligning workloads with the
appropriate cloud services and architectures.
Workloads Can Be Classified On The Following Basis
1. On the basis of Cloud Deployment Model
2. On the basis of Cloud Native Technology
3. On the basis of Usage Patterns
4. On the basis of Resource Requirements
Classifying Workloads by Cloud Deployment Model
Each of these cloud deployment models provides different levels of control and
customization to organizations, and choosing the right one depends on the specific
requirements of the workloads being hosted.
According to the cloud deployment model , 3 types of cloud workloads are :
1. Infrastructure as a Service (IaaS): IaaS is a cloud computing model where the cloud
provider offers virtualized computing resources, such as virtual machines (VMs),
storage, and networking, over the internet. IaaS is suitable for hosting and managing
infrastructure-level workloads, such as operating systems, databases, and storage.
2. Platform as a Service (PaaS): PaaS is a cloud computing model that provides a
platform for developing, running, and managing applications, without having to worry
about the underlying infrastructure. PaaS is suitable for hosting and managing
application-level workloads, such as web and mobile applications.
3. Software as a Service (SaaS): SaaS is a cloud computing model where the cloud
provider offers a complete software solution over the internet, typically on a
subscription basis. SaaS is suitable for hosting and managing software-level
workloads, such as email, customer relationship management (CRM), and human
resource management (HRM) systems.
Classifying Workloads by Cloud Native Technology
There are several technical approaches commonly used to run workloads in a cloud
environment. These include:
1. Virtual Machines (VMs): A software-based emulation of a physical server or
computer that allows multiple operating systems to run on a single physical host.
Cloud providers offer VMs as a service, which enables users to create, run, and
manage VMs in the cloud.
2. Containers: A lightweight and portable way to package and deploy applications.
Containers provide isolation between applications and their dependencies, allowing
them to run consistently across different environments.
BY:LIJA MISHRA 17
3. Container as a Service (CaaS): A cloud-based service that provides a fully managed
container environment. CaaS platforms abstract the underlying infrastructure and
provide developers with an easy-to-use interface for deploying and managing
containers. Popular CaaS platforms are AWS Fargate, Azure Container Instances, and
Google Cloud Run.
4. Server-less computing: Server-less computing, also known as Function as a Service
(FaaS), allows developers to write and deploy code without worrying about the
underlying infrastructure. Server-less platforms automatically scale up or down to
handle traffic spikes, and users only pay for the computing resources used while the
function is running.
Classifying Workloads by Usage Patterns
There are several different types of cloud workloads based on usage patterns and resource
requirements. Cloud workloads can be broadly categorized based on usage patterns as:
1. Static workloads: These are applications and services that have a consistent,
predictable workload and are typically running 24/7. Examples: web servers,email
services.
2. Periodic workloads: These are applications that have regular, recurring usage
patterns, such as data backups or batch processing.
3. Inconsistent workloads: These are applications that have varying and unpredictable
workloads, such as gaming platforms, e-Commerce sites, or applications that
experience spikes in traffic.
Classifying Workloads by Resource Requirements
Cloud workloads are also classified by their resource requirements:
1. Standard compute workloads: These workloads have a general-purpose resource
requirement and can include tasks such as web hosting, software development, and
test and development environments.
2. High CPU workloads: These require powerful central processing units (CPUs) for
tasks such as scientific simulations, data analytics, and batch processing.
3. High GPU workloads: These require powerful graphics processing units (GPUs) for
demanding tasks such as computer-aided design (CAD), scientific simulations, and
video rendering.
4. High performance computing (HPC) workloads: These are workloads that require
massive parallel computing, which is supported by large clusters of cloud-based
machines.
5. Storage-optimized workloads: These require large amounts of storage capacity and
high input/output (I/O) performance for tasks such as big data analytics, content
management, and backups.
6. Memory-intensive workloads: These require large amounts of memory for tasks
such as in-memory databases, real-time analytics, and caching.
BY:LIJA MISHRA 18
Big Data And Cloud Computing
Big data refers to the data, which is huge in size and increasing rapidly with respect to time.
Big data includes structured data, unstructured data as well as semi-structured data. Big data
cannot be stored and processed in traditional data management tools it needs specialized big
data management tools.
Big data and cloud computing are two technologies that work together to store,
process, and analyse large amounts of data. Big Data in cloud computing refers to the
practice of storing, processing, and analysing massive volumes of data using cloud-
based platforms. Cloud computing provides the scalability, flexibility, and cost-
efficiency needed to handle the high velocity, variety, and volume of Big Data.
Cloud Computing and Big Data are one of the most used technologies in today’s
Information Technology world. With these two technologies, business, education,
healthcare, research & development, etc. are growing rapidly and will provide various
advantages to expand their areas with tricks and techniques.
Characteristics of Big Data
Volume: Large amounts of data from diverse sources.
Variety: Diverse data types (structured, unstructured, semi-structured).
Velocity: Rapid data generation and real-time processing.
Veracity: Ensuring data quality and trustworthiness.
Value: Deriving actionable insights from data.
Key Components of Big Data Architecture
Data Sources
Types of Data Sources:
Structured: Databases, data warehouses.
Semi-Structured: Logs, JSON, XML.
Unstructured: Videos, images, audio, text.
Examples:
IOT devices.
Social media platforms.
Business applications.
[Figure 7]
Cloud deployment models describe the environment in which cloud services are
hosted and delivered to users. Each model defines the ownership, accessibility, and
resource-sharing characteristics of the cloud infrastructure. Organizations choose a
deployment model based on their business requirements, regulatory needs, and
technical capabilities.
BY:LIJA MISHRA 21
5 - Cloud Deployment Models Are :
1. Public Cloud
2. Private Cloud
3. Hybrid Cloud
4. Multi Cloud
5. Community Cloud
1. Public Cloud : A public cloud is owned and operated by third-party cloud service
providers. Resources are shared among multiple customers (multi-tenancy) over the internet.
2. Private Cloud : A private cloud is dedicated to a single organization. It can be hosted on-
premises or managed by a third party in a private environment.
3. Hybrid Cloud : A hybrid cloud combines public and private clouds, allowing data and
applications to move between them. This model provides flexibility and scalability while
maintaining control over sensitive
4. Multi-Cloud : A multi-cloud strategy uses services from multiple public cloud providers
to avoid vendor lock-in and optimize performance.
BY:LIJA MISHRA 22
BY:LIJA MISHRA 23