Я работаю с GraphX в Spark для обработки графика. у меня есть val common_neighbors: RDD[VertexId]
, который содержит некоторый vertexId. я использую функцию карты, чтобы преобразовать ее в такую структуру, как (узел, 1), у которого узел является идентификатором вершины, а 1 - его начальным свойством. код для преобразования приведен ниже:
val p =common_neighbors.map(x=>(x,1))
У меня есть график, который имеет такую структуру, как: (узел, узел_произведения (метка, isDefined)). например (1, (14, правда)). это означает, что узел с ID = 1 имеет метку = 14 и isDefined.
Я хочу преобразовать свойство узлов в p параллельно и распределенным способом, если метка узла на графике больше 5. Код ниже:
val x=p.map(node=>{
val temp_property=graph.vertices.filter(x=>x._1==node._1).values.take(1)
if(temp_property(0).label > 5) {
(node._1,((temp_property(0).label)+5))
}
})
Но когда я выполняю код, я получаю ошибки. В чем проблема с этим? Как я могу это исправить?