2017-04-24 6 views
0

je ne pouvais pas comprendre la façon dont la distance entre les nœuds est devenu 0, 2, 4, 6.topologie du réseau sur Hadoop

Quelqu'un peut-il expliquer s'il vous plaît.

Selon le guide définitif,

Par exemple, imaginez un nœud n1 sur la grille r1 dans le centre de données d1. Ceci peut être représenté par /d1/r1/n1. En utilisant cette notation, voici les distances pour les quatre scénarios:

distance(/d1/r1/n1, /d1/r1/n1) = 0 (processus sur le même noeud)

distance(/d1/r1/n1, /d1/r1/n2) = 2 (différents nœuds sur le même rack)

distance(/d1/r1/n1, /d1/r2/n3) = 4 (nœuds différents racks dans le même centre de données)

distance(/d1/r1/n1, /d2/r3/n4) = 6 (nœuds dans différents centres de données).

distance(/d1/r1/n1, /d2/r3/n10) = ?

Network distance in Hadoop

Répondre

1

Imaginons votre cluster comme un arbre avec des niveaux suivants:

  • Résumé racine globale (Top ou racine)
  • centres de données (1er niveau)
  • Racks (2e niveau)
  • nœuds (3e niveau ou feuilles)

Si nous traçons cet arbre il devrait y avoir quelque chose comme ceci:

Cluster topology

Let la distance de comptage entre un cercle et son parent comme 1.

Ensuite, la distance entre deux cercles est la somme de leur distance à leur ancêtre commun le plus proche ou 0 pour le même nœud.

Donc, c'est toujours pour deux nœuds dans différents centres de données (comme entre/d1/r1/n1 et/d2/r4/n10).

+0

Merci @ Maxaxeff, cette image en dit beaucoup, belle explication. – BigData

1

"la distance entre deux noeuds est la somme de leurs distances à leur plus proche ancêtre commun" (Hadoop: La référence 4e éd page 70)

distance (/ d1/r1/n1,/d2/r3/n10) = 6

l'ancêtre commun entre deux noeuds est/

de sorte que la distance par rapport à n1/3 est

et la distance par rapport à n10/3 est

le total est 6