1
舉例來說,如果我有兩個圖形與頂點和邊是這樣的:如何獲取Spark Graphx中常用邊的數量?
import org.apache.spark.graphx._
import org.apache.spark.rdd.RDD
val vertexRdd1: RDD[(VertexId, (String, Int))] = sc.parallelize(Array(
(1L, ("a", 28)),
(2L, ("b", 27)),
(3L, ("c", 65))
))
val edgeRdd1: RDD[Edge[Int]] = sc.parallelize(Array(
Edge(1L, 2L, 1),
Edge(2L, 3L, 8)
))
val vertexRdd2: RDD[(VertexId, (String, Int))] = sc.parallelize(Array(
(1L, ("a", 28)),
(2L, ("b", 27)),
(3L, ("c", 28)),
(4L, ("d", 27)),
(5L, ("e", 65))
))
val edgeRdd2: RDD[Edge[Int]] = sc.parallelize(Array(
Edge(1L, 2L, 1),
Edge(2L, 3L, 4),
Edge(3L, 5L, 1),
Edge(2L, 4L, 1)
))
我怎樣才能得到這兩個圖表之間的共同邊的數量,而不考慮邊緣屬性?因此,在上面的例子中,公共邊的數量是2,並且公共邊是:邊(1L,2L,1)和邊(2L,3L,8)共有的邊(1L,2L,1) 2L,3L,4)。
我在scala編程。
謝謝了很多,它的工作! –