CLOUD
COMPUTING
Prof. Reeta Koshy
2
AGENDA
Enterprise Computing
What is Distributed System?
Definition, Models, Goals
Hardware & Software
Centralised vs Distributed Computing
3
Definition of Distributed System
Goals of Distributed System
▪ Easy to access ▪ Hide that resources
remote are physically
resources distributed
1.
2.
Resource Transparency
Sharing
4. 3.
Scalability Openness
▪ Easy to expand ▪ Follow
standard rules
Types of Transparency
Common properties of Distributed
Computing
Fault Tolerance
When one or more node fails, whole system can still work fine
Each node has partial role
Each computer has a limited view of the system
Resource Sharing
Computing power and storage resource is shared
Load Sharing
Dispatch several task to each node
Easy to Expand
Adding nodes is easy
Performance
Performance can be improved using parallel computing
Motivation for DS
Nature of
Performance Performance Robustness
Application
Demands due Computing Data Intensive No Single Point
to nature of Intensive of Failure
application Task consume Large amount of
Heavy application lot of time data involved
Mission critical
application
RELATION TO COMPUTER
SYSTEM COMPONENTS
A distributed System connects autonomous processors by
communication network which co-operate to run application
network
The software components that run on each of the computers use
the local operating system and network protocol stack for
functioning
The distributed software is also termed as middleware
A distributed execution is the execution of processes across the
distributed system to collaboratively achieve a common goal.
Importance of Scalability in DS
• System must be responsive
Performance • Even when number of users or data increases
• Incremental growth
Cost • No overprovisioning upfront
Efficiency
• Accommodate future growth
Future • Complete redesign not required
Proofing
Types of Scalability
Horizontal Vertical
Scale out Scale up
▪ Add more servers ▪ Increase capacity of
▪ Distribute load single machine
▪ Decentralized ▪ Add more RAM,
▪ Eg: New instance of storage, CPU
webserver added in ▪ Single node focus
cloud ▪ Eg:Increase hardware
of DB server/ app
server
Metrics for measuring Scalability
Throughput : Request per second
Latency : Time to process single request
Load : Amount of work placed on system
Resource Utilization :Efficiency of
resource usage
Metrics for measuring Scalability
Scalability Ratio : Increase in
performance w.r.t increase in resource
Fault Tolerance: System’s ability to
handle failure and recover
Consistency : Data consistency
Availability :How often system is
operational when required
Architecture Pattern for DS & Challenges
[Link] Server
▪ Single Point of Failure
▪ Load Bottleneck
Architecture Pattern for DS & Challenges
[Link]
▪ Complexity
▪ Inter service
communication is
challenging
Architecture Pattern for DS & Challenges
[Link] to Peer
▪ Data consistency and synchronization difficult
▪ Managing security among peers
Architecture Pattern for DS & Challenges
[Link] Driven
▪ Managing event flows and ensuring timely processing
▪ Event ordering require complex design
Types of Middleware
Communication Middleware
Message Oriented
Remote Procedure Call
Database Middleware
Object Request Broker
Database Connectivity
Types
Transaction Middleware
Transaction Processing Monitor
Two Phase Commit Protocol
Application Middleware
Enterprise Service Busr
Web Middleware
Distributed System as Middleware
❖ Middleware extends over multiple machines and offers each
application the same interface
Distributed System as Middleware
❖ Middleware extends over multiple machines and offers each
application the same interface
Importance of Middleware
[Link] Communication
▪ Seamless Interaction
▪ Components on separate machines communicate
▪ Standardized interfaces
▪ Provide Communication protocol and API
Importance of Middleware
[Link] Integration
▪ Service Integration
▪ Integrates diverse services
▪ Data and application integration
▪ Facilitate creation of composite services
Importance of Middleware
[Link] Scalability
▪ Dynamic Resource Management
▪ Allow DS to handle varying loads without reconfiguration
▪ Load Balancing
▪ Optimize resource utilization and improve reliability
Importance of Middleware
[Link] Data Consistency
▪ Transaction Management
▪ Ensure data consistency and integrity across distributed databases
▪ Data Synchronization
▪ Synchronize data across different components
Trends in Computing
Distributed Computing
Grid Computing
Cluster Computing
Utility Computing
Cloud Computing
25
Trends in Computing
Distributed Computing Grid Computing
• Makes computer network appear • Analogous to electrical power
as a powerful single computer distribution grid, idle CPU cycles
• Multiple computers work together of machines connected to the
network will be available to others
• Complex processing
Trends in Computing
Cluster Computing Utility Computing
• Group of computers linked • Provide computing resource on
together as a single entity demand
• Homogeneity • Charged only for the service
provided
SUMMARY
The way to get
started is to quit
talking and begin
doing.
Walt Disney
28
Distributed System Models
Architecture models Fundamental Models
• Define the structure • Interaction model
• Client Server Model • Failure model
• Peer-to-Peer • Security model
Interaction Model
Many process interact
Synchronous DS
Asynchronous DS
30
Failure Model
Process and communication channel can fail
Omission Failure
Arbitrary Failure
Timing Failure
31
Security Model
Objects used in different ways
Access rights
Know source of request
32
Question
Management needs to keep track of inventory at each store and update this kind of
information at headquarters. To implement this application, a commercial system is a
natural choice.” Which of the category below best describe the above system?
A. Economy
[Link] distribution
C. Incremental growth
D. Software complexity
E. ALL are acceptable answers
33
Answer
Management needs to keep track of inventory at each store and update this kind of
information at headquarters. To implement this application, a commercial system is a
natural choice.” Which of the category below best describe the above advantage?
A. Economy
[Link] distribution
C. Incremental growth
D. Software complexity
E. ALL are acceptable answers
34
Question
Processes on the remote systems are identified by
___________
a) host ID
b) host name and identifier
c) identifier
d) process ID
35
Answer
Processes on the remote systems are identified by ___________
a) host ID
b) host name and identifier
c) identifier
d) process ID
36
Question
The capability of a system to adapt the increased service load is
called ___________
a) scalability
b) tolerance
c) capacity
d) none of the mentioned
37
Answer
The capability of a system to adapt the increased service load is
called ___________
a) scalability
b) tolerance
c) capacity
d) none of the mentioned
38
Hardware Concept
DS – Hardware Concept
40
DS – Hardware Concept
41
Multiprocessor Organization
Uniform Memory Access UMA
Non Uniform Memory Access NUMA
42
Multiprocessor Organization
Uniform Memory Access UMA
▪ Caching is vital for performance
▪ Maintain cache coherency
▪ Write through cache
43
Multiprocessor Organization
Non Uniform Memory Access NUMA
▪ A hierarchy where CPUs have their own memory
▪ Access cost to memory is non-uniform
44
Multiprocessor bus based
45
Multiprocessor Switch based
46
Multicomputers
47
Multicomputers
48
Replication
49
Software Concept
Network OS
51
Software Concept
52
Distributed OS
53
Distributed System as Middleware
54
Middleware models
55
Problems with Distributed OS
56
Software Concept
57
Software Concept
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
Summary
A DS is a collection of independent
computers that appears to its users
as a single coherent system
Goals are
Make resources available
Distribution Transparency
Openness
Scalability
77
78
THANK YOU