mémoires partagées distribuées pour systèmes dynamiques à grande échelle vincent gramoli

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

Upload: leon-jacquin

Post on 04-Apr-2015

104 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 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

Page 2: 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

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

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…

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

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.

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

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).

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

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.

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

JDIR19 Janvier 2007

Vincent Gramoli, ASAP Research group

Example

P1

P2

R(v0)

W(v1)

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

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

JDIR19 Janvier 2007

Vincent Gramoli, ASAP Research group

Contre-example

P1

P2

R(v0)

W(v1)

P3

R(v1)

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

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)

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

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:

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

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

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

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

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

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

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

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

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

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

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

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

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

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]

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

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

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

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

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

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é

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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.