Persistance de noyau dans les systèmes dynamiques à grande échelle V. Gramoli, A-M. Kermarrec, A. Mostéfaoui, M. Raynal, B. Sericola
Contexte Les systèmes dynamiques à grande échelle Les nœuds quittent et rejoignent le système Lorsqu’ils reviennent il ne possèdent pas forcément leurs données Les nœuds ne peuvent maintenir une information globale Problème de persistance des données Pour une donnée, si tous les nœuds la détenant quittent le système, cette donnée est perdue Constatations sur les systèmes Peer-to-Peer Très dynamiques Jamais vides AlgoTel 2007
Motivation de la Persistence Disponibilité des données Répliquer sur suffisamment de noeuds Répliquer suffisamment fréquemment Cohérence atomique des données = Disponibilité de la dernière valeur écrite Répliquer la valeur à jour (i.e., donnée critique) Sur suffisamment de noeuds Suffisamment fréquemment …en dépit du dyamisme AlgoTel 2007
But Assurer la persistance des données en dépit du dynamisme du système. Défi majeur Etant donné La probabilité requise, p, et Le va-et-vient (« churn ») du système, v, Il faut recopier la donnée Ajuster la période de recopiage, δ, Ajuster la taille de la recopie, q. AlgoTel 2007
Modèle du système Système distribué à grande échelle Système dynamique n nœuds interconnectés Chacun avec id unique Sans connaissance globale Système dynamique Les nœuds rejoignent/quittent le système. Un nœud rejoignant est nouveau. Donnée Une donnée est détenue par un sous-ensembles de nœuds, le noyau. AlgoTel 2007
Modèle de va-et-vient (« churn »), v Intensité du dynamisme du système. Il représente: Le taux de départ et d’arrivée par nœud et par unité de temps. On observe le système à 2 instants Soit Q le noyau de départ, et q sa taille, Soit A les nœuds remplacés, et α sa taille, Soit Q’ le noyau après remplacement. AlgoTel 2007
Modèle de va-et-vient t temps Nœuds avec la donnée. Nœuds sans la donnée. t temps AlgoTel 2007
Modèle de va-et-vient t temps Nœuds avec la donnée. Nœuds sans la donnée. t temps Le Noyau Q au temps t, |Q| = q AlgoTel 2007
Modèle de va-et-vient t t + δ temps Nœuds avec la donnée. Nœuds sans la donnée. t t + δ temps Après une période δ = 2 et avec un va-et-vient de v = 0,2 Le Noyau Q au temps t, |Q| = q AlgoTel 2007
Modèle de va-et-vient t t + δ temps Nœuds avec la donnée. Nœuds sans la donnée. t t + δ temps Après une période δ = 2 et avec un va-et-vient de v = 0,2 Les nœuds remplacés A, |A| = α Le Noyau Q au temps t, |Q| = q AlgoTel 2007
Modèle de va-et-vient t t + δ temps Nœuds avec la donnée. Nœuds sans la donnée. t t + δ temps Après une période δ = 2 et avec un va-et-vient de v = 0,2 Les nœuds remplacés A, |A| = α Le noyau Q’ au temps t+δ, |Q’| = q Le Noyau Q au temps t, |Q| = q AlgoTel 2007
Modèle de va-et-vient Evolution du nombre des nœuds initialement présents t0 n nœuds initiaux t1 n-nv = n(1-v) nœuds initiaux ... ti n(1-v)i nœuds initiaux ti+1 n(1-v)i - n(1-v)iv = n(1-v)i+1 nœuds initiaux On choisit α = ┌n-n(1-v)δ┐ le nombre de nœuds remplacés après δ unités de temps AlgoTel 2007
Disponibilité d’une donnée Initialement, q nœuds ont la donnée Les nœuds remplacés sont choisis aléatoirement de façon uniforme Combien de copies de la donnée restent-il de disponible après δ unités de temps dans un système avec va-et-vient v ? AlgoTel 2007
Disponibilité d’une donnée Observation préliminaire Le nombre β = |Q’ ∩ A| de nœuds qui avaient la donnée et quittent le système est borné: max(0, α + q - n) ≤ β ≤ min(α, q) a b AlgoTel 2007
Disponibilité d’une donnée Probabilité que β = k copies de la donnée aient été remplacées ? AlgoTel 2007
Chercher une donnée Initialement, q nœuds ont la donnée. δ unités de temps plus tard, on tire aléatoirement et de façon uniforme q nœuds du système. Quelle est la probabilité qu’on trouve la donnée critique après ces δ unités de temps dans un système avec va-et-vient v ? AlgoTel 2007
Chercher une donnée Probabilité de ne pas trouver la donnée Tirage aléatoire, uniforme et sans remise de q nœuds. Soit E = Q’ \ A. (évts disjoints) AlgoTel 2007
Chercher une donnée Probabilité de ne pas trouver la donnée AlgoTel 2007
Taille de Noyau pour n = 104 la taille du noyau proba de ne pas trouver la donnée AlgoTel 2007
Probabilité, dynamisme, durée de vie et noyau Variation du va-et-vient et de la probabilité Proba de trouver α/n Taille du noyau pour AlgoTel 2007
Conclusion Retrouver une donnée est paradoxalement facile! Applications de stockage Modifier les données en q nœuds Accéder les données à jour en contactant q nœuds Les noyaux sont des quorums probabilistes Futures recherches Modéliser le churn en utilisant un modèle plus réaliste (Markovien continue). Spécifier un protocole pour la cohérence/persistance probabiliste des données en systèmes dynamiques. AlgoTel 2007
Des références Core Persistence in P2P Systems. Relating size to Lifetime. V. Gramoli, A.-M. Kermarrec, A. Mostéfaoui, M. Raynal, B.Séricola OTM’06 Int’l Workshop on Reliability in Decentralized Distributed Systems A Quorum based protocol for searching objects in P2P ntwks. K. Miura, T. Tagawa, and H. Kakugawa. IEEE Trans. on Parallel and Distributed Systems, 17(1):25–37, 2006. Probabilistic quorums for dynamic systems. I. Abraham and D. Malkhi. Distributed Computing, 18(2):113–124, 2005. Reconfigurable distributed storage for dynamic ntwks. G. Chockler, S. Gilbert, V. Gramoli, P. M. Musial, and A. A. Shvartsman. In Proc. of 9th Int’l Conf. on Principles of Distributed Systems, 2005. AlgoTel 2007