是否可以在大图中用并行框架实现全对最短路径算法?

bou*_*eli 7 graph apache-spark

使用spark graphx pregel api,可以轻松计算大图中的单源最短路径,例如数百万个顶点和数千个边缘,并且具有可接受的运行时间,例如几个小时.但是可以在可接受的运行时间内在大图中运行所有对最短路径吗?

小智 6

具有数百万个顶点的图形可以在单个机器上轻松处理,只要它具有足够的内存,因此不需要支付通过扩展和许多现代库引入的惩罚,大量优化并且可以利用现代硬件.

相比之下,分布式解决方案通常受到节点间通信的限制,并且精确算法不能很好地扩展.通过近似和启发式方法可以显着改善事物,并利用有关数据结构的先验知识.

(意见警告)就个人而言,我会尽可能远离Spark上的图形处理:

  • 几年前GraphX已被有效放弃.根据Facebook的研究,它还显示出非常差的扩展能力
  • Grapframes不成熟且效率低下.