Mémoires Partagées Distribuées pour systèmes dynamiques à grande échelle Vincent Gramoli.

Post on 04-Apr-2015

103 views 0 download

Transcript of Mémoires Partagées Distribuées pour systèmes dynamiques à grande échelle Vincent Gramoli.

Mémoires Partagées Distribuées pour systèmes dynamiques à grande échelle

Vincent Gramoli

JDIR19 Janvier 2007

Vincent Gramoli, ASAP Research group

Plan

Introduction

MPD et Dynamisme

MPD et Passage à l’échelle

Conclusion

JDIR19 Janvier 2007

Vincent Gramoli, ASAP Research group

Motivations

Primitives de lecture/écriture Cohérence Tolérance aux dynamisme Passage à l’échelle

Applications possibles Travail coopératif en systèmes dynamiques WebServices et P2P:

• billets de train, • enchères…

JDIR19 Janvier 2007

Vincent Gramoli, ASAP Research group

Modèle

Système distribué Ensemble de noeuds avec identifiants uniques.Système dynamique Chaque noeud peut crasher, quitter ou arriver à tout

moment. Un noeud arrivant a un nouvel identifiant.Communication asynchrone Transmission arbitrairement longue Un message est reçu ssi il a été envoyéMémoire Chaque objet est répliqué sur des noeuds serveurs. Chaque objet est accédé (lus/écrits) par des nœuds

clients.

JDIR19 Janvier 2007

Vincent Gramoli, ASAP Research group

Atomicité de mémoire partagée distribuée

Grossièrement,“Tous les noeuds voient la conséquence de toute opération en

fonction du moment auquel l’opération se produit.”

Plus précisément, ils les voient dans un ordre précis:

1. Opérations (Ops.) non-concurrentes apparaissent dans l’ordre de leur éxécution.

2. Ops. d’écriture sont ordonnées totalement.

3. Ops. de lecture sont ordonnées par rapport aux écritures.

4. Une op. de lecture retourne la valeur écrite par l’écriture la précédant (ou la valeur par défaut, si aucune existe).

JDIR19 Janvier 2007

Vincent Gramoli, ASAP Research group

Example

P1

P2

R(v0)

W(v1)

P1 et P2 accèdent le même objet dont la valeur par défaut est v0.

JDIR19 Janvier 2007

Vincent Gramoli, ASAP Research group

Example

P1

P2

R(v0)

W(v1)

Moment d’occurrence virtuelle (i.e., point de serialization)

JDIR19 Janvier 2007

Vincent Gramoli, ASAP Research group

Contre-example

P1

P2

R(v0)

W(v1)

P3

R(v1)

JDIR19 Janvier 2007

Vincent Gramoli, ASAP Research group

Contre-example

P1

P2

R(v0)

W(v1)

R(v0) < W(v1) < R(v1) by property 4.But R(v0) > R(v1) by property 1

P3

R(v1)

JDIR19 Janvier 2007

Vincent Gramoli, ASAP Research group

Opérations utilisant les quorums

Quorums: Ensembles qui s’intersectent mutuellement (ici, de taille O(√n)). Chaque opération consulte et propage sur un quorum [ABD95].

Example, dans le cas précédent:

JDIR19 Janvier 2007

Vincent Gramoli, ASAP Research group

Opérations utilisant les quorums

Quorums: Ensembles qui s’intersectent mutuellement (ici, de taille O(√n)). Chaque opération consulte et propage sur un quorum [ABD95].

Example, dans le cas précédent: Si la lecture de P3 termine après avoir vu v1, Alors v1 a été propagé et P2 voit v1 lors de sa lecture.

P1

P2R(v1) consulte un quorum

W(v1)

P3R(v1) propage sur un quorum

JDIR19 Janvier 2007

Vincent Gramoli, ASAP Research group

MPD et Dynamisme

serveursclients

Operations:temps: O(1)msg: O(√n)

Connaissance globale Un client connaît tout un quorum

JDIR19 Janvier 2007

Vincent Gramoli, ASAP Research group

MPD et Dynamisme

serveurs

Operations:temps: O(1)msg: O(√n)

Reconfiguration:temps: O(1)msg: O(√n)

Connaissance globale La reconfiguration est périodique

JDIR19 Janvier 2007

Vincent Gramoli, ASAP Research group

MPD et Dynamisme

serveurs

Operations:temps: O(1)msg: O(√n)

Reconfiguration:temps: O(1)msg: O(√n)

Connaissance globale La reconfiguration est périodique

JDIR19 Janvier 2007

Vincent Gramoli, ASAP Research group

MPD et Dynamisme

serveurs

Operations:temps: O(1)msg: O(√n)

Reconfiguration:temps: O(1)msg: O(√n)

Connaissance globale La reconfiguration est générale

JDIR19 Janvier 2007

Vincent Gramoli, ASAP Research group

MPD et Dynamisme

serveurs

Operations:temps: O(1)msg: O(√n)

