280 likes | 370 Views
Mémoires Partagées Distribuées pour systèmes dynamiques à grande échelle Vincent Gramoli. Plan. Introduction MPD et Dynamisme MPD et Passage à l’échelle Conclusion. Motivations. Primitives de lecture/écriture Cohérence Tolérance aux dynamisme Passage à l’échelle
E N D
Mémoires Partagées Distribuées pour systèmes dynamiques à grande échelle Vincent Gramoli
Vincent Gramoli, ASAP Research group Plan • Introduction • MPD et Dynamisme • MPD et Passage à l’échelle • Conclusion
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…
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.
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: • Opérations (Ops.) non-concurrentes apparaissent dans l’ordre de leur éxécution. • Ops. d’écriture sont ordonnées totalement. • Ops. de lecture sont ordonnées par rapport aux écritures. • Une op. de lecture retourne la valeur écrite par l’écriture la précédant (ou la valeur par défaut, si aucune existe).
Vincent Gramoli, ASAP Research group Example P1 et P2 accèdent le même objet dont la valeur par défaut est v0. W(v1) P1 P2 R(v0)
Vincent Gramoli, ASAP Research group Example W(v1) P1 P2 R(v0) Moment d’occurrence virtuelle (i.e., point de serialization)
Vincent Gramoli, ASAP Research group Contre-example W(v1) P1 P2 R(v0) P3 R(v1)
Vincent Gramoli, ASAP Research group Contre-example W(v1) P1 P2 R(v0) P3 R(v1) R(v0) < W(v1) < R(v1) by property 4. But R(v0) > R(v1) by property 1
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:
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. W(v1) P1 P2 R(v1) consulte un quorum P3 R(v1) propage sur un quorum
Vincent Gramoli, ASAP Research group MPD et Dynamisme • Connaissance globale • Un client connaît tout un quorum Operations: temps: O(1) msg: O(√n) clients serveurs
Vincent Gramoli, ASAP Research group MPD et Dynamisme • Connaissance globale • La reconfiguration est périodique Operations: temps: O(1) msg: O(√n) Reconfiguration: temps: O(1) msg: O(√n) serveurs
Vincent Gramoli, ASAP Research group MPD et Dynamisme • Connaissance globale • La reconfiguration est périodique Operations: temps: O(1) msg: O(√n) Reconfiguration: temps: O(1) msg: O(√n) serveurs
Vincent Gramoli, ASAP Research group MPD et Dynamisme • Connaissance globale • La reconfiguration est générale Operations: temps: O(1) msg: O(√n) Reconfiguration: temps: O(1) msg: O(√n) serveurs
Vincent Gramoli, ASAP Research group MPD et Dynamisme • Connaissance globale • Les quorums entiers sont remplacés Operations: temps: O(1) msg: O(√n) Reconfiguration: temps: O(1) msg: O(√n) serveurs
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]
Vincent Gramoli, ASAP Research group MPD et Passage à l’échelle • Connaissance restreinte [NW03, SQUARE] • Opérations adaptatives Operations: temps: O(√n) msg: O(√n) clients serveurs
Vincent Gramoli, ASAP Research group MPD et Passage à l’échelle • Connaissance restreinte [NW03, SQUARE] • Reconfiguration locale Operations: temps: O(√n) msg: O(√n) Reconfiguration: temps: O(1) msg: O(1) serveurs
Vincent Gramoli, ASAP Research group MPD et Passage à l’échelle • Connaissance restreinte [NW03, SQUARE] • Chaque noeud défaillant est remplacé Operations: temps: O(√n) msg: O(√n) Reconfiguration: temps: O(1) msg: O(1) serveurs
Vincent Gramoli, ASAP Research group MPD et Passage à l’échelle • Connaissance restreinte [NW03, SQUARE] • Reconfiguration à la demande Operations: temps: O(√n) msg: O(√n) Reconfiguration: temps: O(1) msg: O(1) serveurs
Vincent Gramoli, ASAP Research group MPD et Passage à l’échelle • Connaissance restreinte [NW03, SQUARE] • Reconfiguration à la demande Operations: temps: O(√n) msg: O(√n) Reconfiguration: temps: O(1) msg: O(1) serveurs
Vincent Gramoli, ASAP Research group MPD et Passage à l’échelle • Méthode probabiliste avec structure [AM03] • Opérations avec marches aléatoires Operations: temps: O(log n) msg: O(√n log n) clients / serveurs
Vincent Gramoli, ASAP Research group MPD et Passage à l’échelle • Méthode probabiliste avec structure [AM03] • Reconfiguration de rééquilibrage du graphe Operations: temps: O(log n) msg: O(√n log n) Reconfiguration: temps: O(log n) msg: O(log n) clients / serveurs
Vincent Gramoli, ASAP Research group MPD et Passage à l’échelle • Méthode probabiliste sans structure [GKM+06] • Opération épidémique Operations: temps: O(log √n) msg: O(√n) clients / serveurs
Vincent Gramoli, ASAP Research group MPD et Passage à l’échelle • Méthode probabiliste sans structure [GKM+06] • Aucune reconfiguration nécessaire Operations: temps: O(log √n) msg: O(√n) Reconfiguration: 0 si graphe aléatoire clients / serveurs
Conclusion 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’05G. 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’07V. Gramoli, E. Anceaume, and A. Virgillito. Vincent Gramoli, ASAP Research group