Maintaining Balanced Trees For Structured Distributed Streaming Systems - Inria - Institut national de recherche en sciences et technologies du numérique Accéder directement au contenu
Rapport (Rapport De Recherche) Année : 2013

Maintaining Balanced Trees For Structured Distributed Streaming Systems

Résumé

In this paper, we propose and analyze a simple localized algorithm to balance a tree. The motivation comes from live distributed streaming systems in which a source diffuses a content to peers via a tree, a node forwarding the data to its children. Such systems are subject to a high churn, peers frequently joining and leaving the system. It is thus crucial to be able to repair the diffusion tree to allow an efficient data distribution. In particular, due to bandwidth limitations, an efficient diffusion tree must ensure that node degrees are bounded. Moreover, to minimize the delay of the streaming, the depth of the diffusion tree must also be controlled. We propose here a simple distributed repair algorithm in which each node carries out local operations based on its degree and on the subtree sizes of its children. In a synchronous setting, we first prove that starting from any n-node tree our process converges to a balanced tree in O(n2) turns. We then describe a more restrictive model, adding a small extra information to each node, for which the convergence is reached in O(n log n) turns and this bound is tight. We then exhibit by simulation that the convergence is much faster (logarithmic number of turns in average) for a random tree.
Dans cet article, nous proposons et analysons un algorithme local simple pour ́equilibrer un arbre. La motivation vient des syst'emes distribu ́es de diffusion en temps r ́eel, dans lesquels une source diffuse un contenu vers des r ́ecepteurs via un arbre, un noeud transmettant les donn ́ees 'a ses enfants. Ces syst'emes sont soumis 'a un niveau ́elev ́e d'arriv ́ees et de d ́eparts (churn). Il est donc crucial d'ˆetre en mesure de r ́eparer efficacement l'arbre de diffusion afin de permettre une distribution efficace des donn ́ees. En particulier, en raison de limitations de bande passante, un arbre de diffusion efficace doit veiller 'a ce que les degr ́es des noeuds soient born ́es. Par ailleurs, pour minimiser le d ́elai de la diffusion en continu, la profondeur de l'arbre de diffusion doit ́egalement ˆetre contrˆol ́ee. Nous proposons ici un algorithme de r ́eparation distribu ́e simple dans lequel chaque nœud ex ́ecute des op ́erations locales en fonction de son degr ́e et de la taille des sous-arbres de ses enfants. Dans un cadre synchrone, nous montrons tout d'abord, qu''a partir de n'importe quel arbre avec n nœuds, notre processus converge vers un arbre ́equilibr ́e en O(n2) tours. Nous d ́ecrivons ensuite un mod'ele plus restrictif, en ajoutant une petite information suppl ́ementaire pour chaque nœud, pour lequel la convergence est atteinte en O(n log n) tours, cette borne ́etant serr ́ee. Nous mettons ensuite en ́evidence par simulation que la con- vergence est beaucoup plus rapide (nombre logarithmique de tours en moyenne) pour un arbre al ́eatoire.
Fichier principal
Vignette du fichier
report.pdf (830.73 Ko) Télécharger le fichier
Origine : Fichiers produits par l'(les) auteur(s)
Loading...

Dates et versions

hal-00824269 , version 1 (21-05-2013)

Identifiants

  • HAL Id : hal-00824269 , version 1

Citer

Frédéric Giroire, Remigiusz Modrzejewski, Nicolas Nisse, Stéphane Pérennes. Maintaining Balanced Trees For Structured Distributed Streaming Systems. [Research Report] RR-8309, INRIA. 2013. ⟨hal-00824269⟩
317 Consultations
207 Téléchargements

Partager

Gmail Facebook X LinkedIn More