Apache spark GraphX:给定一个顶点ID获取所有连接的顶点

Apache spark GraphX:给定一个顶点ID获取所有连接的顶点,apache-spark,spark-graphx,Apache Spark,Spark Graphx,所以基本上我有一个图和一个特定顶点的ID 给定该顶点,如何将所有直接连接的顶点都连接到该顶点?(也就是说,只差一个边) 谢谢让我们假设您希望使用中的示例图查找直接连接到“franklin”(VertexId5L)的所有用户。最简单、可能也是最有效的方法是使用collectNeighborIds/图形。collectNeighbories然后是查找: import org.apache.spark.graphx.EdgeDirection val方向:边缘方向=???//进进出出。。。 图.方向.

所以基本上我有一个图和一个特定顶点的ID

给定该顶点,如何将所有直接连接的顶点都连接到该顶点?(也就是说,只差一个边)


谢谢

让我们假设您希望使用中的示例图查找直接连接到“franklin”(
VertexId
5L)的所有用户。最简单、可能也是最有效的方法是使用
collectNeighborIds
/
图形。collectNeighbories
然后是
查找

import org.apache.spark.graphx.EdgeDirection
val方向:边缘方向=???//进进出出。。。
图.方向.查找(5L)
另一种方法是使用
triplets
filter
结果:

/“franklin”是源代码
graph.triplets.collect{
如果t.srcId==5L=>t.dstId,则为案例t
}
当然,您可以添加其他方向并传递附加信息,如
srcAttr
dstAttr
vertexAttr
。如果您希望保留完整的三元组,可以将
收集
替换为
过滤器
。然而,如果您需要单条边/顶点查找,Spark很可能不是该工作的最佳工具