Cringe Flashcards
(143 cards)
What is the definition of Distributed Systems
A distributed system is a collection of autonomous computing
elements that appears to its users as a single coherent system.
What are some characteristic Features of Distributed Systems
- Autonomous computing elements, also referred to as nodes, be
they hardware devices or software processes. - Single coherent system: users or applications perceive a single
system ⇒ nodes need to collaborate. - Its easily expandable, Adding new computers is hidden from users
- It has continuous availability, Failures in one component can be covered by other components
- It is supported by middleware
What are some features of Distributed Systems
- No shared memory – message-based communication
- Each runs its own local OS
- Heterogeneity
What does a distributed system look like?
- The distributed system “looks like” a single computer rather than a
collection of separate computers. It Hide internal organization, communication details and Provides a uniform interface
What Goals does Distributed Systems want to accomplish
- Availability (support sharing of resources)
- Distribution transparency
- Openness
- Scalability
What is Goal 1 of Distributed Systems (Resource Availability) Entail?
- Support user access to remote resources (printers, data files, web pages, CPU cycles) and the fair sharing of the resources
- Economics of sharing expensive resources
- Performance enhancement – due to multiple processors; also due to ease of collaboration and info exchange – access to remote services
- Resource sharing introduces security problems.
What is Goal 2 of Distributed Systems (Distribution Transparency) Entail?
- Software hides some of the details of the distribution of system resources. This makes the system more user friendly
- A distributed system that appears to its users & applications to be a single computer system is said to be transparent. This means that Users & apps should be able to access remote resources in the same way they access local resources.
- Transparency has several dimensions.
What are the different types of distribution transparency?
- Access: Hide differences in data representation and how an object is accessed
- Location: Hide where an object is located
- Relocation: Hide that an object may be moved to another location while in use
- Migration: Hide that an object may move to another location
- Replication: Hide that an object is replicated
- Concurrency: Hide that an object may be shared by several independent users
- Failure: Hide the failure and recovery of an object
What is Goal 3 of Distributed Systems (Openness) Entail?
- Be able to interact with services from other open systems, irrespective of the underlying environment:
- Interface Definition/Description Languages (IDL): used to describe the interfaces between software components, usually in a distributed system
- Interoperability: the ability of two different systems or applications to work together
- Portability: an application designed to run on one distributed system can run on another system that implements the same interface.
- Extensibility: Easy to add new components, features
What is Goal 4 of Distributed Systems (Scalability) Entail?
- Dimensions that may scale with respect to size
- Dimensions that may scale With respect to geographical distribution
- Dimensions that may scale With respect to the number of administrative organizations spanned
- A scalable system still performs well as it scales up along any of the three dimensions.
- Scale-up vs Scale-out
What are pitfalls in relation to the development of distributed systems?
- Many distributed systems are needlessly complex caused by mistakes that required patching later on. Many false assumptions are often made.
What are the many false assumptions made when developing distributed Systems
- The network is reliable
- The network is secure
- The network is homogeneous
- The topology does not change
- Latency is zero
- Bandwidth is infinite
- Transport cost is zero
- There is one administrator
What are the three types of distributed Systems?
- High performance distributed computing systems (HPDC)
- Distributed information systems (DIS)
- Distributed systems for pervasive computing (Pervasive)
What is HDPC in relation to Parallel Computing
- High-performance distributed computing started with parallel computing.
What is HDPC in relation to Cluster computing
- Essentially a group of high-end systems connected through a LAN
- Homogeneous: same OS, near-identical hardware
- Single managing node
What is HDPC in relation to Grid computing
The next step: lots of nodes from everywhere. These are Heterogeneous, Dispersed across several organizations, Can easily span a wide-area network. Remember, To allow for collaborations, grids generally use virtual organizations. In essence, this is a grouping of users (or better: their IDs) that will allow for authorization on resource allocation.
What is HDPC in relation to cloud computing?
Its resource utilisation is: Elasticity, with dynamic resource provisioning. Furthermore its cost efficient as you pay for the servers using PAYG (pay as you go). These servers would be things like AWS or Microsoft Azure.
What is the situation, basic approach and next step of Distributed Information Systems when integrating applications
- Situation: Organizations confronted with many networked applications, but achieving interoperability was painful.
- Basic approach:
- A networked application is one that runs on a server making its services available to remote clients. Simple integration: clients combine requests for (different) applications; send that off; collect responses, and present a coherent result to the user.
- RPC (functions)
- RMI (Objects)
- MOM (Publish/Subscribe)
- Next Step: Allow direct application-to-application communication, leading to Enterprise Application Integration.
What could an example be of a Distributed Information System: Enterprise Application Integration of Nested Transactions
How would you integrate applications in a Distributed Information System?
What is a Distributed Pervasive System?
A Distributed Pervasive System is a network of interconnected devices or nodes, often mobile or embedded in the environment, that seamlessly provide services and exchange information without requiring explicit user commands, thereby integrating computing into the user’s everyday activities and environment. They naturally blend into the user’s environment.
They also have three overlapping subtypes. These are:
- Ubiquitous computing systems: pervasive and continuously present, i.e., there is a continuous interaction between system and user.
- Mobile computing systems: pervasive, but emphasis is on the fact that devices are inherently mobile
- Sensor (and actuator) networks: pervasive, with emphasis on the actual (collaborative)sensing and actuation of the environment.
What are the core elements of a ubiquitous computing system?
- (Distribution) Devices are networked, distributed, and accessible in a transparent manner
- (Interaction) Interaction between users and devices is highly unobtrusive
- (Context awareness) The system is aware of a user’s context in order to optimize interaction
- (Autonomy) Devices operate autonomously without human intervention, and are thus highly self-managed
- (Intelligence) The system as a whole can handle a wide range of dynamic actions and interactions
What are the distinctive features of a mobile computing system?
- A myriad of different mobile devices (smartphones, tablets, GPS devices, remote controls, active badges.
- Mobile implies that a device’s location is expected to change over time ⇒change of local services, reachability, etc. Keyword: discovery.
- Communication may become more difficult: no stable route, but also perhaps no guaranteed connectivity ⇒ disruption-tolerant
networking.
What are the characeristics of a sensor network?
- The nodes to which sensors are attached are: Many (10s - 1000s) and they are Simple (small memory/compute/communication capacity) Often battery-powered (or even battery-less).