Reconfiguration:temps: O(1)msg: O(√n)

Connaissance globale Les quorums entiers sont remplacés

JDIR19 Janvier 2007

Vincent Gramoli, ASAP Research group

MPD et Dynamisme

Pannes s’accumulant Reconfiguration périodique [RAMBO]

Congestions possibles Diminuer nb. de msg nécessaires [GMS05]

Intensification du dynamisme Accélérer la reconfiguration [RDS]

JDIR19 Janvier 2007

Vincent Gramoli, ASAP Research group

MPD et Passage à l’échelle

serveursclients

Operations:temps: O(√n)msg: O(√n)

Connaissance restreinte [NW03, SQUARE] Opérations adaptatives

JDIR19 Janvier 2007

Vincent Gramoli, ASAP Research group

MPD et Passage à l’échelle

serveurs

Operations:temps: O(√n)msg: O(√n)

Reconfiguration:temps: O(1)msg: O(1)

Connaissance restreinte [NW03, SQUARE] Reconfiguration locale

JDIR19 Janvier 2007

Vincent Gramoli, ASAP Research group

MPD et Passage à l’échelle

serveurs

Operations:temps: O(√n)msg: O(√n)

Reconfiguration:temps: O(1)msg: O(1)

Connaissance restreinte [NW03, SQUARE] Chaque noeud défaillant est remplacé

JDIR19 Janvier 2007

Vincent Gramoli, ASAP Research group

MPD et Passage à l’échelle

serveurs

Operations:temps: O(√n)msg: O(√n)

Reconfiguration:temps: O(1)msg: O(1)

Connaissance restreinte [NW03, SQUARE] Reconfiguration à la demande

JDIR19 Janvier 2007

Vincent Gramoli, ASAP Research group

MPD et Passage à l’échelle

serveurs

Operations:temps: O(√n)msg: O(√n)

Reconfiguration:temps: O(1)msg: O(1)

Connaissance restreinte [NW03, SQUARE] Reconfiguration à la demande

JDIR19 Janvier 2007

Vincent Gramoli, ASAP Research group

MPD et Passage à l’échelle

Operations:temps: O(log n)msg: O(√n log n)

clients / serveurs

Méthode probabiliste avec structure [AM03] Opérations avec marches aléatoires

JDIR19 Janvier 2007

Vincent Gramoli, ASAP Research group

MPD et Passage à l’échelle

Operations:temps: O(log n)msg: O(√n log n)

Reconfiguration:temps: O(log n)

msg: O(log n)

clients / serveurs

Méthode probabiliste avec structure [AM03] Reconfiguration de rééquilibrage du graphe

JDIR19 Janvier 2007

Vincent Gramoli, ASAP Research group

MPD et Passage à l’échelle

Operations:temps: O(log √n)msg: O(√n)

clients / serveurs

Méthode probabiliste sans structure [GKM+06] Opération épidémique

JDIR19 Janvier 2007

Vincent Gramoli, ASAP Research group

MPD et Passage à l’échelle

Operations:temps: O(log √n)msg: O(√n)

Reconfiguration:0 si graphe aléatoire

clients / serveurs

Méthode probabiliste sans structure [GKM+06] Aucune reconfiguration nécessaire

JDIR19 Janvier 2007

Vincent Gramoli, ASAP Research group

Conclusion

Solutions Ex. Inconvénients AvantagesStructurée reconfigurable

RDS messages temps

Structurée adaptative

SQUARE temps messages

Structurée probabiliste

AM03 garantie probabiliste

temps

Non-structurée GKM+06 garantie probabiliste

temps et messages

JDIR19 Janvier 2007

Vincent Gramoli, ASAP Research group

Références

[ABD95] Robust Emulation of a Shared Memory in Msg-passing Sys. J.ACM 95 H. Attiya, A. Bar-Noy, and D. Dolev.

[RAMBO] Reconfgurable Atomic Memory in Dynamic Systems. DISC’02. N. Lynch and A. Shvartsman

[AM03] Probabilistic Quorums for Dynamic Systems. Dist.Comp.’03. I. Abraham and D. Malkhi

[NW03] Scalable and Dynamic Quorum Systems. PODC’03. M. Naor and U. Wieder

[GMS05] Operation Liveness and Gossip Mgt. in Distr. Atomic Data Sce. PDCS’05.

V. Gramoli, P. Musial, and A. Shvartsman[RDS] Reconfigurable Distributed Storage. OPODIS’05

G. Chockler, S. Gilbert, V. Gramoli, P. Musial, and A. Shvartsman[GKM+06] Core Persistence in P2P Systems. RDDS’06.

V.Gramoli, A.-M.Kermarrec, A.Mostefaoui, M.Raynal, and B.Sericola.[SQUARE] Scalable Quorum-based Atomic Memory w/ Local Reconfiguration.

SAC’07 V. Gramoli, E. Anceaume, and A. Virgillito.