Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/scala/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Scala 如何获得Spark中图形的最大连通分量的大小?_Scala_Apache Spark_Spark Graphx - Fatal编程技术网

Scala 如何获得Spark中图形的最大连通分量的大小?

Scala 如何获得Spark中图形的最大连通分量的大小?,scala,apache-spark,spark-graphx,Scala,Apache Spark,Spark Graphx,我正在从源节点和目标节点元组的RDD构建一个图,如下所示: Graph.fromEdgeTuples(rawEdges = edgeList, 1) 首先,我不太明白第二个参数是什么。根据文件 默认值用于创建顶点的顶点属性 由边引用 我还是不明白 其次,我找不到任何东西来计算最大组件的大小。调用connectedComponents方法后,没有实现foreach,也没有map或reduceByKey或任何其他内容 defaultValue是指定给所有创建边的属性: val graph = Gr

我正在从源节点和目标节点元组的RDD构建一个图,如下所示:

Graph.fromEdgeTuples(rawEdges = edgeList, 1)
  • 首先,我不太明白第二个参数是什么。根据文件

    默认值用于创建顶点的顶点属性 由边引用

    我还是不明白

  • 其次,我找不到任何东西来计算最大组件的大小。调用
    connectedComponents
    方法后,没有实现
    foreach
    ,也没有
    map
    reduceByKey
    或任何其他内容

  • defaultValue
    是指定给所有创建边的属性:

    val graph = Graph.fromEdgeTuples(sc.parallelize(Seq(
      (1, 2), (2, 3), (4, 5))), 1)
    
    graph.edges.map(_.attr).distinct.collect 
    // Array[Int] = Array(1)
    
  • 提取组件ID并进行工作计数:

    val ids = graph.connectedComponents.vertices map((v: (Long, Long)) => v._2)
    ids.map((_, 1L)).reduceByKey(_ + _)
    
  • defaultValue
    是指定给所有创建边的属性:

    val graph = Graph.fromEdgeTuples(sc.parallelize(Seq(
      (1, 2), (2, 3), (4, 5))), 1)
    
    graph.edges.map(_.attr).distinct.collect 
    // Array[Int] = Array(1)
    
  • 提取组件ID并进行工作计数:

    val ids = graph.connectedComponents.vertices map((v: (Long, Long)) => v._2)
    ids.map((_, 1L)).reduceByKey(_ + _)