Distributed systems

Get Started. It's Free
or sign up with your email address
Distributed systems by Mind Map: Distributed systems

1. Standart problems

1.1. Atomic commit

1.1.1. Protocols 2PC (2-phase commit) commit request commit/completion phase 3PC (3-phase commit) Disadvantage commit request commit authorized/precommit finalizing/commit

1.2. Consensus

1.2.1. Protocol Termination every correct process decides some value. Validity if all processes propose the same value v, then every correct process decides v Integrity every correct process decides at most one value, and if it decides some value v, then v must have been proposed by some process Aggreement if a correct process decides v, then every correct process decides v.

1.3. Leader election

1.3.1. Algorithms Key concepts Transfer to leader should be economical (in terms of transmit bytes and time) Gallager, Humblet, and Spira best general for all undirected graphs finds node with min flow from anothers

1.4. Mutual exclusion

1.4.1. Concept No 2 processes or threads can be in their ccritical selection at the same time

1.4.2. Solutions (both hardware and software) Busy-wait Locks Monitors CAS

1.5. Replication

1.5.1. Models Transactional State machine Deterministic finite automaton Virtual synchrony Concept: process group, checkpoints On checkpoints states are being replicated

1.5.2. In life Database Master-slave Master-master WAL XLOGs Disk storage rsync

1.6. Resource allocation

1.6.1. Problem Assing available res in an economic way Used in strategic planning

1.6.2. Concepts Resouce leveling (like priorities)

1.6.3. Algorithms Scheduling Math

1.7. Topology

1.7.1. Spanning tree MSP Prim algorithm

2. Data streams

2.1. Push

2.1.1. Concept Based on message queues Determine priorities of messages Good for transactions-when-they-happen cocept

2.1.2. Pros & Cons Pros Instant Fast feedback New sources can come on-line and push new notifications Cons Massive sets of transaction Big data flow Can't establish context

2.2. Pull

2.2.1. Concept Require data procssing Data flow isn;t really necessary

2.2.2. Pros & Cons Pros Get what you want when you need Min flow Cons Always attached to a source

2.3. Pull On Demand