Tutorial 1 Flashcards
What is a Distributed System ?
Is a collection of autonomous computing elements that appears to its users as a single coherent system
What does a collection of autonomous computing elements mean?
- Different types of nodes ( computing elements) i.e hardware devices or software process
- Act independently but try to achieve a common goal.
What do we understand with ‘System appears to users as a single system’ ?
- System behaves according to the expectations
- Collection of nodes operates the same independent of location, time, and type of interaction.
- Hide internal organization
- Hide different computing elements
Explain the concept of transparency in distributed systems
A transparent system appears to its users as a single computer, hides the distribution of processes and resources
Some types of transparency
- Location
- Access
- Migration
- Relocation
- Replication
- Concurrency
- Failure
Why is implementing the highest degree of transparency not always a good idea?
- Might cause an unaccepted loss of performance
- Context/Location is sometimes required
- Legal reasons such as privacy
High transparency might cause an unaccepted loss of performance. Explain
- Transmission is limited by processing capacities and delays in intermediate switches
- Ensuring consistency between replicas needs seconds to be complete, which can’t be hidden from clients
- Masking transient server failure through repeatedly attempting to contact the server can slow down the whole system
Give examples on how forcing transparency can impact the performance of a distributed system.
- Location transparency: Storing data in servers that could be geographically distant
- Replication transparency: Consistency between data copies requires continuous propagation of changes
What mechanisms are needed for hiding the occurrence and recovery from failures
in a distributed system and what are the challenges?
1.Replication of resources provides high availability
2.Mechanisms of access and relocation transparency
Challenges :
1. There are high economical and performance costs for replication
2. Find adequate backup strategies
3. Mechanisms for detecting failures
Describe openess briefly
Components from different sources integrated into a single system
- Owned components used by other systems
- Use components from other systems
What are the main goals of openness and how could they be achieved?
- Interoperability: Cooperation with other open systems
- Portability: Allow applications to be easily ported between different implementations of the system but with the same interfaces
- Extensibility: Allow easy configuration, integration, and replacement of components
How can the goals of openess be achieved?
- Complete and neutral inferfaces
2.Seperating policy from mechanism
Tutorial 1. Page 9
“Middleware is the same to a distributed system as what an operating system is to a computer”. Explain this sentence.
Middleware and OS as resource managers
OS:
1.Manage hard- and software
2.Resource scheduling
3.Control interaction among processes/ threads/ computations
Middleware:
1.Enables interoperability between components with different OS ,different locations,etc.
2.Control interaction between components through coordination,naming,communication(e.g.
prevent concurrent computations from interfering)