0
假設VertexID,我通過做所有直接連接的頂點到那個頂點?(IE,只有一個邊)一個collectNeighborsId和使用下面的代碼查詢:GraphX - 如何將一個數組[(VertexId,Array(VertexId)]轉換爲Set(VertexId)
val ID = 20
val res = graph.collectNeighborIds(EdgeDirection.Out).lookup(ID)
結果類是ArrayBuffer(陣列(龍)象下面這樣:
ArrayBuffer(Array(10006, 10009, 10015, 10017, 10025, 10028, 10030, 10037, 10041, 10043, 10046, 10049, 10055, 10056, 10057, 10058, 10059, 10060, 10061, 10068, 10070, 10081, 10082, 10087, 10096, 10101, 10105, 10108, 10111, 10113, 10115, 10119, 10125, 10127, 10129, 10132, 10136, 10137, 10141, 10150, 10152, 10153, 10156, 10158, 10163, 10166, 10167, 10171, 10172, 10173, 10175, 10183, 10186, 10187, 10192, 10193, 10197, 10198, 10201, 10209, 10212, 10213, 10214, 10223, 10226, 10228, 1367, 1654, 1670, 2034, 2146, 2481, 58776, 58778, 58788, 58789))
我需要將其轉換爲只是一組[龍] .. 我試圖通過使用toSet ..但它仍然導致數組(集[長])
哪個GraphX的版本您使用的?根據[API文檔](collectNeighborIds),'collectNeighborIds'返回一個'VertexRDD',它似乎沒有方法'lookup' ... – davidrpugh