【发布时间】:2017-04-04 16:39:20
【问题描述】:
在 Spark GraphX 中,ShortestPaths 不采用 RDD 作为输入,而是采用 Seq
这意味着以下内容不起作用:
val paths = ShortestPaths.run(graph,graph.vertices)
但是我的图表太大而无法调用collect,我不想通过仅将其强制到驱动程序上来减慢速度。是否可以使用map 或aggregateMessages 解决此问题?还是我必须自己重写寻路代码?
【问题讨论】:
-
@Michal 我不确定你的意思? GraphX 不能与 Dataframe 一起使用。
-
过去有一种方法可以简单地通过
toSchemaRDD()转换RDD,但它已被弃用,文档说toDF()是现在使用的函数。 -
@Michal 我不想要数据帧。
ShortestPaths期望Seq不是 DF。 -
这是有意的,因为
Spark的最短路径算法的实现是单一目标版本,您应该只提供您感兴趣的目标顶点。