这里主要讲Aggregator, 在Pagerank计算中,由于每轮需要计算aggregation的值,即Hama中的globalError,这是一个每轮根据各个顶点value汇总进行reduce的聚合值,由于Pregel中即使顶点已经收敛,但其邻接顶点未收敛的话,他将被迫参与运算, 比如1->2, 3->2, 即使1收敛了,2,3未收敛的话,1同样将参与计算,无法halt,必须等到
MAXIMUM_CONVERGENCE_ERROR > globalError.get()
即所有顶点汇总的aggregation值小于自定义的MAXIMUM_CONVERGENCE_ERROR 时,才能有 voteToHalt();
即当前顶点才能停止计算,而不是当它收敛时就停止计算!
这是Pregel的一个大问题。GraphLab对此进行了解决。
本文深入探讨了Pregel计算框架在聚合操作中的问题,特别是当顶点收敛而邻接顶点未收敛时的计算机制。通过对比分析,引入了GraphLab在解决此类问题上的改进策略,旨在提升并行计算效率。
3603

被折叠的 条评论
为什么被折叠?



