DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
Cloud computing-intro
1. CLOUD COMPUTING
AN OVERVIEW &
QUALITY OF SERVICE
University of Manitoba
Department of Computer Science
Hamzeh Khazaei
Jan 28, 2010
2. 2 /20
Cloud Computing - Definition
There is no unique and standard definition out
there
However, it is generally accepted that CC
refers to a new IT paradigm for users
One of those definitions:
Cloud computing is a style of computing paradigm
in which typically real-time scalable resources
such as files, data, software, hardware, and third
party services can be accessible from a Web
browser via the Internet to users
3. 3 /20
Cloud computing - Characteristics
Agility – On demand computing infrastructure
Linearly scalable – challenge
Reliability and fault tolerance
Self healing – Hot backups, etc
SLA driven – Policies on how quickly requests are processed
Multi-tenancy – Several customers share infrastructure, without
compromising privacy and security of each of the customer’s data
Service-oriented – compose applications out of loosely coupled services.
One service failure will not disrupt other services. Expose these services as
API’s
Virtualized – decoupled from underlying hardware. Multiple applications can
run in one computer
Data, Data, Data
Distributing, partitioning, security, and synchronization
5. 5 /20
Cloud Computing - Some
terms
Term cloud is used as a metaphor for internet
Concept generally incorporates combinations of the following
Infrastructure as a service (IaaS)
Platform as a service (PaaS)
Software as a service(SaaS)
Not to be confused with
Grid Computing – a form of distributed computing
Cluster of loosely coupled, networked computers acting in concert to
perform very large tasks
Utility Computing – packaging of computing resources such as
computing power, storage, also a metered services
Autonomic computing – self managed
11. 11 /20
Quality of Service
Everything in cloud computing is delivered as
service
So quality of service is inevitable
QoS has multiple aspects such as:
Response time
Throughput
Availability
Reliability
Security
12. 12 /20
Service Level Agreement, SLA
The SLA is a contract negotiated and agreed
between a customer and a service provider
Service provider is required to execute service
requests from a customer within negotiated
quality of service requirements for a given price
Due to variable load, dynamically provisioning
computing resources to meet an SLA and allow
for an optimum resource utilization will not be an
easy task
13. 13 /20
QoS requirements for a Cloud -
ideal
The QoS must system be able to manage several
simultaneous services with a specific response
time limitation for each service
The QoS system must supply service
differentiation in the service provider to the
consumer – consumer category
The QoS system must support the grouping of
interactions in sessions.
The QoS system should not require modification
in the system software of the servers
14. 14 /20
QoS requirements for a Cloud -
ideal
The QoS system should be easy to configure
The QoS system must be scalable to operate
in both a single server and a cluster of servers
The QoS system must provide protection
against overloads and low utilization
The QoS system may support dynamic
negotiation of parameters
16. 16 /20
Service Performance and Analysis in Cloud
Computing
For the commercial success of cloud computing
the ability to deliver QoS guaranteed services is
crucial
Clearly customers are more concerned about
response time rather than other performance
metrics
Usually customers are more inclined to the
percentile of time in which they receive their
services less than a given value
P-percentile: it means a given customer receives
p% of his services less than a pre-defined time
value in the SLA
17. 17 /20
Some Important Questions regarding
Service Performance:
1. For a given arrival rate of requests and given
service rate what level of QoS can be
guaranteed?
2. What is the minimal service rate for a given
percentile of the response time and a given
service arrival rate?
3. How many number of customers can be
supported so that a given percentile of the
response time can be still guaranteed when
service rate is given?
Users/Brokers: They submit their service requests from anywhere in the world to the cloud.
SLA Resource Allocator: It is a kind of Interface between users and cloud service provider which enable the SLA-oriented Resource management.
Service Request Examiner and Admission Control: it interprets the submitted request for QoS requirements before determining whether to accept or reject the request. Based on resource availability in the cloud and other parameters decide.
Pricing: it is in charge of billing based on the resource utilization and some factors. Some factors: (request time, type and …)
Accounting: maintains the actual usage of resources by request so that the final cost can be charged to the users.
VM Monitor: Keeps tracks on the availability of VMs and their resources.
Dispatcher: The dispatcher mechanism start the execution of admitted requests on allocated VMs.
Service Request Monitor: The request monitor mechanism keeps track on execution of request in order to be in tune with SLA.
Virtual Computing Lab ant North Carolina State University, http://vcl.ncsu.edu
Public Cloud: Exist beyond firewall, fully hosted and managed by the vendor
Amazon's Web Services and Google appEngine are examples
Private Cloud: Within the boundaries(firewall) of the organization
More secure as they are internal to org, Schedule and reshuffle resources based on business demands
One controller and many monitors.
The monitor is a software components which embody the sensors and actuators.
Sensor measure runtime environmental variable and actuators are implemented by means of an admission procedure
For any arbitrary cloud provider, In order to be able support SLA-oriented services knowing answer of some questions is mandatory, here I brought some of them as an example:
One of the best and most accurate technique for answering such questions is queuing therory.
Open queuing network and Close queuing networks
Jackson Network: any arbitrary open network of m-server queues with exponentially distributed service times can be analyzed as a product form network.