【发布时间】:2024-05-19 15:05:01
【问题描述】:
我对 Scala 和 GraphX 还很陌生,所以这可能是一个微不足道的问题。我正在尝试反转图的每个边缘的方向,然后获取新反转图的每个顶点的邻接列表。 输入格式为“FromNodeId \t ToNodeId”
0 1
0 2
1 2
1 3
我设法用以下代码反转边缘的方向:
object Problem2{
def main(args: Array[String]){
val inputFile:String = args(0)
val outputFolder = args(1)
val conf = new SparkConf().setAppName("Problem2").setMaster("local")
val sc = new SparkContext(conf)
val input = sc.textFile(inputFile)
val graph = GraphLoader.edgeListFile(sc,inputFile)
val newGraph = graph.reverse.edges
}
}
输出格式为
Edge(1,0,1)
Edge(3,1,1)
Edge(2,1,1)
Edge(2,0,1)
我的问题是, 1. 有没有更有效的解决问题的方法 2. 如何从这里开始为每个顶点构建邻接表?
【问题讨论】:
标签: scala apache-spark spark-graphx