advanced distributed algorithms and data structures · advanced distributed algorithms and data...
TRANSCRIPT
Advanced Distributed Algorithms and Data Structures
Christian ScheidelerInstitut für Informatik
Universität Paderborn
Advanced Distributed Algorithms and Data Structures
Lecture: Mon 11:00-14:00, F0.530Tutorial: Mon 09:00-11:00, F0.530 (starts 2nd week)
Website: see http://cs.uni-paderborn.de/ti/lehre/veranstaltungen/ss-2019
Focus Areas and Grading: • Focus areas “Algorithm Design” and “Networks and Communication”• Prerequisites for oral exam: presentation of solution to homework
problem and software project• Grading: oral exam (recommended: by end of September)
Prerequisites: • basic knowledge in algorithms and data structures• recommended: distributed algorithms and data structures course
SS 2019 2Chapter 1
Advanced Distributed Algorithms and Data Structures
Homework assignments:• Weekly assignments each Monday on the
website (starting with this week)• Theoretical and practical problems
Slides and assignments: course websiteBook recommendations: no book available
(lecture is based on newest results)SS 2019 3Chapter 1
Embedding into CS Curriculum
Data Structuresand Algorithms
Distributed Algorithmsand Data Structures
Advanced Distributed Algorithmsand Data Structures
Bachelor I
Bachelor II
Master
SS 2019 4Chapter 1
Embedding into CS Curriculum
Advanced Distributed Algorithmsand Data Structures
Master
SS 2019 5Chapter 1
Seminar, Project Group
Advanced Distributed Algorithms and Data Structures
Goals:1. Introduction to advanced concepts in
distributed algorithms and data structures.
2. Introduction to important design methods.
3. Introduction to important analytical methods.
SS 2019 6Chapter 1
Introduction
Sequential Algorithmsand Data Structures
Distributed Algorithmsand Data Structures
SS 2019 7Chapter 1
Introduction
What are the basic problems fordistributed algorithms and data structures?
SS 2019 8Chapter 1
IntroductionDefinition 1.1: A data structure is a certain way to
organize data in a computer so that operations like, forexample, search, insert, and delete are simple andeffective to realize.
Simple examples:• Lists
• Arrays
SS 2019 9Chapter 1
IntroductionBasic view:
Data Structure
Operation 1
Operation 2
Operation 3
SS 2019 10Chapter 1
Introduction
Classical case: computer with one processor
Operations
Memory
Data Structure
SS 2019 11Chapter 1
Introduction
Computer with several processors/cores:
Shared Memory
Data Structure
SS 2019 12Chapter 1
Computer with several processors/cores:
Data Structure
Introduction
Cache Cache Cache Cache
Overlaps:• access conflicts (correctness)• performance problems (efficiency)
SS 2019 13Chapter 1
IntroductionMultiple computers:
Problem: distribution of DS among computers
Data structure
SS 2019 14Chapter 1
IntroductionMultiple computers:
Problem: distribution of DS among computers
Da ta str uct ure
SS 2019 15Chapter 1
IntroductionMultiple computers:
Basic problems: • How to interconnect the computers?• How to coordinate the management of the DS
among the computers?
Da ta str uct ure
SS 2019 16Chapter 1
IntroductionMultiple computers:
How to manage the DS?• We need redundancy to cope with failures.• But then we need to maintain consistency!
Da ta str uct ure
SS 2019 17Chapter 1
IntroductionDistributed Algorithms:
Input I might be split into different pieces Ij that aredistributed among many computers.How to efficiently solve problems (minimumspanning tree, shortest paths,..) in this case?SS 2019 Chapter 1 18
I1 I2 I3 I4 I5
Introduction
SS 2019 Chapter 1 19
General problem: Find solutions that are scalable, robust andsecure (because participants might be faulty oradversarial, or might get attacked from outside!)
Advanced distributed algorithms and data structures
Contents:1. Introduction2. Foundations3. Link primitives4. Networks5. Consensus and Blockchains6. Information Dissemination7. Information Aggregation8. Distributed Scheduling9. Distributed Optimization
SS 2019 20Chapter 1
FoundationsGraphs and graph parameters, processes, …
SS 2019 Chapter 1 21
U
Γ(U)
Advanced distributed algorithms and data structures
Contents:1. Introduction2. Foundations3. Link primitives4. Networks5. Consensus and Blockchains6. Information Dissemination7. Distributed Scheduling8. Distributed Optimization
SS 2019 22Chapter 1
Link PrimitivesAdmissible link primitives w.r.t. connectivity:
SS 2019 Chapter 1 23
uv
wu
v
w
uv
wu
v
w
u u vv
u u vv
Introduction Fusion
Delegation Reversal
Advanced distributed algorithms and data structures
Contents:1. Introduction2. Foundations3. Link primitives4. Networks5. Consensus and Blockchains6. Information Dissemination7. Distributed Scheduling8. Distributed Optimization
SS 2019 24Chapter 1
Networks
Minimum spanning tree:
New approach: hybrid networks
SS 2019 Chapter 1 25
4
d
e
g
c
f
b
h
a i
8 79
10
21
8
4 2
76
1411
Advanced distributed algorithms and data structures
Contents:1. Introduction2. Foundations3. Link primitives4. Networks5. Consensus and Blockchains6. Information Dissemination7. Distributed Scheduling8. Distributed Optimization
SS 2019 26Chapter 1
Consensus and Blockchains
Consensus:
SS 2019 Chapter 1 27
58
32
33
33
Advanced distributed algorithms and data structures
Contents:1. Introduction2. Foundations3. Link primitives4. Networks5. Consensus and Blockchains6. Information Dissemination7. Distributed Scheduling8. Distributed Optimization
SS 2019 28Chapter 1
Information Dissemination
SS 2019 Chapter 1 29
2
2 2
2
2 2
2
Advanced distributed algorithms and data structures
Contents:1. Introduction2. Foundations3. Link primitives4. Networks5. Consensus and Blockchains6. Information Dissemination7. Distributed Scheduling8. Distributed Optimization
SS 2019 30Chapter 1
Distributed Scheduling
Independent set, matching, coloring,…
SS 2019 Chapter 1 31
1
9
4
65
2
7
3
10
Advanced distributed algorithms and data structures
Contents:1. Introduction2. Foundations3. Link primitives4. Networks5. Consensus and Blockchains6. Information Dissemination7. Distributed Scheduling8. Distributed Optimization
SS 2019 32Chapter 1
Distributed Optimization
Smallest enclosing ball problem:
SS 2019 Chapter 1 33
Questions?
SS 2019 34Chapter 1