使用 Spark 和 GraphX 相互查找边
Find mutually Edges with Spark and GraphX
我是 spark 和 graphx 的新手。我的问题是,如果我有一个图表,其中一些节点之间有相互(相互)边,我想 select 具有良好性能的边。一个例子:
来源目的地
1 2
1 3
1 4
1 5
2 1
2 5
2 6
2 7
3 1
我要得到结果:
1 2
2 1
1 3
3 1
顺序可以随意。有谁知道我怎样才能得到这个?
尝试:
edges.intersection(edges.map(e => Edge(e.dstId, e.srcId))
请注意,这也会比较 Edge.attr
值。如果您想忽略 attr
值,请执行以下操作:
edges.map(e=> (e.srcId,e.dstId)).intersection(edges.map(e => (e.dstId, e.srcId)))
我是 spark 和 graphx 的新手。我的问题是,如果我有一个图表,其中一些节点之间有相互(相互)边,我想 select 具有良好性能的边。一个例子:
来源目的地
1 2
1 3
1 4
1 5
2 1
2 5
2 6
2 7
3 1
我要得到结果:
1 2
2 1
1 3
3 1
顺序可以随意。有谁知道我怎样才能得到这个?
尝试:
edges.intersection(edges.map(e => Edge(e.dstId, e.srcId))
请注意,这也会比较 Edge.attr
值。如果您想忽略 attr
值,请执行以下操作:
edges.map(e=> (e.srcId,e.dstId)).intersection(edges.map(e => (e.dstId, e.srcId)))