Cloud Computing Notes
Cloud Computing Notes
SUBJECT
CLOUD COMPUTING
(DSE-E1)
NAME: -----------------------------------------
REGISTRATION NO: ------------------------
YEAR/SEMESTER: ---------------------------
INTRODUCTION
TO
CLOUD COMPUTING
CLOUD COMPUTING
UNIT-1
INTRODUCTION
What is computing?
The process of utilizing computer technology to complete a task Computing may involve computer
hardware and software but most involve some form of a computer system.
Computing involves
Designing.
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.
2. 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.
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.
4. Grid Computing:
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.
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.
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
fewer gaps and results in better and closer interaction.
7. Fog Computing:
Fog computing is defined as the type of computing that acts a computational structure between
the cloud and the data producing devices. It is also called as “fogging”.
This structure enables users to allocate resources, data, applications in locations at a closer range
within each other.
The goal of fog computing is to improve the overall network efficiency and performance.
Processors communicate with each other Computer communicate with each other
5
through bus through message passing.
Nodes must be homogeneous i.e. they should Nodes may have different Operating systems
have same type of hardware and operating and hardware. Machines can be homogeneous
system. or heterogeneous.
Computers are connected by a high speed local Computers are connected using a low speed
area network bus. bus or the internet.
Whole system has a centralized resource Every node manages its resources
manager. independently.
The bandwidth requirement is very low. The bandwidth requirement is high. Data
5. Because data comes from the edge originating from edge nodes is transferred
nodes themselves. to the cloud.
Edge computing helps devices to get Fog computing helps in filtering important
faster results by processing the data information from the massive amount of
10
simultaneously received from the data collected from the device and saves it
devices. in the cloud by sending the filtered data.
CLOUD COMPUTING:
Cloud Computing referred as the accessing and storing of data and provide services related to
computing over the internet. It simply referred as it remote services on the internet manage and access
data online rather than any local drives. The data can be anything like images, videos, audios,
documents, files etc.
OR
The term cloud refers to a network or the internet. 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:
o Analysis of data
Small as well as large IT companies, follow the traditional methods to provide the IT infrastructure.
That means for any IT company, we need a Server Room that is the basic need of IT companies.
In that server room, there should be a database server, mail server, networking, firewalls, routers,
modem, switches, QPS (Query Per Second means how much queries or load will be handled by the
server), configurable system, high net speed, and the maintenance engineers.
To establish such IT infrastructure, we need to spend lots of money. To overcome all these problems
and to reduce the IT infrastructure cost, Cloud Computing comes into existence.
Before emerging the cloud computing, there was Client/Server computing which is basically a
centralized storage in which all the software applications, all the data and all the controls are resided
on the server side.
If a single user wants to access specific data or run a program, he/she need to connect to the server
and then gain appropriate access, and then he/she can do his/her business.
Then after, distributed computing came into picture, where all the computers are networked together
and share their resources when needed.
On the basis of above computing, there was emerged of cloud computing concepts that later
implemented.
At around in 1961, John Mac Charty suggested in a speech at MIT that computing can be sold like a
utility, just like a water or electricity. It was a brilliant idea, but like all brilliant ideas, it was ahead if
its time, as for the next few decades, despite interest in the model, the technology simply was not
ready for it.
But of course time has passed and the technology caught that idea and after few years we mentioned
that:
In 1999, Salesforce.com started delivering of applications to users using a simple website. The
applications were delivered to enterprises over the Internet, and this way the dream of computing sold
as utility were true.
In 2002, Amazon started Amazon Web Services, providing services like storage, computation and
even human intelligence. However, only starting with the launch of the Elastic Compute Cloud in
2006 a truly commercial service open to everybody existed.
In 2009, Google Apps also started to provide cloud computing enterprise applications.
Of course, all the big players are present in the cloud computing evolution, some were earlier, some
were later. In 2009, Microsoft launched Windows Azure, and companies like Oracle and HP have all
joined the game. This proves that today, cloud computing has become mainstream.
1. Agility
The cloud works in a distributed computing environment. It shares resources among users and
works very fast.
The availability of servers is high and more reliable because the chances of infrastructure failure
are minimum.
3. High Scalability
Loud offers "on-demand" provisioning of resources on a large scale, without having engineers
for peak loads.
4. Multi-Sharing
With the help of cloud computing, multiple users and applications can work more efficiently with
cost reductions by sharing common infrastructure.
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.
6. 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.
7. 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.
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.
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
3. Excellent accessibility
Cloud allows us too quickly and easily access store information anywhere, anytime in the
whole world, using an internet connection. An internet cloud infrastructure increases
organization productivity and efficiency by ensuring that our data is always accessible.
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.
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.
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.
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. However, we have no any other way to
access data from the cloud.
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
service provider. While sending the data on the cloud, there may be a chance that your
organization's information is hacked by Hackers.
1. Art Applications
Cloud computing offers various art applications for quickly and easily design attractive cards,
booklets, and images. Some most commonly used cloud art applications are given below:
i. Moo
Moo is one of the best cloud art applications. It is used for designing and printing
business cards, postcards, and mini cards.
ii. Vistaprint
Vistaprint allows us to easily design various printed marketing products such as business
cards, Postcards, Booklets, and wedding invitations cards.
2. Business Applications
Business applications are based on cloud service providers. Today, every organization
requires the cloud business application to grow their business. It also ensures that business
applications are 24*7 available to users.
i. MailChimp
MailChimp is an email publishing platform which provides various options to design, send,
and save templates for emails.
ii. Salesforce
Salesforce platform provides tools for sales, service, marketing, e-commerce, and more. It
also provides a cloud development platform.
iii. Chatter
Chatter helps us to share important information about the organization in real time.
iv. Bitrix24
v. Paypal
Paypal offers the simplest and easiest online payment mode using a secure internet account.
Paypal accepts the payment through debit cards, credit cards, and also from Paypal account
holders.
vi. Slack
Slack stands for Searchable Log of all Conversation and Knowledge. It provides a user-
friendly interface that helps us to create public and private channels for communication.
vii. Quickbooks
Quickbooks works on the terminology "Run Enterprise anytime, anywhere, on any device." It
provides online accounting solutions for the business. It allows more than 20 users to work
simultaneously on the same system.
Cloud computing allows us to store information (data, files, images, audios, and videos) on the cloud
and access this information using an internet connection. As the cloud provider is responsible for
providing security, so they offer various backup recovery application for retrieving the lost data.
A list of data storage and backup applications in the cloud are given below -
i. Box.com
Box provides an online environment for secure content management,
workflow, and collaboration. It allows us to store different files such as Excel, Word,
PDF, and images on the cloud. The main advantage of using box is that it provides drag
& drop service for files and easily integrates with Office 365, G Suite, Salesforce, and
more than 1400 tools.
ii. Mozy
Mozy provides powerful online backup solutions for our personal and business data. It
schedules automatically back up for each day at a specific time.
iii. Joukuu
Joukuu provides the simplest way to share and track cloud-based backup files. Many
users use joukuu to search files, folders, and collaborate on documents.
4. Education Applications
Cloud computing in the education sector becomes very popular. It offers various online distance
learning platforms and student information portals to the students. The advantage of using cloud in
the field of education is that it offers strong virtual classroom environments, Ease of accessibility,
secure data storage, scalability, greater reach for the students, and minimal hardware requirements for
the applications.
o Google Apps for Education is the most widely used platform for free web-based
email, calendar, documents, and collaborative study.
o It allows educators to quickly implement the latest technology solutions into the
classroom and make it available to their students.
• AWS in Education
5. Entertainment Applications
Entertainment industries use a multi-cloud strategy to interact with the target audience. Cloud
computing offers various entertainment applications such as online games and video conferencing.
Online games
Today, cloud gaming becomes one of the most important entertainment media. It offers
various online games that run remotely from the cloud. The best cloud gaming services are
Shaow, GeForce Now, Vortex, Project xCloud, and PlayStation Now.
Video conferencing apps provides a simple and instant connected experience. It allows us to
communicate with our business partners, friends, and relatives using a cloud-based video
conferencing. The benefits of using video conferencing are that it reduces cost, increases
efficiency, and removes interoperability.
6. Management Applications
Cloud computing offers various cloud management tools which help admins to manage all types of
cloud activities, such as resource deployment, data integration, and disaster recovery. These
management tools also provide administrative control over the platforms, applications, and
infrastructure.
Toggl
Toggl helps users to track allocated time period for a particular project.
Evernote
Evernote allows you to sync and save your recorded notes, typed notes, and other notes in
one convenient place. It is available for both free as well as a paid version.
It uses platforms like Windows, macOS, Android, iOS, Browser, and Unix.
Outright
Outright is used by management users for the purpose of accounts. It helps to track income,
expenses, profits, and losses in real-time environment.
GoToMeeting
GoToMeeting provides Video Conferencing and online meeting apps, which allows you to
start a meeting with your business partners from anytime, anywhere using mobile phones or
tablets. Using GoToMeeting app, you can perform the tasks related to the management such
as join meetings in seconds, view presentations on the shared screen, get alerts for upcoming
meetings, etc.
7. Social Applications
Social cloud applications allow a large number of users to connect with each other using social
networking applications such as Facebook, Twitter, Linkedln, etc.
Facebook is a social networking website which allows active users to share files, photos,
videos, status, more to their friends, relatives, and business partners using the cloud storage
system. On Facebook, we will always get notifications when our friends like and comment on
the posts.
Twitter is a social networking site. It is a microblogging system. It allows users to follow high
profile celebrities, friends, relatives, and receive news. It sends and receives short posts called
tweets.
Yammer
Yammer is the best team collaboration tool that allows a team of employees to chat, share
images, documents, and videos.
As more businesses rely on on-demand IT for anything from accounting software to full- fledged IaaS,
PaaS, and SaaS solutions, the cloud continues to be a vital resource across
multiple industries. Let’s have a look at five of the cloud computing trends you can expect to witness
in the future of cloud computing.
Serverless computing is a cloud approach in which the customer doesn’t have to deal with
infrastructure administration and server provisioning. Instead, the cloud service providers manage the
supporting infrastructure and distribute computing power following the demand.
a. You don’t pay a set price for a certain amount of bandwidth or storage. Instead, you can go
with the pay-as-you-go model.
c. The team can spend more time developing and developing new concepts because internal
e. Server less computing is rapidly growing at a quick pace. Expect to see more businesses
use server less solutions in the upcoming year as it offers yet another way to improve team
agility and save costs.
All machine learning and AI platforms need a lot of processing power and data bandwidth, and the
cloud is the most cost-effective approach to get these resources. AI and ML technologies complement
each other.
• AI guides cloud IT services in managing data while obtaining reliable insights into user
behavior, trends, preferences, etc.
• Cloud computing security increases the affordability and accessibility of AI. Cloud computing
plays a vital role in creating two emerging AI technologies.
Creative Algorithms:
These software tools use machine learning to produce everything from artificial data to works of art.
These algorithms can also use to train different AI systems.
Language Modeling:
Programs that understand human languages more accurately are a technology that is expected to
change how companies communicate with their customers.
Cloud computing for business will be crucial in delivering these services to customers and providing
the necessary infrastructure for programs with high computational demands. Not only big companies
profit from AI’s usage of cloud network services. Cloud computing service models will become a
popular entry point for high-end AI solutions among small and low-tech organizations. Start-ups and
businesses with smaller resources could not use advanced ML and AI functionalities without the
cloud.
Moreover, cloud computing service providers have allowed companies of all sizes and sorts to create
AI/ML products. Since these AI/ML platforms demand a lot of processing power and bandwidth,
cloud migration optimization will unavoidably play a significant role in that expansion.
Edge computing is a new method of processing data that doesn’t conduct activities inside a data
center. Instead, processing and storing data occurs on specialized hardware at or close to the network’s
edge.
Every edge server has different storage capabilities, networking, and computing, allowing it to
perform the following tasks:
• Security
• Load balancing
In place of cloud computing, edge computing is not a viable alternative. Instead, edge and cloud
computing solutions work best together, and this trend is already apparent in 2022. Using both cloud
and edge technology allows IT environments to benefit from the cloud while also offering:
In 2022, edge computing will be crucial as more businesses attempt to boost efficiency by linking
edge devices with cloud integration. At least 40% of organizations will look to incorporate Secure
Access Service Edge (SASE) into their toolchains so that you can anticipate a rise in SASE as well.
With the help of this security architecture, a business may monitor and regulate access to cloud
applications and services, on-premises infrastructure, and end-user devices. SASE guides in upholding
a high standard of security and compliance, two of the primary issues with edge computing.
Kubernetes is a technology that offers a tamper-proof digital ledger that can record data without
depending on a centralized authority. Block chain technology is a game-changer but has scaling
issues, particularly massive data management and storage.
A block chain environment can scale quickly with the help of Kubernetes (K8s), an open- source
technology for automating deployments and scaling programs. With several containers running for a
single essential service, K8s also offer high availability.
Enterprises will carry on pushing the boundaries of block chain and K8s in 2022 since they work so
well together.
The main barriers to cloud adoption continue to be issues about compliance, privacy, and integration
problems. In response, cloud service providers are providing enhanced cloud security trends feature.
Secure Access Service Edge (SASE): SASE allows users to stably manage and regulate access across
end-user devices, on premise IT, and cloud apps.
Cloud-Based Disaster Recovery (DR): A business can use cloud disaster recovery to back up data
and create a standby IT environment that can take over if the primary infrastructure fails.
A primary priority in 2022 will also be gaining visibility across many cloud application platforms.
Additionally, business owners desire transparency across all IT environments to close gaps resulting in
compliance infringements or cyberattacks.
Cloud Service providers (CSP) offers various services such as Software as a Service,
Platform as a service, Infrastructure as a service, network services, business applications, mobile
applications, and infrastructure in the cloud. The cloud service providers host these services in a data
center, and users can access these services through cloud provider companies using an Internet
connection.
Amazon Web Services (AWS)AWS (Amazon Web Services) is a secure cloud service
platform provided by Amazon. It offers various services such as database storage, computing
power, content delivery, Relational Database, Simple Email, Simple Queue, and other
functionality to increase the organization's growth.
Features of AWS
AWS provides various powerful features for building scalable, cost-effective, enterprise applications.
Some important features of AWS is given below-
o AWS is scalable because it has an ability to scale the computing resources up or down
according to the organization's demand.
o It offers various security services such as infrastructure security, data encryption, monitoring
& logging, identity & access control, penetration testing, and DDoS attacks.
Microsoft Azure
Microsoft Azure is also known as Windows Azure. It supports various operating systems, databases,
programming languages, frameworks that allow IT professionals to easily build, deploy, and manage
applications through a worldwide network. It also allows users to create different groups for related
utilities.
o It offers a Content Delivery System (CDS) for delivering the Images, videos, audios, and
applications.
Google cloud platform is a product of Google. It consists of a set of physical devices, such as
computers, hard disk drives, and virtual machines. It also helps organizations to simplify the
migration process.
o Google cloud includes various big data services such as Google Big Query, Google Cloud
Data proc, Google Cloud Data lab, and Google Cloud Pub/Sub.
o It provides various services related to networking, including Google Virtual Private Cloud
(VPC), Content Delivery Network, Google Cloud Load Balancing, Google Cloud
Interconnect, and Google Cloud DNS.
o GCP provides various server less services such as Messaging, Data Warehouse, Database,
Compute, Storage, Data Processing, and Machine learning (ML)
IBM Cloud is an open-source, faster, and more reliable platform. It is built with a suite of advanced
data and AI tools. It offers various services such as Infrastructure as a service, Software as a
service, and platform as a service. You can access its services like compute power, cloud data &
Analytics, cloud use cases, and storage networking using internet connection.
VMware Cloud
VMware cloud is a Software-Defined Data Center (SSDC) unified platform for the Hybrid Cloud. It
allows cloud providers to build agile, flexible, efficient, and robust cloud services.
Features of VMware
o It can easily create a new VMware Software-Defined Data Center (SDDC) cluster on AWS
cloud by utilizing a RESTful API.
o It provides flexible storage options. We can manage our application storage on a per-
application basis.
o It provides a dedicated high-performance network for managing the application traffic and
also supports multicast networking.
Oracle cloud
Oracle cloud platform is offered by the Oracle Corporation. It combines Platform as a Service,
Infrastructure as a Service, Software as a Service, and Data as a Service with cloud infrastructure. It is
used to perform tasks such as moving applications to the cloud, managing development environment
in the cloud, and optimize connection performance.
o Oracle cloud provides various tools for build, integrate, monitor, and secure the applications.
o Its infrastructure uses various languages including, Java, Ruby, PHP, Node.js.
o Oracle database not only provides unparalleled integration between IaaS, PaaS, and SaaS, but
also integrates with the on-premises platform to improve operational efficiency.
o It offers customizable Virtual Cloud Networks, firewalls, and IP addresses to securely support
private networks.
Rackspace
Rackspace offers cloud computing services such as hosting web applications, Cloud Backup, Cloud
Block Storage, Databases, and Cloud Servers. The main aim to designing Rackspace is to easily
manage private and public cloud deployments. Its data centers operating in the USA, UK, Hong Kong,
and Australia.
Features of Rackspace
o Rackspace provides various tools that help organizations to collaborate and communicate
more efficiently.
o We can access files that are stored on the Rackspace cloud drive, anywhere, anytime using
any device.
o It can manage both virtual servers and dedicated physical servers on the same network.
Alibaba Cloud
Alibaba Cloud is used to develop data management and highly scalable cloud computing services. It
offers various services, including Elastic Computing, Storage, Networking, Security, Database
Services, Application Services, Media Services, Cloud Communication, and Internet of Things.
o Alibaba cloud offers a suite of global cloud computing services for both international
customers and Alibaba Group's e-commerce ecosystem.
CLOUD SERVICE
MODELS
CLOUD COMPUTING
UNIT- 2
IaaS is also known as Hardware as a Service (HaaS). It is a computing infrastructure managed over
the internet. The main advantage of using IaaS is that it helps users to avoid the cost and complexity
of purchasing and managing the physical servers.
Characteristics of IaaS
Example: DigitalOcean, Linode, Amazon Web Services (AWS), Microsoft Azure, Google Compute
Engine (GCE), Rackspace, and Cisco Metacloud.
a. Compute: Computing as a Service includes virtual central processing units and virtual
main memory for the Vms that is provisioned to the end- users.
Shared infrastructure
Pay-as-per-use model
IaaS providers provide services based on the pay-as-per-use basis. The users are required to
pay for what they have used.
IaaS providers focus on the organization's core business rather than on IT infrastructure.
On-demand scalability
On-demand scalability is one of the biggest advantages of IaaS. Using IaaS, users do not
worry about to upgrade software and troubleshoot the issues related to hardware components
Security
Security is one of the biggest issues in IaaS. Most of the IaaS providers are not able to provide
100% security.
Although IaaS service providers maintain the software, but they do not upgrade the software
for some organizations.
Interoperability issues
It is difficult to migrate VM from one IaaS provider to the other, so the customers might face
problem related to vendor lock-in.
IaaS cloud computing platform cannot replace the traditional hosting method, but it provides
more than that, and each resource which are used are predictable as per the usage.
IaaS cloud computing platform may not eliminate the need for an in-house IT department. It
will be needed to monitor or control the IaaS setup. IT salary expenditure might not reduce
significantly, but other IT expenses can be reduced.
Breakdowns at the IaaS cloud computing platform vendor's can bring your business to the halt
stage. Assess the IaaS cloud computing platform vendor's stability and finances. Make sure
that SLAs (i.e., Service Level Agreement) provide backups for data, hardware, network, and
application failures. Image portability and third-party support is a plus point.
The IaaS cloud computing platform vendor can get access to your sensitive data. So, engage
with credible companies or organizations. Study their security policies and precautions.
Platform as a Service (PaaS) provides a runtime environment. It allows programmers to easily create,
test, run, and deploy web applications. You can purchase these applications from a cloud service
provider on a pay-as-per use basis and access them using the Internet connection. In PaaS, back end
scalability is managed by the cloud service provider, so end- users do not need to worry about
managing the infrastructure
PaaS includes infrastructure (servers, storage, and networking) and platform (middleware,
development tools, database management systems, business intelligence, and more) to support the
web application life cycle.
CHARACTERISTICS OF PAAS
Example: AWS Elastic Beanstalk, Windows Azure, Heroku, Force.com, Google App Engine,
PaaS providers provide the Programming languages, Application frameworks, Databases, and Other
tools:
Programming languages
PaaS providers provide various programming languages for the developers to develop the
applications. Some popular programming languages provided by PaaS providers are Java, PHP, Ruby,
Perl, and Go.
Application frameworks
PaaS providers provide application frameworks to easily understand the application development.
Some popular application frameworks provided by PaaS providers are Node.js, Drupal, Joomla,
WordPress, Spring, Play, Rack, and Zend.
Databases
PaaS providers provide various databases such as ClearDB, PostgreSQL, MongoDB, and Redis to
communicate with the applications.
Other tools
PaaS providers provide various other tools that are required to develop, test, and deploy the
applications.
ADVANTAGES OF PaaS
o Simplified Development
PaaS allows developers to focus on development and innovation without worrying about
infrastructure management.
o Lower risk
No need for up-front investment in hardware and software. Developers only need a PC and an
internet connection to start building applications.
Some PaaS vendors also provide already defined business functionality so that users can
avoid building everything from very scratch and hence can directly start the projects only.
o Instant community
PaaS vendors frequently provide online communities where the developer can get the ideas to
share experiences and seek advice from others.
o Scalability
Applications deployed can scale from one to thousands of users without any changes to the
applications.
Vendor lock-in
One has to write the applications according to the platform provided by the PaaS vendor, so
the migration of an application to another PaaS vendor would be a problem.
Data Privacy
Corporate data, whether it can be critical or not, will be private, so if it is not located within
the walls of the company, there can be a risk in terms of privacy of data.
It may happen that some applications are local, and some are in the cloud. So there will be
chances of increased complexity when we want to use data which in the cloud with the local
data.
SaaS is also known as "On-Demand Software". It is a software distribution model in which services
are hosted by a cloud service provider. These services are available to end-users over the internet so,
the end-users do not need to install any software on their devices to access these services.
Business Services - SaaS Provider provides various business services to start-up the business. The
SaaS business services include ERP (Enterprise Resource Planning), CRM (Customer Relationship
Management), billing, and sales.
Social Networks - As we all know, social networking sites are used by the general public, so social
networking service providers use SaaS for their convenience and handle the general public's
information.
Mail Services - To handle the unpredictable number of users and load on e-mail services, many e-
mail providers offering their services using SaaS.
SaaS pricing is based on a monthly fee or annual fee subscription, so it allows organizations
to access business functionality at a low cost, which is less than licensed applications.
Unlike traditional software, which is sold as a licensed based with an up-front cost (and often
an optional ongoing support fee), SaaS providers are generally pricing the applications using
a subscription fee, most commonly a monthly or annually fee.
One to Many
SaaS services are offered as a one-to-many model means a single instance of the application
is shared by multiple users.
Software as a service removes the need for installation, set-up, and daily maintenance for the
organizations. The initial set-up cost for SaaS is typically less than the enterprise software.
SaaS vendors are pricing their applications based on some usage parameters, such as a
number of users using the application. So SaaS does easy to monitor and automatic updates.
All users will have the same version of the software and typically access it through the web
browser. SaaS reduces IT support costs by outsourcing hardware and software maintenance
and support to the IaaS provider.
Multidevice support
SaaS services can be accessed from any device such as desktops, laptops, tablets, phones, and
thin clients.
API Integration
SaaS services easily integrate with other software or services through standard APIs.
No client-side installation
SaaS services are accessed directly from the service provider using the internet connection, so
do not need to require any software installation.
Security
Actually, data is stored in the cloud, so security may be an issue for some users. However, cloud
computing is not more secure than in-house deployment.
Latency issue
Since data and applications are stored in the cloud at a variable distance from the end-user, there
is a possibility that there may be greater latency when interacting with the application compared
to local deployment. Therefore, the SaaS model is not suitable for applications whose demand
response time is in milliseconds.
Switching SaaS vendors involves the difficult and slow task of transferring the very large data
files over the internet and then converting and importing them into another SaaS also.
The below table shows the difference between IaaS, PaaS, and SaaS –
It provides access to
It provides runtime
resources such as virtual It provides software as a
environments and deployment
machines, virtual storage, service to the end-users.
tools for applications.
etc.
It is used by network
It is used by developers. It is used by end users.
architects.
SaaS Provides
IaaS provides only PaaS provides infrastructure+
Infrastructure+ Platform+
Infrastructure. Platform.
Software
Cloud computing is a style of computing in which business processes, application, data,and any type
of IT resource can be provided as a service to users.
There are the following 4 types of cloud that you can deploy according to the organization'sneeds-
Public Cloud
Private Cloud
Hybrid Cloud
Community Cloud
i. Public Cloud
1. Public Cloud provides a shared platform that is accessible to the general public throughan
Internet connection.
2. Public cloud operated on the pay-as-per-use model and administrated by the thirdparty,
i.e., Cloud service provider.
3. In the Public cloud, the same storage is being used by multiple users at the same time.
5. Amazon Elastic Compute Cloud (EC2), Microsoft Azure, IBM's Blue Cloud, Sun Cloud,and
Google Cloud are examples of the public cloud.
1) Low Cost
Public cloud has a lower cost than private, or hybrid cloud, as it shares the same resources with
alarge number of consumers.
2) Location Independent
Public cloud is location independent because its services are offered through the internet.
3) Save Time
In Public cloud, the cloud service provider is responsible for the manage and maintain data
centers in which data is stored, so the cloud user can save their time to establish connectivity,
deploying new products, release product updates, configure, and assemble servers.
Organizations can easily buy public cloud on the internet and deployed and configured it
remotely through the cloud service provider within a few hours.
5) Business Agility
Public cloud provides an ability to elastically re-size computer resources based on the
organization's requirements.
Public cloud offers scalable (easy to add and remove) and reliable (24*7 available) services to the
users at an affordable cost.
1) Low Security
2) Performance
In the public cloud, performance depends upon the speed of internet connectivity.
3) Less customizable
Private Cloud
• Private cloud provides computing services to a private internal network (within the
organization) and selected users instead of the general public.
• Private cloud provides a high level of security and privacy to data through firewalls and
internal hosting. It also ensures that operational and sensitive data are not accessible to third-
party providers.
• HP Data Centers, Microsoft, Elastra-private cloud, and Ubuntu are the example of a
private cloud.
1) More Control
Private clouds have more control over their resources and hardware than public clouds because
itis only accessed by selected users.
Security & privacy are one of the big advantages of cloud computing. Private cloud improved this
curity level as compared to the public cloud.
3) Improved performance
Private cloud offers better performance with improved speed and space capacity.
1) High cost
The cost is higher than a public cloud because set up and maintain hardware resources are costly.
As we know, private cloud is accessible within the organization, so the area of operations is
limited.
3) Limited scalability
Private clouds are scaled only within the capacity of internal hosted resources.
4) Skilled people
Hybrid Cloud
• Hybrid cloud is a combination of public and private clouds. Hybrid cloud = publiccloud +
private cloud
• The main aim to combine these clouds (Public and Private) is to create a unified,automated,
and well-managed computing environment.
• In the Hybrid cloud, non-critical activities are performed by the public cloud and critical
activities are performed by the private cloud.
• The best hybrid cloud provider companies are Amazon, Microsoft, Google, Cisco, and
NetApp.
It provides flexible resources because of the public cloud and secure resources because
of the private cloud.
2. Cost effective
Hybrid cloud costs less than the private cloud. It helps organizations to save costs for both
infrastructure and application support. It offers the features of both the public as well as the
private cloud. A hybrid cloud is capable of adapting to the demands that each company needs
forspace, memory, and system.
3. Security
Hybrid cloud is secure because critical activities are performed by the private cloud.
4. Risk Management
Hybrid cloud provides an excellent way for companies to manage the risk.
Networking issues
In the Hybrid Cloud, networking becomes complex because of the private and the public cloud.
Infrastructure Compatibility
Reliability
Community Cloud
Community cloud is a cloud infrastructure that allows systems and services to be accessible by a
group of several organizations to share the information. It is owned, managed, and operated by one or
more organizations in the community, a third party, or a combination of them.
Example: Our government organization within India may share computing infrastructure in the cloud
to manage data.
Cost effective
Community cloud is cost effective because the whole cloud is shared between several
organizations or a community.
The community cloud is flexible and scalable because it is compatible with every user. It allows
the users to modify the documents as per their needs and requirement.
Security
Community cloud is more secure than the public cloud but less secure than the private cloud.
Sharing infrastructure
The fixed amount of data storage and bandwidth is shared among all community members.
Suitable for information not very sensitive Suitable for very sensitive information
Varies from
Security Less Highest Medium number of
organization
Depends upon
Anyone can Limited people Medium
Used by number of
access can access accessibility
cooperatives
Partially owned
Owned by two or
by service
Owned by Owned by single more organization
ownership provider and
Customer organization which has
partially by
common goal
consumers
As we know, cloud computing technology is used by both small and large organizations to
store the information in cloud and access it from anywhere at anytime using the internet
connection.
o Front End
o Back End
Front End
The front end is used by the client. It contains client-side interfaces and applications that
are required to access the cloud computing platforms.
The front end includes web servers (including Chrome, Firefox, internet explorer, etc.), thin &
fat clients, tablets, and mobile devices.
Back End
It manages all the resources that are required to provide cloud computing services.
Note: Both front end and back end are connected to others through a network, generally using the
internet connection.
2. Application-The application may be any software or platform that a client wants to access.
3. Service-A Cloud Services manages that which type of service you access according to the
client’s requirement.
i. Software as a Service (SaaS) – It is also known as cloud application services. Mostly, SaaS
applications run directly through the web browser means we do not require to download and
install these applications. Some important example of SaaS is given below –
ii. Platform as a Service (PaaS) – It is also known as cloud platform services. It is quite similar
to SaaS, but the difference is that PaaS provides a platform for software creation, but using
SaaS, we can access software over the internet without the need of any platform.
4. Runtime Cloud-Runtimed- Cloud provides the execution and runtime environment to the
virtual machines.
6. Infrastructure-It provides services on the host level, application level, and network level.
Cloud infrastructure includes hardware and software components such as servers, storage,
network devices, virtualization software, and other storage resources that are needed to
support the cloud computing model.
9. Internet-The Internet is medium through which front end and back end can interact and
communicate with each other.
All of the physical manifestations of cloud computing can be arranged into a layered
picture that encompasses anything from software systems to hardware appliances.
Utilizing cloud resources can provide the “computer horsepower” needed to deliver
services.
This layer is frequently done utilizing a data center with dozens or even millions of stacked
nodes. Because it can be constructed from a range of resources, including clusters and even
networked PCs,
The core middleware, whose goals are to create an optimal runtime environment for
applications and to best utilize resources, manages the physical infrastructure.
Virtualization technologies are employed at the bottom of the stack to ensure runtime
environment modification, application isolation, sandboxing, and service quality.
Application Layer
1. The application layer, which is at the top of the stack, is where the actual cloud apps are
located.
3. This layer consists of different Cloud Services which are used by cloud users.
6. In order for an application to transfer data, the application layer determines whether
communication partners are available. Whether enough cloud resources are accessible for
the required communication is decided at the application layer.
8. The application layer, in particular, is responsible for processing IP traffic handling protocols
like Telnet and FTP. Other examples of application layer systems include web browsers,
SNMP protocols, HTTP protocols, or HTTPS, which is HTTP’s successor protocol.
Platform Layer
2. Users should be able to rely on the platform to provide them with Scalability, Dependability,
and Security Protection which gives users a space to create their apps, test operational
processes, and keep track of execution outcomes and performance.
5. Operating systems and application frameworks make up the platform layer, which is built on
top of the infrastructure layer.
6. The platform layer’s goal is to lessen the difficulty of deploying programmers directly into
VM containers.
7. By way of illustration, Google App Engine functions at the platform layer to provide API
support for implementing storage, databases, and business logic of ordinary web apps.
Infrastructure Layer
1. It is a layer of virtualization where physical resources are divided into a collection of virtual
resources using virtualization technologies like Xen, KVM, and VMware.
2. This layer serves as the Central Hub of the Cloud Environment, where resources are
constantly added utilizing a variety of virtualization techniques.
3. A base upon which to create the platform layer. constructed using the virtualized network,
storage, and computing resources. Give users the flexibility they want.
5. The infrastructure layer sometimes referred to as the virtualization layer, partitions the
physical resources using virtualization technologies like Xen, KVM, Hyper-V, and VMware
to create a pool of compute and storage resources.
6. The infrastructure layer is crucial to cloud computing since virtualization technologies are the
only ones that can provide many vital capabilities, like dynamic resource assignment.
Datacenter Layer
1. In a cloud environment, this layer is responsible for Managing Physical Resources such as
servers, switches, routers, power supplies, and cooling systems.
2. Providing end users with services requires all resources to be available and managed in data
centers.
3. Physical servers connect through high-speed devices such as routers and switches to the
data center.
4. In software application designs, the division of business logic from the persistent data it
manipulates is well-established. This is due to the fact that the same data cannot be
incorporated into a single application because it can be used in numerous ways to support
numerous use cases. The requirement for this data to become a service has arisen with the
introduction of microservices.
5. A single database used by many microservices creates a very close coupling. As a result, it is
hard to deploy new or emerging services separately if such services need database
modifications that may have an impact on other services. A data layer containing many
databases, each serving a single microservice or perhaps a few closely related microservices,
is needed to break complex service interdependencies.
VIRTUALIZATION
1. Virtualization is the "creation of a virtual (rather than actual) version of something, such
as a server, a desktop, a storage device, an operating system or network resources"
3. It does by assigning a logical name to a physical storage and providing a pointer to that
physical resource when demanded.
1. Creation of a virtual machine over existing operating system and hardware is known as
Hardware Virtualization.
3. The machine on which the virtual machine is going to create is known as Host
Machine and that virtual machine is referred as a Guest Machine
Features of virtualization
Virtualization is a key technology in cloud computing that enables the efficient sharing of physical
computing resources among multiple virtual machines (VMs) or containers. It provides several
important features.
Hardware Independence: This means VMs can run on different hardware without requiring
modification, which increases flexibility and portability.
Efficient Resource Utilization: Virtualization optimizes the use of resources by allowing dynamic
allocation and deallocation of CPU, memory, storage, and network resources based on demand. This
improves resource utilization and reduces wastage.
Rapid Deployment: VMs can be provisioned and deployed quickly, often in a matter of minutes,
compared to the time it takes to set up physical servers. This agility is crucial for meeting changing
business needs.
Scalability: Virtualization allows for easy scaling of resources up or down. You can add or remove
VMs as needed to meet changing workloads, making it a crucial feature for cloud services where
elasticity is essential.
Isolation and Security: Each VM is isolated from others, improving security. If one VM is
compromised, it doesn't necessarily impact others on the same host. Security policies and access
controls can be applied at the virtualization layer.
Load Balancing: VMs can be load balanced across multiple physical servers to ensure even resource
distribution and high availability.
Compatibility: VMs can run a variety of operating systems, making it easier to support a diverse set
of applications.
Cost Savings: By consolidating servers, reducing hardware requirements, and improving resource
utilization, virtualization can lead to significant cost savings for organizations.
TYPES OF VIRTUALIZATION
In accordance with different IT workspace, you have multiple forms for virtualization:
Desktop Virtualization
In this type of virtualization, you can run multiple operating systems, each in its own virtual machine
on the same system.
1. Virtual desktop infrastructure runs numerous virtual machines on a central server and then
hosts it to the host system according to the user's requirements. In this way, you can access
any operating system from any device without installing the actual operating system in their
local machine.
2. Local desktop virtualization is the type that runs the hypervisor on the local system, which
allows the user to install multiple operating systems simultaneously without affecting the
host's operating system.
Network Virtualization
In this, the software creates a virtual instance of the network that can be used to manage from
a single console. It forms the abstraction of the hardware components and functions (e.g.,
switches, routers, etc.), simplifying network management.
This kind of virtualization can execute many virtual networks, and each has a separate control
and data plan. It co-occurs on the top of a physical network, and it can be run by parties who
are not aware of one another.
Network virtualization creates virtual networks, and it also maintains a provision of virtual
networks.
Through network virtualization, logical switches, firewalls, routers, load balancers, and
workload security management systems can be created.
1. Software-defined networking (SDN) virtualizes hardware that controls network traffic routing.
2. Network function virtualization (NFV) virtualizes hardware appliances that provide network-
specific functions easier to configure and manage, e.g., firewall, etc.
Server Virtualization:
When the virtual machine software or virtual machine manager (VMM) is directly installed on the
Server system is known as server virtualization.
Server Virtualization is the process of dividing a physical server into several individuals and
isolated virtual servers with software applications. Every virtual server can run its own
Server Virtualization is one of the most cost-effective methods to offer Web hosting services
and uses the existing resources effectively in IT Infrastructure.
If there is no server Virtualization, the servers will only use a tiny section of their processing
power. It will result in idle servers because the workload is divided into one portion of the
network servers.
Data centers have become overcrowded with unutilized servers, resulting in wasting resources
and heavy power consumption.
By having every physical server divided into multiple virtual servers, server virtualization will
authorize each virtual server to behave as a unique device.
Every Virtual Server is capable of running its own application and operating systems.
Usage:
Server virtualization is done because a single physical server can be divided into multiple
servers on the demand basis and for balancing the load.
Storage Virtualization
This virtualization enables all the storage devices on the system to be accessed and be
managed as a single storage unit pool for better maintenance.
The storage virtualization collects all the storage into a single pool from which they can
allocate to any of the VM on the network as required.
This step makes it easier for the hypervisor to assign storage for VMs with max efficiency and
without wasting any hardware resources from our system.
Storage virtualization is the process of grouping the physical storage from multiple network
storage devices so that it looks like a single storage device.
This abstraction allows for more efficient and flexible management of storage resources,
making it easier to allocate, scale, and manage storage capacity and performance.
Pooling: Storage virtualization pools storage resources from various devices into a unified
storage pool. This pool can be dynamically allocated to meet the needs of applications and
users, making efficient use of available capacity.
Administrators can manage storage resources from a single interface rather than dealing with
the intricacies of each individual storage device.
When the virtual machine software or virtual machine manager (VMM) is installed on the
Host operating system instead of directly on the hardware system is known as operating
system virtualization.
Unlike traditional virtualization, where each virtual machine (VM) runs a complete guest
operating system, in OS virtualization, multiple containers share the same underlying
operating system kernel.
This approach provides several benefits, including efficiency, performance, and ease of
management.
3. Isolation: Containers are isolated from one another, meaning that they can't interfere with
each other's operation. This isolation is achieved through mechanisms like namespaces and
cgroups in Linux.
4. Portability: Containers are highly portable. You can create a container on one machine and
run it on another without worrying about compatibility issues, as long as both machines
support the containerization platform (e.g., Docker, Kubernetes).
5. Management: Container orchestration tools, such as Kubernetes, allow you to automate the
deployment, scaling, and management of containers. This simplifies the management of
complex applications and services.
6. Application Development: Containers are a popular choice for application development and
deployment because they make it easy to package and distribute applications and their
dependencies as a single unit. This practice is sometimes referred to as "containerization."
Application Virtualization
o In this virtualization process, the application runs without the need of installing it into the
system, as they run on a virtual environment.
o This can be defined as the type of Virtualization that enables the end-user of an application to
have remote access.
o This is achieved through a server. This server has all personal information and other
applicable characteristics required to use the application.
o The server is accessible through the internet, and it runs on a local workstation. With
Application virtualization, an end-user can run two different versions of the same software or
the same application.
Types of virtualization:
1. Local application virtualization runs on the host device but runs in a virtual environment, not
in the hardware.
2. Application virtualization, the application is on the server-side, and it sends some components
to the host device according to the requirement.
3. Server-based application virtualization runs only on the server-side and sends the only
interface to the client system.
Hardware virtualization
Each virtual machine operates as an independent instance with its own operating system, applications,
and resources, even though they share the underlying hardware.
Hardware virtualization is achieved through a combination of hardware and software components and
is primarily used to improve server efficiency, resource utilization, and manageability.
Hypervisor: The core component of hardware virtualization is the hypervisor. The hypervisor is a
piece of software or firmware responsible for managing and allocating the physical resources of the
host server to multiple virtual machines. It ensures that VMs are isolated from each other and the host
system.
Isolation: VMs are isolated from each other, meaning that a failure or security breach in one VM does
not affect the others. This isolation is crucial for running multiple workloads or operating systems on
the same physical hardware.
Virtual Machines: Each VM can run a different guest operating system, such as Windows, Linux, or
others. VMs are often used to consolidate workloads on a single server, run legacy applications, and
simplify software testing and development.
Resource Allocation: The hypervisor manages the allocation of CPU, memory, storage, and network
resources to each VM. This allocation can be dynamic, allowing resources to be adjusted as needed.
Management Tools: Various management tools and platforms, such as VMware vSphere, Microsoft
Hyper-V, and open-source solutions like KVM and Xen, provide centralized management and
monitoring of virtualized environments.
Cloud Virtualization
1. Infrastructure as a service (IaaS): This service provides help by virtualizing storage, server,
and network-related work, where you can design them according to your requirements.
3. Software as a service (SaaS): As the name suggests, this service provides virtualization for
software-based applications to be hosted on the cloud.
The total cost of cloud computing is The total cost of virtualization is lower than
7
higher than virtualization. Cloud Computing.
PROS OF VIRTUALIZATION
• Cheaper − Virtualization doesn’t need actual hardware elements to be used or installed and
hence, IT infrastructures discover it to be a low-cost system to execute.
• Efficiency − Virtualization also enables automatic updates to the hardware and software by
installing on their third-party provider.
• Portability − It can simply move our virtual machine from one defective host server to the
new host server with a very high success cost.
• Flexibility − Virtualization supports the flexibility to the users to waste their resources.
Whatever the operation cloud software uses for supporting resources to the user can simply be
managed or completed through various steps.
• Cost Efficiency-By using virtualization, organizations can achieve significant cost savings as
they can run multiple VMs on a single server, reducing hardware and maintenance expenses.
• Isolation- Each virtual machine operates independently, providing better isolation and
security between applications and operating systems. If one VM encounters an issue, it does
not affect the others.
• Disaster Recovery- Virtualization facilitates quick and efficient disaster recovery solutions.
VM snapshots and backups can be taken and restored easily, simplifying the recovery process
in case of hardware failure or other emergencies.
• Resource Management- Virtualization allows for granular control over resource allocation
to each VM, ensuring fair distribution and optimal utilization.
CONS OF VIRTUALIZATION
• Single Point of Failure: While virtualization can improve overall system availability, it also
introduces a single point of failure at the host level. If the physical host fails, all the VMs on
that host will be affected.
• Complexity: Managing virtualized environments can be more complex than dealing with a
traditional infrastructure. IT administrators need to be proficient in virtualization technologies
to manage, monitor, and troubleshoot effectively.
• Licensing Costs: Some virtualization solutions may have licensing costs associated with
them, especially for advanced features or enterprise-level deployments.
• Resource Contention: If VMs are not properly managed, they can compete for resources on
the host, leading to performance degradation or contention issues.
• Security Concerns: Although virtualization provides isolation between VMs, there is still a
risk of security vulnerabilities, especially if the host system is compromised.
VIRTUALIZATION TECHNOLOGY
XEN
o It plays a significant role in enabling the creation and management of virtualized instances in
cloud environments.
2. Hardware Virtual Machine (HVM) Support: Xen also supports HVM, which allows for
full virtualization. HVM virtualization enables running unmodified guest operating systems,
which can be particularly useful for compatibility with various OS types.
3. VMWARE
VMware's technology stack is widely adopted in enterprise and cloud environments due to its
robust features, scalability, and extensive ecosystem of products and partners.
VMware's cloud solutions allow for seamless integration and management of on-premises and
cloud resources, enabling organizations to leverage both public and private cloud
environments.
VMware's Multi-Cloud portfolio helps manage workloads across multiple public and private
clouds providing a consistent operational model.
4. MICROSOFT HYPER-V
It allows organizations to create and manage virtual machines (VMs) on Windows servers.
1. Hypervisor Virtualization:
Hyper-V is a Type 1 hypervisor, which means it runs directly on the hardware without the need for a
host operating system. This provides efficient resource management and isolation for VMs.
Hyper-V is integrated with Windows Server operating systems, making it a popular choice for
organizations that rely on Windows-based servers. It is available as a feature in Windows Server
editions.
3. Server Virtualization:
Hyper-V enables server virtualization, allowing multiple VMs to run on a single physical server. This
technology optimizes hardware utilization and enhances scalability and redundancy.
4. Hyper-V Replica:
Hyper-V Replica provides disaster recovery and replication capabilities, allowing VMs to be
replicated to another Hyper-V host or site for fault tolerance.
5. Security Features:
Hyper-V includes security features like shielded VMs, which enhance VM security by encrypting their
contents.
PARAVIRTUALIZATION
In paravirtualization, the guest operating systems are aware of the virtualization environment
and are specifically adapted or "Para virtualized" to interact with the hypervisor.
1. Hypervisor: Paravirtualization typically relies on a Type 1 hypervisor (a thin software layer that
runs directly on the physical hardware) or a Type 2 hypervisor (a software layer that runs on top
of a host operating system).
2. Modified Guest Operating Systems: In paravirtualization, the guest operating systems need to
be modified to be aware of the virtualization environment. These modifications typically involve
replacing certain low-level kernel functions and device drivers to work with the hypervisor.
3. Virtual Hardware Interfaces: Instead of presenting virtualized hardware that emulates physical
hardware, as in full virtualization, paravirtualization provides guest operating systems with
virtual hardware interfaces that are optimized for the hypervisor. These interfaces allow the guest
OS to communicate directly with the hypervisor for tasks like I/O and memory management.
6. Compatibility: Paravirtualization is most effective when both the hypervisor and guest operating
systems are designed to work together. This may limit the range of guest operating systems that
can be used in a paravirtualized environment.
Full Virtualization
In full virtualization, each VM operates as if it has its own dedicated hardware, including its
own CPU, memory, and I/O devices.
This approach provides a high level of isolation and compatibility for running various
operating systems on the same physical hardware.
Popular hypervisors that support full virtualization include VMware, Microsoft Hyper-V.
These hypervisors enable organizations to consolidate physical servers, improve resource
utilization, and achieve cost savings while maintaining compatibility with a wide range of
guest operating systems little to no downtime. This is useful for load balancing and
maintenance.
ANEKA CLOUD
APPLICATION PLATFORM
CLOUD COMPUTING
UINT-3
Aneka Cloud is a platform that facilitates the development, deployment, and management of
distributed applications on cloud infrastructure. Here's an overview of the framework:
1. Distributed Application Management: Aneka Cloud provides tools and frameworks for
managing distributed applications, allowing developers to easily deploy and scale their
applications across cloud resources.
2. Resource Management: It includes features for managing cloud resources such as virtual
machines, containers, and storage. This involves resource provisioning, monitoring, and
optimization to ensure efficient utilization of cloud resources.
3. Task Scheduling: Aneka Cloud includes task scheduling algorithms that allocate computational
tasks to available resources based on factors like resource availability, task requirements, and
performance objectives. This ensures optimal resource utilization and application performance.
4. Service Orchestration: The platform facilitates the orchestration of services and components
within distributed applications, enabling the coordination and management of complex
workflows and interactions between different application modules.
5. Middleware Abstraction: Aneka Cloud abstracts away the complexities of underlying cloud
infrastructure and middleware technologies, providing developers with a higher-level interface
for building and managing distributed applications.
6. Scalability and Elasticity: It supports auto-scaling and elasticity features, lowing applications to
dynamically scale up or down in response to changing workload demands, ensuring high
availability and efficient resource utilization.
7. Fault Tolerance and Reliability: Aneka Cloud incorporates mechanisms for fault tolerance and
reliability, including replication, checkpointing, and recovery strategies to ensure the robustness
and availability of distributed applications in the face of failures or disruptions.
8. Security and Compliance: The platform includes security features and mechanisms for ensuring
the confidentiality, integrity, and availability of data and resources within distributed applications,
as well as compliance with relevant regulatory requirements and standards.
9. Integration and Interoperability: Aneka Cloud supports integration with existing cloud
platforms, services, and technologies, as well as interoperability with other middleware
frameworks and development tools, enabling seamless integration into existing IT ecosystems.
Overall, Aneka Cloud provides a comprehensive framework for building, deploying, and managing
distributed applications on cloud infrastructure, with features for resource management, task
scheduling, service orchestration, scalability, fault tolerance, security, and integration.
The Aneka container constitutes the building blocks of Aneka Clouds and represents the runtime
machinery available to services and applications. The container, the unit of deployment in Aneka
Clouds, is a lightweight software layer designed to host services and interact with the underlying
operating system and hardware. The main role of the container is to provide a lightweight environment
in which to deploy services and some basic capabilities such as communication channels through
which it interacts with other nodes in the Aneka Cloud.
The services installed in the Aneka container can be classified into three major categories:
Fabric Services
Foundation Services
Application Services
1. Fabric services:
Fabric Services define the lowest level of the software stack representing the Aneka Container. They
provide access to the resource-provisioning subsystem and to the monitoring facilities implemented in
Aneka. Resource-provisioning services are in charge of dynamically providing new nodes on demand
by relying on virtualization technologies, while monitoring services allow for hardware profiling and
implement a basic monitoring infrastructure that can be used by all the services installed in the
container.
• Profiling and monitoring:- Profiling and monitoring services are mostly exposed through the
Heartbeat, Monitoring, and Reporting Services. The first makes available the information that
is collected through the PAL; the other two implement a generic infrastructure for monitoring
the activity of any service in the Aneka Cloud.
2. Foundation services:
Foundation Services are related to the logical management of the distributed system built on top of the
infrastructure and provide supporting services for the execution of distributed applications. All the
supported programming models can integrate with and leverage these services to provide advanced
and comprehensive application management.
• Accounting, billing, and resource pricing:- Accounting Services keep track of the status of
applications in the Aneka Cloud. The collected information provides a detailed breakdown of
the distributed infrastructure usage and is vital for the proper management of resources.
3. Application Services:-
In the context of Aneka Cloud, application services refer to the various components and
functionalities provided by the Aneka platform to support the development, deployment, and
management of distributed applications. These services may include task scheduling, resource
management, data management, security, monitoring, and scalability features, among others.
• Distributed Threads: Distributed threads are threads of execution that run across multiple
computing nodes in a distributed system. In the context of Aneka Cloud, distributed threads
would be threads managed by the Aneka platform that execute concurrently on multiple nodes
within the cloud infrastructure. Aneka abstracts the complexities of managing these
distributed threads, allowing developers to write parallel and distributed applications without
having to explicitly manage low-level details of distributed computing.
• Bag of Tasks: "Bag of tasks" (BOT) is a parallel programming paradigm used for distributing
and executing independent tasks across multiple processing units, such as CPUs or compute
nodes in a distributed system. It is often employed in high-performance computing (HPC),
grid computing, and cloud computing environments to efficiently utilize available resources
for executing large-scale computational workloads.
Aneka is primarily a platform for developing distributed applications for clouds. As a software
platform it requires infrastructure on which to be deployed; this infrastructure needs to be managed.
Infrastructure management tools are specifically designed for this task, and building clouds is one of
the primary tasks of administrators. Aneka supports various deployment models for public, private,
and hybrid clouds.
1. Infrastructure Organization
2. Logical Organization
The Management Console manages multiple repositories and select the one that
best suits be specific deployment.
2. Logical organization
The logical organization of Aneka Clouds can be very diverse, since it strongly depends on the
configuration selected for each of the container instances belonging to the Cloud.
Here is a scenario that has master-worker configuration with separate nodes for storage, the Figure
Portray
Heartbeat Service
Logging Service
Reservation Service
Accounting Service
A private deployment mode is mostly constituted by local physical resources and infrastructure
management software providing access to a local pool of nodes, which might be virtualized. In this
scenario Aneka Clouds are created by harnessing a heterogeneous pool of resources such has desktop
machines, clusters, or workstations. These resources can be partitioned into different groups, and
Aneka can be configured to leverage these resources according to application needs. Moreover,
leveraging the Resource Provisioning Service, it is possible to integrate virtual nodes provisioned
from a local resource pool managed by systems such as XenServer, Eucalyptus, and OpenStack
Cloud deployment mode features the installation of Aneka master and worker nodes over a
completely virtualized infrastructure that is hosted on the infrastructure of one or more resource
providers such as Amazon EC2 or GoGrid. In this case it is possible to have a static deployment where
the nodes are provisioned beforehand and used as though they were real machines. This deployment
merely replicates a classic Aneka installation on a physical infrastructure without any dynamic
provisioning capability. More interesting is the use of the elastic features of IaaS providers and the
creation of a Cloud that is completely dynamic.
The hybrid deployment model constitutes the most common deployment of Aneka. In many cases,
there is an existing computing infrastructure that can be leveraged to address the computing needs of
applications. This infrastructure will constitute the static deployment of Aneka that can be elastically
scaled on demand when additional resources are required.
This scenario constitutes the most complete deployment for Aneka that is able to leverage all the
capabilities of the framework:
Resource Reservation
Workload Partitioning
Aneka SDK
Aneka offers APIs for developing applications on existing or new programming models and creating
services for integration into the Aneka Cloud. The SDK supports application and programming model
development through the Application Model and provides the infrastructure for services via the
Service Model. This dual framework enhances Aneka’s features and simplifies the development
process.
1. Application model
Aneka facilitates distributed execution in the Cloud by employing programming model abstractions.
These programming models serve as both a conceptual framework for developers and provide the
necessary runtime support for program execution on the Aneka platform. The Application Model
serves as a foundational layer, defining the minimum set of APIs shared across all programming
models. It acts as a common ground for representing and programming distributed applications on
Aneka. Furthermore, the Application Model is tailored to meet the specific requirements and features
of individual programming models, allowing for a specialized and efficient development approach.
2. Service model
The Aneka Service Model outlines essential criteria for implementing services in the Aneka Cloud.
Services, hosted in a container, must adhere to the IService interface, providing properties like name
and status, control operations, and message handling. The service life cycle encompasses states from
initialization to shutdown. A default base class, ServiceBase, simplifies implementation, offering
features like basic property support, control operation implementation, built-in client infrastructure,
and service monitoring. Aneka employs a strongly- typed message-passing model, and developers can
dynamically inject service clients into applications. Advanced configuration capabilities enhance
service integration within the container workflow.
Management Tools
2. Platform Management: Aneka's platform management tools focus on the management of the
cloud platform itself. This includes features such as scheduling, load balancing, fault
tolerance, and security. Platform management tools ensure that cloud applications are
deployed and executed efficiently, taking advantage of the underlying infrastructure resources
while meeting performance and reliability requirements.
3. Application Management: Aneka provides tools for managing cloud applications throughout
their lifecycle. This includes features for application deployment, monitoring, debugging, and
optimization. Application management tools in Aneka help developers and administrators
deploy and operate cloud applications effectively, ensuring smooth operation and efficient
resource utilization.
CLOUD PLATFORM
IN INDUSTRY
CLOUD COMPUTING
UNIT-4
AWS stands for Amazon Web Services. It's a cloud computing platform provided by Amazon
that offers a variety of services like compute, storage, communication, and Additional services
over the internet, allowing individuals and organizations to build and manage their applications
and services without having to invest in physical infrastructure.
Compute services
Compute services are a type of cloud computing service that provides users with
virtualized computing resources, such as processing power, memory, and storage over the
internet.
These services enable users to deploy and manage virtual servers known as instances.
These services provide a flexible and scalable platform for running applications,
managing workload, and executing computational tasks without the need of physical
infrastructure.
One of the key benefits of compute services is their ability to dynamically allocate and
scale resources based on demand, allowing users to adjust their computing capacity in
real-time to match workload requirements.
Storage services:
In AWS (Amazon Web Services), storage services are designed to provide scalable, durable, and
cost-effective storage solutions for a wide range of use cases. Some key storage services offered
by
AWS include:
Amazon Simple Storage Service (S3): S3 is a highly scalable object storage service that
allows users to store and retrieve any amount of data from anywhere on the web. It offers
features such as encryption, versioning, and lifecycle management, making it suitable for
a variety of storage needs, including backup, archiving, and content distribution.
Amazon Elastic Block Store (EBS): EBS provides block-level storage volumes that can be
attached to EC2 (Elastic Compute Cloud) instances to provide persistent storage for
applications. It offers features such as snapshots and encryption, making it suitable for
databases, file systems, and other transactional workloads.
Amazon Elastic File System (EFS): EFS is a scalable and fully managed file storage
service that provides a simple and scalable file system for EC2 instances. It supports the
NFS (Network File System) protocol and can be accessed concurrently from multiple
EC2 instances, making it ideal for shared file storage and content management.4.
Amazon Glacier: Glacier is a low-cost storage service designed for long-term archival
and backup of data that is infrequently accessed. It offers features such as flexible
retrieval options and encryption, making it suitable for compliance, regulatory, and
disaster recovery requirements.
Communication services:
In AWS (Amazon Web Services), communication services encompass a variety of tools and
platforms that enable users to establish, manage, and optimize communication within their
applications and systems. Some key communication services offered by AWS include:
1. Amazon Simple Notification Service (SNS): SNS is a fully managed messaging service
that allows users to send notifications to individuals or groups via email, SMS, mobile
push, or HTTP endpoints. It provides scalable, reliable, and cost-effective communication
capabilities for event-driven architectures.
2. Amazon Simple Queue Service (SQS): SQS is a fully managed message queuing service
that enables decoupling of application components by providing a reliable and scalable
mechanism for message communication between distributed systems. It helps in building
fault-tolerant and scalable applications.
3. Amazon Simple Email Service (SES): SES is a cloud-based email sending service that
enables users to send transactional and marketing emails at scale. It provides features such as
email validation, content filtering, and analytics to ensure high deliverability and
compliance with email regulations.
4. Amazon Chime: Chime is a secure and reliable online meeting and conferencing service
that allows users to conduct video conferences, online meetings, and screen sharing
sessions. It provides features such as chat, file sharing, and integration with calendar and
scheduling tools.
5. Amazon Connect: Connect is a cloud-based contact center service that enables businesses to
6. set up and manage customer contact centers in the cloud. It provides features such as
intelligent routing, interactive voice response (IVR), and real-time analytics to deliver
seamless customer experiences.
Additional services:
AWS offers a wide range of additional services beyond its core cloud capabilities.
These additional services cover various areas such as analytics, networking, content
delivery, Internet of Things (IoT), developer tools, end-user computing, and supporting
services for observability of databases.
Some examples of these additional services include Amazon API Gateway, AWS
Managed Services, Amazon Athena, AWS CodeStar, Amazon Workspaces, and Amazon
Event Bridge.
Google App Engine’s architecture in Cloud Computing is both scalable and robust, designed to
cater to a diverse range of applications and services. Here's a concise breakdown of its structure
below:
1. Datastore: Serving as the central data management system in Cloud Computing, Google App
Engine's Datastore is a NoSQL database renowned for its scalability. What sets it apart is its
dynamic nature, adapting in real-time to the demands of the application. Whether it's a
minor data retrieval or a massive data influx, the datastore scales on-the-fly, ensuring that
data remains consistently accessible and safeguarded against potential threats.
2. Task queues: In any application, there exist tasks that don’t necessitate immediate user
feedback. Google App Engine's Task queues are designed to manage such background
operations. By queuing these tasks, they're executed asynchronously, optimising
application performance and ensuring users aren't bogged down with processing delays.
4. Blobstore: In today's digital age, applications often deal with voluminous data, be it high-
definition images, videos, or other large files. The Blobstore is Google App Engine's
dedicated solution for such requirements. By efficiently managing and storing these large
objects, it ensures that the primary datastore isn’t overwhelmed, maintaining a
harmonious data ecosystem.
5. Automatic scaling: One of Google App Engine’s crowning features, Automatic Scaling,
epitomises proactive resource management. By continually monitoring application traffic
and user requests, it dynamically scales resources. This ensures optimal performance
even during unexpected traffic surges, eliminating the need for manual adjustments and
guaranteeing a consistently smooth user experience.
6. Integrated services: Google App Engine isn't an isolated entity but a cog in the vast
machinery of Google Cloud Computing services. Its ability to seamlessly mesh with other
services, from Data Analytics platforms to state-of-the-art Machine Learning tools,
transforms it from a mere hosting platform to a comprehensive, integrated Cloud solution.
This interoperability enhances the capabilities of applications hosted on Google App Engine,
giving Developers a richer toolset to work with.
Google App Engine is adept at embracing a variety of programming languages. Whether you're
fluent in Java, Python, PHP, Go, or numerous others, Google App Engine has got you covered.
This multifaceted support ensures that developers aren't constrained by language limitations.
Instead, they can pick and choose based on their comfort and expertise, making the development
process smooth and intuitive.
Automated management
Looking deeper into Google App Engine's automated management reveals a world where manual
intervention is minimised. Google App Engine takes the reins when it comes to managing
applications. From maintaining the core infrastructure to adeptly routing traffic, overseeing
software patches, and ensuring a robust failover system, this tool does it all. For Developers and
businesses, this translates to a significant reduction in operational intricacies and the hours usually
spent on infrastructure oversight.
Scalability
Google App Engine has a one of a kind scalability feature. Imagine an application that
intelligently scales up or down in response to the ebb and flow of user traffic, ensuring consistent
performance without manual tweaks. Google App Engine's automatic scaling discerns the needs
of the application based on traffic and usage patterns, empowering it to handle even unexpected
surges in demand effortlessly.
Integrated environment
The synergy between various Google Cloud Computing services is palpable when you use
Google App Engine. A harmonious integration with platforms like Cloud Datastore, Cloud
Storage, and Google Workspace paves the way for a holistic development environment. This not only
streamlines the development process but also offers a plethora of tools and services at one's
fingertips. Such an integrated approach fosters efficiency, making it simpler to both develop and
sustain applications over time.
Google App Engine (GAE) is a Platform as a Service (PaaS) offering from Google Cloud
Platform (GCP) that allows developers to build and deploy scalable web applications and
services. The application lifecycle in Google App Engine typically involves several stages, from
development to deployment and maintenance. Let's break down the application lifecycle in
detail:
Development:
Developers write code for their applications using programming languages such as
Python, Java, Go, or Node.js.
During development, developers can simulate the App Engine environment locally to test
their applications before deployment.
Configuration:
Configuration also includes setting up services like Data store, Cloud Storage, or
other Google Cloud services that the application may use.
Testing:
Developers perform unit tests, integration tests, and sometimes load testing to ensure
that the application functions as expected under various conditions.
Deployment:
Once the application is developed and tested, it is ready for deployment.
During deployment, the application's code and configuration files are uploaded to Google
Cloud Platform, where they are managed and executed by the App Engine infrastructure.
Scaling:
Google App Engine automatically scales the application based on incoming traffic. It can
handle sudden spikes in traffic by dynamically allocating more resources to instances of the
application.
After deployment, developers monitor the application's performance, availability, and health
using monitoring tools provided by Google Cloud Platform, such as Stack driver Monitoring.
Regular maintenance tasks include updating dependencies, applying security patches, and
optimizing performance.
App Engine supports versioning, allowing developers to deploy multiple versions of their
application concurrently.
This enables A/B testing, canary releases, and easy rollback to a previous version if
necessary.
If the application's usage decreases or if it's no longer needed, developers can scale down or
decommission the application.
Scaling down involves adjusting scaling settings or stopping instances to reduce costs.
Decommissioning involves removing the application and its associated resources from
Google Cloud Platform.
Microsoft AzureS
Microsoft Azure is a cloud computing platform and a collection of cloud services offered by
Microsoft. It provides a wide range of cloud-based services, including computing, storage,
analytics, networking, databases, machine learning, artificial intelligence, Internet of Things
(IoT), and more. Azure enables businesses to build, deploy, and manage applications and
services through Microsoft's global network of data centers.
Microsoft Azure is a cloud computing platform and a collection of cloud services offered by
Microsoft. It provides a wide range of cloud-based services, including computing, storage,
Core Concepts
Azure, Microsoft's cloud computing platform, encompasses several core concepts essential
for understanding its functionality and structure:
Azure App Service: Platform as a Service (PaaS) offering for building, deploying,
and scaling web, mobile, and API applications.
Azure Functions: Serverless compute service for running event-driven code without
provisioning or managing servers.
2. Storage Services: Azure provides various storage options to store, access, and manage data
at scale. These services include:
Azure Blob Storage: Scalable object storage for unstructured data such as
documents, images, videos, and logs.
Azure File Storage: Fully managed file shares in the cloud accessible via Server
Message Block (SMB) protocol.
Azure Table Storage: NoSQL key-value store suitable for storing structured data.
Azure Disk Storage: Persistent block storage for Azure Virtual Machines and
containerized applications.
Azure Virtual Network (VNet): Isolated network environment in Azure for securely
connecting Azure resources and on-premises networks.
Azure Load Balancer: Provides high availability and scalability by distributing incoming
traffic across multiple VM instances.
Azure VPN Gateway: Enables secure connectivity between Azure Virtual Network and
on- premises networks using VPN tunnels.
Azure ExpressRoute: Dedicated private connection to Azure, bypassing the internet for
enhanced security and reliability.
Azure DNS: Managed DNS hosting service for domain name resolution.
4. Other Services: This category encompasses various additional Azure services across
different domains:
Databases: Azure offers a range of fully managed database services including Azure
SQL Database, Azure Cosmos DB, Azure Database for MySQL, Azure Database for
PostgreSQL, and more.
Analytics: Services such as Azure Synapse Analytics (formerly SQL Data Warehouse),
Azure Data Lake Analytics, and Azure HDInsight for big data analytics and processing.
AI and Machine Learning: Azure Cognitive Services, Azure Machine Learning, and
Azure Databricks for building AI-driven applications and solutions.
Internet of Things (IoT): Azure IoT Hub, Azure IoT Central, and Azure IoT Edge for
connecting, monitoring, and managing IoT devices and data.
Developer Tools: Azure DevOps, Azure DevTest Labs, and Visual Studio Team
Services for application lifecycle management, continuous integration, and deployment.
SQL Azure:
SQL Azure, now known as Azure SQL Database, is a fully managed relational database service
provided by Microsoft Azure. It is a cloud-based version of Microsoft SQL Server, the popular
relational database management system (RDBMS). Azure SQL Database allows users to create,
manage, and scale relational databases in the cloud without the need to manage underlying
infrastructure.
Windows Azure Platform Appliance: The Windows Azure Platform Appliance was a product
offered by Microsoft that allowed customers to run Azure services in their own data centers. It was
essentially a pre-configured bundle of hardware and software components that enabled
organizations to create private or hybrid cloud environments using Azure technologies.
1. Hardware
2. Software
3. Management Tools
4. Customization and Integration
CLOUD
APPLICATIONS
CLOUD COMPUTING
UNIT - 5
CLOUD APPLICATIONS
Scientific Applications-Healthcare
ECG analysis in the cloud refers to the utilization of cloud computing resources and services to
process and analyze the ECG data.
ECG data analysis the system is designed to facilitate self-monitoring for patients and to
help physicians make diagnoses and manage the records of multiple patients conveniently.
Data Collection and Storage: The collected data is securely transmitted to the cloud for
storage and further analysis.
Data Preprocessing: ECG data often requires preprocessing before analysis to remove noise.
Signal Processing and Analysis: Cloud based signal processing algorithms can be applied
to analyze ECG data for various purposes.
Real Time Monitoring and alerting: Cloud platforms enables real time monitoring of ECG
data stream from devices or monitoring system.
Security and privacy: Cloud providers implement robust security measures to protect the
sensitive ECG data.
Scalability: Cloud services can scale up and down based on demand accommodating, varying
workloads efficiently.
Accessibility and Remote Collaboration: Enables remote access to data of analysis tools,
facilitating collaboration among healthcare professionals and researches.
Security and privacy concern: Raises concern regarding the security and privacy of
sensitive ECG data stored and processed in the cloud.
Biological Application
Gene expression refers to the activity of genes in a cell, which can give us insights into various
biological processes.
In the context of cancer diagnosis, analyzing gene expression data helps us understand the
genetic changes that occur in cancer cells.
Cloud computing is a technology that allows us to store and process large amounts of data on
remote servers.
By using cloud computing for gene expression analysis, we can leverage (means taking benefit)
its scalability and accessibility to efficiently analyze and interpret the data, leading to
improved cancer diagnosis and treatment.
It is more secured and privacy is maintained when dealing with sensitive patient information.
Satellite image processing is one of the significant computational methods which finds
applications in military, agriculture, natural disaster prevention, natural resources
identification.
Satellite Image Processing is an important field in research and development and consists of
the images of earth and satellites taken by the means of artificial satellites. Firstly, the
photographs are taken in digital form and later are processed by the computers to extract the
information. Statistical methods are applied to the digital images and after processing the
various discrete surfaces are identified by analyzing the pixel values.
• Geometric Correction: Geometric correction is a key technology for remote sensing image
processing and application. The usual sensor models are based on collinear conditional
equations and establish a strict imaging geometry model.
• Spectral filtering: Spectral filtering is most commonly used to either select or eliminate
information from an image based on the wavelength of the information. This filtering is
usually affected by passing the light through a glass or plastic window.
• Terrain correction: Terrain correction corrects geometric distortions that lead to geolocation
errors by moving image pixels into the proper spatial relationship with each other based on a
Digital Elevation Model (DEM).
Global Coverage: Satellite images provide a comprehensive view of the Earth's surface,
allowing us to monitor and analyze vast areas, including remote and inaccessible regions.
Timely and Regular Updates: Satellites capture images on a regular basis, providing up-to-
date information for monitoring and analysis. This is particularly useful for tracking dynamic
phenomena like weather patterns or land use changes.
Historical Analysis: By analyzing satellite images over time, we can study long-term trends,
identify patterns, and understand the evolution of natural phenomena or human activities.
Remote Sensing: Satellite images provide valuable insights into areas that are difficult to
access, such as disaster-stricken regions or conflict zones, aiding in disaster response and
humanitarian efforts.
Cost: Acquiring and processing satellite imagery can be expensive, especially for high-
resolution images from commercial satellites.
Limitations: Satellite images can be affected by factors like cloud cover, atmospheric
interference, and varying image quality, which may impact the accuracy and reliability of the
data.
Spatial and Temporal Resolution: Satellite images may not always provide the desired level of
detail due to limitations in spatial resolution. Additionally, the frequency of image capture
may not be sufficient for certain time-sensitive applications.
Social Networking
• Social Networking refers to using internet based social media sites to stay connected with
friends, family, colleagues, or customers.
• Social networks reflect real world relationships that allow users to share information and
form connections, essentially creating dynamic virtual communities.
• Snapchat
Media Application
o The Media applications in cloud computing include videos and audio streaming, online
gaming, cloud based audio recording.
o Cloud computing provides a scalable and flexible environment for storing, processing, and
delivering media content.
o You can easily store and access your photos, videos, and music from any device with an
internet connection.
o It also allows for collaborative editing and sharing of media files, making it convenient for
teams or friends to work together on creative projects.
o Cloud-based media applications often offer advanced features like automatic backup,
intelligent organization, and seamless integration with other services.
It is defined as the games that can connect and compete with players from around the globe
seamlessly.
This allows players to interact with others from a much greater distance.
By multiplayer gaming we can learn leadership skills and get better in team work.
o Pub-Gs
o Free Fire
o League of Legends
o Apex Legends
o Dota 2
Customer relationship management (CRM) is a technology for managing all your company’s
relationships and interactions with customers and potential customers. The goal is simple:
Improve business relationships to grow your business.
A CRM system can give you a clear overview of your customers. you can see everything in
one place a simple, customizable dashboard that can tell you a customer’s previous history
with you, the status of their orders, any outstanding customer service issues, and more.
Enterprise resource planning, the management of all the information and resources involved
in a company's operations by means of an integrated computer system.
ERP software coordinates the flow of data between a company’s business processes. It’s
capable of linking a company’s financials, supply chain, operations, commerce, reporting,
manufacturing, and human resources activities on one platform.
Productivity:
Productivity is about leveraging the flexibility, scalability, collaboration, and cost- efficiency
offered by cloud-based services to streamline workflows, enhance collaboration, and achieve
goals more efficiently.
For consumers, cloud-based productivity applications like note-taking apps, task management
tools, and calendar apps help individuals stay organized, manage their time effectively, and
accomplish tasks more efficiently. These applications can be accessed across devices,
allowing users to stay productive on the go.
Additionally, cloud-based storage solutions ensure that important files and documents are
securely backed up and accessible from any device, reducing the risk of data loss and increasing
productivity by providing a centralized location for information.
Overall, cloud computing enhances productivity in both business and consumer applications
by providing flexibility, accessibility, collaboration, and efficient data management.