鲲鹏社区首页
中文
注册
我要评分
文档获取效率
文档正确性
内容完整性
文档易理解
在线提单
论坛求助

MSSP

run API

  • API
    1
    def run[VD, ED: ClassTag](graph: Graph[VD, ED], landmarks: Seq[VertexId]): Graph[SPMap, ED]
    
  • 功能描述

    计算图中所有结点到指定结点的最短路径距离。

  • API描述
    1. 包名:package org.apache.spark.graphx.lib.ShortestPaths
    2. 类名:ShortestPaths
    3. 方法名:run
    4. 输入:
      1. graph: Graph[VD,ED]
      2. landmarks: Seq[vertexId]
    5. 参数详情:

      参数名称

      取值类型

      描述

      graph

      Graph[VD,ED]

      从文件中读入后的Graph数据

      landmarks

      Seq[VertexId]

      指定结点序列

    6. 输出:resultGraph:Graph[SPMap,ED]
  • 使用样例

    MSSP样例:

    val sc = new SparkContext(new SparkConf().setMaster("yarn").setAppName("MSSP")) 
    val inputGraphRaw = Array((1L, 2L), (3L, 2L), (3L, 1L), (2L, 3L), (4L, 2L) , (5L, 6L))
    val sourceRaw = Array(1L,2L) 
    val inputGraph = sc.parallelize(inputGraphRaw)
    val graph = GraphDataLoader.convertToGraphXGraph(inputGraphRaw).persist()
    val source = sc.parallelize(sourceRaw) 
    val res = run(graph, sources.collect.toSeq).vertices.collectAsMap()
  • 样例结果
    Res:
    Map(
    2 -> Map(2 -> 0, 1 -> 2), 
    4 -> Map(2 -> 1, 1 -> 3), 1 -> Map(1 -> 0, 2 -> 1), 
    3 -> Map(1 -> 1, 2 -> 1),
    5 -> Map(),
    6 -> Map())