我无法理解节点之间的距离如何变为0,2,4,6。
任何人都可以解释。
根据权威指南,
例如,想象一下数据中心d1中机架r1上的节点n1。
这可以表示为/d1/r1/n1
。使用这种表示法,以下是四种情景的距离:
•distance(/d1/r1/n1, /d1/r1/n1) = 0
(同一节点上的进程)
•distance(/d1/r1/n1, /d1/r1/n2) = 2
(同一机架上的不同节点)
•distance(/d1/r1/n1, /d1/r2/n3) = 4
(同一数据中心内不同机架上的节点)
•distance(/d1/r1/n1, /d2/r3/n4) = 6
(不同数据中心的节点)。
•distance(/d1/r1/n1, /d2/r3/n10) = ?
答案 0 :(得分:1)
让我们将您的群集想象成具有以下级别的树:
如果我们绘制这棵树应该有这样的东西:
让我们计算任何圆圈与其父亲之间的距离为1.
然后,任意两个圆之间的距离是它们与最近共同祖先的距离之和或同一节点的0之和。
因此,不同数据中心的任何两个节点(例如/ d1 / r1 / n1和/ d2 / r4 / n10之间)总是 6 。
答案 1 :(得分:1)
“两个节点之间的距离是它们与最近共同祖先的距离之和”(Hadoop:The Definitive Guide 4th ed,page 70)
距离(/ d1 / r1 / n1,/ d2 / r3 / n10)= 6
两个节点之间的共同祖先是/
所以从n1到/的距离为3
和从n10到/的距离为3
总数为6