2017-09-27 17 views
1

グラフ内の各パーティションの頂点の数は、どのように数えますか?GraphXの各パーティションの頂点の数

RDDスパークに.mapPartition、

GraphXのグラフは、同様の.mapPartitionVerticesを持っていないので、あなたは彼らがどのように多くの要素をカウントすることはできません

を有しているがパーティション内にあります。あなたが頂点を得るよりも、それを行う、その後、手動でそれを確認するためのより良い方法を持っている場合、私は思っていた

graph.vertices.mapPartitions

答えて

0

VertexRDDクラスにはありませんパーティションを操作する変換方法がありますが、RDDオブジェクトを取得してパーティションあたりのレコード数をカウントするにはmap変換を適用できます。マップ変換では、1つのパーティションごとに要素と要素の数は変更されません。

などです。

val countRDD = graph.vertices.map{ case (id, attr) => (id, attr) } 
.mapPartitionsWithIndex{case (i,rows) => Iterator((i,rows.size))} 

countRDD.collect() 
関連する問題