Outline
s
s
t
Introduction
Background
DistributedDBMSArchitecture
DatalogicalArchitecture
ImplementationAlternatives
ComponentArchitecture
t
t
t
t
t
t
t
t
t
DistributedDBMS
DistributedDBMSArchitecture
DistributedDatabaseDesign
SemanticDataControl
Distr
Chapter 6
Introduction
Shared Objects
6.1
Assume that there is a common resource (e.g. a common variable or data structure), which dierent nodes in a network need to access from time to time. If
the nodes are allowed to change the common object when acces
70
CHAPTER 7. MAXIMAL INDEPENDENT SET
Remarks:
Computing a maximum independent set (MaxIS) is a notoriously dicult
problem. It is equivalent to maximum clique on the complementary graph.
1
Both problems are NPhard, in fact not approximable within n 2 .
Chapter 7
Maximal Independent Set
In this chapter we present a highlight of this course, a fast maximal independent
set (MIS) algorithm. The algorithm is the rst randomized algorithm that we
study in this class. In distributed computing, randomization is
Chapter 8
Locality Lower Bounds
In Chapter 1, we looked at distributed algorithms for coloring. In particular,
we saw that rings and rooted trees can be colored with 3 colors in log n + O(1)
rounds. In this chapter, we will reconsider the distributed colo
Chapter 8
Locality Lower Bounds
In Chapter 1, we looked at distributed algorithms for coloring. In particular,
we saw that rings and rooted trees can be colored with 3 colors in log n + O(1)
rounds. In this chapter, we will reconsider the distributed colo
Chapter 9
Social Networks
Zacharys Karate Club
Distributed computing is applicable in various contexts. This lecture exemplarily studies one of these contexts, social networks, an area of study whose origins
date back a century. To give you a rst impressi
92
9.1
Chapter 9
Social Networks
Zacharys Karate Club
Distributed computing is applicable in various contexts. This lecture exemplarily studies one of these contexts, social networks, an area of study whose origins
date back a century. To give you a rst i
102
complexity of the resulting asynchronous algorithm depends on the overhead
introduced by the synchronizer. For a synchronizer S , let T (S ) and M (S ) be
the time and message complexities of S for each generated clock pulse. As we
will see, some of t
Chapter 11
Hard Problems
Diameter & APSP
This chapter is on hard problems in distributed computing. In sequential computing, there are NPhard problems which are conjectured to take exponential
time. Is there something similar in distributed computing? Us
Chapter 11
Hard Problems
This chapter is on hard problems in distributed computing. In sequential computing, there are NPhard problems which are conjectured to take exponential
time. Is there something similar in distributed computing? Using ooding/echo
Chapter 12
Stabilization
A large branch of research in distributed computing deals with faulttolerance.
Being able to tolerate a considerable fraction of failing or even maliciously behaving (Byzantine) nodes while trying to reach consensus (on e.g. the
130
CHAPTER 12. STABILIZATION
Denition 12.2 (Time Complexity). The time complexity of a selfstabilizing
system is the time that passed after the last (transient) failure until the system
has converged to a legitimate state again, staying legitimate.
Rema
Chapter 13
Wireless Protocols
Wireless communication was one of the major success stories of the last decades.
Today, dierent wireless standards such as wireless local area networks (WLAN)
are omnipresent. In some sense, from a distributed computing viewp
Chapter 13
Wireless Protocols
Basics
Wireless communication was one of the major success stories of the last decades.
Today, dierent wireless standards such as wireless local area networks (WLAN)
are omnipresent. In some sense, from a distributed computin
Chapter 15
Dynamic Networks
Many largescale distributed systems and networks are dynamic. In some networks, e.g., peertopeer, nodes participate only for a short period of time, and
the topology can change at a high rate. In wireless adhoc networks, no
182
CHAPTER 16. ALLTOALL COMMUNICATION
Remarks:
Since we have a complete communication graph, the graph has
in the beginning.
n
2
edges
As in Chapter 3, we assume that no two edges of the graph have the same
weight. Recall that this assumption ensures
Chapter 6
Shared Objects
6.1
Introduction
Assume that there is a common resource (e.g. a common variable or data structure), which dierent nodes in a network need to access from time to time. If
the nodes are allowed to change the common object when acces
Chapter 5
Introduction
Shared Memory
5.1
In distributed computing, various dierent models exist. So far, the focus of the
course was on looselycoupled distributed systems such as the Internet, where
nodes asynchronously communicate by exchanging messages
Bayou
All about embracing weak connectivity and disconnected operation

old world: LANs and continuous connectivity, chatty protocols, strong consistency
and coherence guarantees
new world: mobile devices with spotty wireless connectivity, more efficient
Architectural Patterns Revisited A Pattern
Language
Paris Avgeriou
CONCERT division
Fraunhofer IPSI
Darmstadt, Germany
Uwe Zdun
Department of Information Systems
Vienna University of Economics and BA
Vienna, Austria
[email protected]
zdun@
Understanding Availability
Ranjita Bhagwan, Stefan Savage and Geoffrey M. Voelker Department of Computer Science and Engineering University of California, San Diego
Abstract
This paper addresses a simple, yet fundamental question in the design of peerto
CSE4/586 (Spring 2009): Coee bean problem.
Consider a can C of coee beans. Each bean is either white or black. We are told the can
is initially nonempty. Now consider the program that consists of a single action:
Choose two beans from the can; if they are
Concepts of Distributed Systems
2006/2007
Presenting
Johan Lukkien
6Nov06
Johan J. Lukkien, [email protected]
TU/e Informatica, System Architecture and Networking
1
Presenting the practical
Problem statement
Distributed / realtime systems scope
rel
Introduction
What is Distributed Computing?
In the last few decades, we have experienced an unprecedented growth in the
area of distributed systems and networks. Distributed computing now encompasses many of the activities occurring in todays computer and
2
dene them when we use them. Towards the end of the course a general picture
should emerge. Hopefully!
This course introduces the basic principles of distributed computing, highlighting common themes and techniques. In particular, we study some of the
fu
Chapter 1
Vertex Coloring
1.1
Problem & Model
Vertex coloring is an infamous graph theory problem. It is also a useful toy
example to see the style of this course already in the rst lecture. Vertex coloring
does have quite a few practical applications, fo
Concepts of Distributed Systems
2006/2007
Consistency & replication
Johan Lukkien
26Nov06
Johan J. Lukkien, [email protected]
TU/e Computer Science, System Architecture and Networking
1
Contents
Replication, background and motivation
Consistency mode
Chapter 1
Problem & Model
Vertex Coloring
1.1
Vertex coloring is an infamous graph theory problem. It is also a useful toy
example to see the style of this course already in the rst lecture. Vertex coloring
does have quite a few practical applications, fo
16
CHAPTER 2. LEADER ELECTION
of each node has the same structure. We will now show that nonuniform
anonymous leader election for synchronous rings is impossible. The idea is that
in a ring, symmetry can always be maintained.
Lemma 2.4. After round k of