UNIT 1
UNIT 1
UNIT 1
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
3) Excellent accessibility
Cloud allows us to 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.
4) Low maintenance cost
Cloud computing reduces both hardware and software maintenance costs for
organizations.
5) Mobility
Cloud computing allows us to easily access all cloud data via mobile.
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
3) Limited Control
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.
Accessibility: Ability to run via an internet browser 24/7 from any device
Operational Management: No installation, equipment updates or
traditional licensing management
Cost Effective: No upfront hardware costs and flexible payment methods
such as pay-as-you-go models
Scalability: Easily scale a solution to accommodate changing needs
Data Storage: Data is routinely saved in the cloud
Analytics: Access to data reporting and intelligence tools
Increase Security: SaaS providers invest heavily in security technology and
expertise
GoToMeeting.
Distributed Systems:
It is a composition of multiple independent systems but all of them are
depicted as a single entity to the users. The purpose of distributed systems
is to share resources and also use them effectively and efficiently.
Distributed systems possess characteristics such as scalability, concurrency,
continuous availability, heterogeneity, and independence in failures. But
the main problem with this system was that all the systems were required
to be present at the same geographical location. Thus to solve this
problem, distributed computing led to three more types of computing and
they were-Mainframe computing, cluster computing, and grid computing.
Mainframe computing:
Mainframes which first came into existence in 1951 are highly powerful and
reliable computing machines. These are responsible for handling large data
such as massive input-output operations. Even today these are used for
bulk processing tasks such as online transactions etc. These systems have
almost no downtime with high fault tolerance. After distributed computing,
these increased the processing capabilities of the system. But these were
very expensive. To reduce this cost, cluster computing came as an
alternative to mainframe technology.
Cluster computing:
In 1980s, cluster computing came as an alternative to mainframe
computing. Each machine in the cluster was connected to each other by a
network with high bandwidth. These were way cheaper than those
mainframe systems. These were equally capable of high computations.
Also, new nodes could easily be added to the cluster if it was required.
Thus, the problem of the cost was solved to some extent but the problem
related to geographical restrictions still pertained. To solve this, the
concept of grid computing was introduced.
Grid computing:
Virtualization:
It was introduced nearly 40 years back. It refers to the process of creating a
virtual layer over the hardware which allows the user to run multiple
instances simultaneously on the hardware. It is a key technology used in
cloud computing. It is the base on which major cloud computing services
such as Amazon EC2, VMware vCloud, etc work on. Hardware virtualization
is still one of the most common types of virtualization.
Web 2.0:
It is the interface through which the cloud computing services interact with
the clients. It is because of Web 2.0 that we have interactive and dynamic
web pages. It also increases flexibility among web pages. Popular examples
of web 2.0 include Google Maps, Facebook, Twitter, etc. Needless to say,
social media is possible because of this technology only. In gained major
popularity in 2004.
Service orientation:
It acts as a reference model for cloud computing. It supports low-cost,
flexible, and evolvable applications. Two important concepts were
introduced in this computing model. These were Quality of Service (QoS)
which also includes the SLA (Service Level Agreement) and Software as a
Service (SaaS).
Utility computing:
It is a computing model that defines service provisioning techniques for
services such as compute services along with other major services such as
storage, infrastructure, etc which are provisioned on a pay-per-use basis.
Parallel Processing:
Processing of multiple tasks simultaneously on multiple processors is called
parallel processing.
The parallel program consists of multiple active processes ( tasks)
simultaneously solving a given problem.
A given task is divided into multiple subtasks using a divide-and-conquer
technique, and each subtask is processed on a different central processing
unit (CPU).
Save time and money: More resources at a task will shorten its time for
completion, with potential cost savings.
Provide concurrency: Single computing resources can only do one task at a
time.
Serial computing limits: Transmission speeds depend directly upon
hardware.
Distributed computer:
Distributed systems offer many benefits over centralized systems, including the
following:
Scalability: The system can easily be expanded by adding more machines as
needed.
Redundancy: Several machines can provide the same services, so if one is
unavailable, work does not stop. Additionally, because many smaller
machines can be used, this redundancy does not need to be prohibitively
expensive.
telecommunication networks:
o telephone networks and cellular networks
o computer networks such as the Internet
network applications:
World Wide Web and peer-to-peer networks
massively multiplayer online games and virtual reality communities,
real-time process control:
aircraft control systems,
industrial control systems
While both distributed computing and parallel systems are widely available these
days, the main difference between these two is that a parallel computing system
consists of multiple processors that communicate with each other using a shared
memory, whereas a distributed computing system contains multiple processors
connected by a communication network.
1. On-demand self-services:
The Cloud computing services does not require any human administrators,
user themselves are able to provision, monitor and manage computing
resources as needed.
The Computing services are generally provided over standard networks and
heterogeneous devices.
3. Rapid elasticity:
The cloud computing capabilities can be released elastically. It enables you
to scale the cloud computing services inward and outward, and it helps to
be commensurate with the dynamic demand posted by the end-users.
4. Resource pooling:
5. Measured service:
The resource utilization is tracked for each application and occupant, it will
provide both the user and the resource provider with an account of what
has been used. This is done for various reasons like monitoring billing and
effective use of resource.
Elasticity in cloud:
Сloud elasticity is a system's ability to manage available resources
according to the current workload requirements dynamically.
The Elasticity refers to the ability of a cloud to automatically expand or
compress the infrastructural resources on a sudden-up and down in the
requirement so that the workload can be managed efficiently. This
elasticity helps to minimize infrastructural cost.
This is not applicable for all kind of environment, it is helpful to address
only those scenarios where the resources requirements fluctuate up and
down suddenly for a specific time interval. It is not quite practical to use
where persistent resource infrastructure is required to handle the heavy
workload.
It is most commonly used in pay-per-use, public cloud services. Where IT
managers are willing to pay only for the duration to which they consumed
the resources.
Example:
Consider an online shopping site whose transaction workload increases during
festive season like Christmas. So for this specific period of time, the resources
need a spike up. In order to handle this kind of situation, we can go for Cloud-
Elasticity service rather than Cloud Scalability. As soon as the season goes out, the
deployed resources can then be requested for withdrawal.
On‐demand Provisioning:
Cloud provisioning means allocating a cloud service provider’s resources to a
customer. It is a key feature of cloud computing. It refers to how a client gets
cloud services and resources from a provider. The cloud services that customers
can subscribe to include infrastructure-as-a-service (IaaS), software-as-a-service
(SaaS), and platform-as-a-service (PaaS) in public or private environments. In The
Cloud service providers provide various applications in the field of art, business,
data storage and backup services, education, entertainment, management, social
networking, etc.
The most widely used cloud computing applications are given below -
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
Adobe creative cloud is made for designers, artists, filmmakers, and other creative
professionals. It is a suite of apps which includes PhotoShop image editing
programming, Illustrator, InDesign, TypeKit, Dreamweaver, XD, and Audition.
2. Business Applications
i. MailChimp
iii. Salesforce
Salesforce platform provides tools for sales, service, marketing, e-commerce, and
more. It also provides a cloud development platform.
iv. Chatter
Chatter helps us to share important information about the organization in real
time.
v. Bitrix24
vi. 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.
vii. 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.
viii. Quickbooks
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
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.
Google G Suite is one of the best cloud storage and backup application. It
includes Google Calendar, Docs, Forms, Google+, Hangouts, as well as cloud
storage and tools for managing cloud apps. The most popular app in the Google G
Suite is Gmail. Gmail offers free email services to users.
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.
Google Apps for Education is the most widely used platform for free web-based
email, calendar, documents, and collaborative study.
It allows educators to quickly implement the latest technology solutions into the
classroom and make it available to their students.
5. Entertainment Applications
i. 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.
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.
i. Toggl
Toggl helps users to track allocated time period for a particular project.
ii. 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.
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.
i. Facebook
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.
ii. Twitter
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.
iii. Yammer
Yammer is the best team collaboration tool that allows a team of employees to chat, share
images, documents, and videos.
iv. LinkedIn
Cloud Computing, which is one of the demanding technology of the current time and which is
giving a new shape to every organization by providing on demand virtualized services/resources.
Starting from small to medium and medium to large, every organization use cloud computing
services for storing information and accessing it from anywhere and any time only with the help
of internet. In this article, we will know more about the internal architecture of cloud computing.
Transparency, scalability, security and intelligent monitoring are some of the most important
constraints which every cloud infrastructure should experience. Current research on other
important constraints is helping cloud computing system to come up with new features and
strategies with a great capability of providing more advanced cloud solutions.
1. Frontend
2. Backend
Architecture of cloud computing is the combination of both SOA (Service Oriented Architecture)
and EDA (Event Driven Architecture). Client infrastructure, application, service, runtime cloud,
storage, infrastructure, management and security all these are the components of cloud
computing architecture.
1. Frontend :
Frontend of the cloud architecture refers to the client side of cloud computing system. Means it
contains all the user interfaces and applications which are used by the client to access the cloud
computing services/resources. For example, use of a web browser to access the cloud platform.
Client Infrastructure – Client Infrastructure is a part of the frontend component. It contains the
applications and user interfaces which are required to access the cloud platform.
In other words, it provides a GUI( Graphical User Interface ) to interact with the cloud.
2. Backend :
Backend refers to the cloud itself which is used by the service provider. It contains the resources
as well as manages the resources and provides security mechanisms. Along with this, it includes
huge storage, virtual applications, virtual machines, traffic control mechanisms, deployment
models, etc.
1. Application –
Application in backend refers to a software or platform to which client accesses. Means it
provides the service in backend as per the client requirement.
2. Service –
Service in backend refers to the major three types of cloud based services like SaaS, PaaS and
IaaS. Also manages which type of service the user accesses.
3. Runtime Cloud-
Runtime cloud in backend provides the execution and Runtime platform/environment to the
Virtual machine.
4. Storage –
Storage in backend provides flexible and scalable storage service and management of stored
data.
5. Infrastructure –
Cloud Infrastructure in backend refers to the hardware and software components of cloud like it
includes servers, storage, network devices, virtualization software etc.
6. Management –
Management in backend refers to management of backend components like application,
service, runtime cloud, storage, infrastructure, and other security mechanisms etc.
7. Security –
Security in backend refers to implementation of different security mechanisms in the backend
for secure cloud resources, systems, files, and infrastructure to end-users.
8. Internet –
Internet connection acts as the medium or a bridge between frontend and backend and
establishes the interaction and communication between frontend and backend.
Cloud computing, an emergent technology, has placed many challenges in different aspects of
data and information handling. Some of these are shown in the following diagram:
2. Portability
This is another challenge to cloud computing that applications should easily be migrated from
one cloud provider to another. There must not be vendor lock-in. However, it is not yet made
possible because each of the cloud provider uses different standard languages for their platforms.
3. Interoperability
It means the application on one platform should be able to incorporate services from the other
platforms. It is made possible via web services, but developing such web services is very
complex.
4. Computing Performance
Data intensive applications on cloud requires high network bandwidth, which results in high
cost. Low bandwidth does not meet the desired computing performance of cloud application.