【发布时间】:2018-11-15 18:25:15
【问题描述】:
一个 GraphX 顶点可以存储多少属性(属性键:值对)?
val vertexArray = Array(
(1L, ("Name", "Alice"), ("age", 28), ("major", "ECE")),
(2L, ("Name", "John"), ("age", 23), ("major", "History")),
(3L, ("Name", "Mark"), ("age", 34), ("major", "Education"))
)
val edgeArray = Array(
Edge(1L, 3L, "cousin"),
Edge(1L, 2L, "spouse")
)
val vertexRDD = sc.parallelize(vertexArray)
val edgeRDD = sc.parallelize(edgeArray)
val graph = Graph(vertexRDD, edgeRDD)
当我创建图表时,上面的代码给了我错误。
Error:(28, 21) type mismatch;
found : org.apache.spark.rdd.RDD[(Long, (String, String), (String, Int), (String, String))]
required: org.apache.spark.rdd.RDD[(org.apache.spark.graphx.VertexId, ?)]
(which expands to) org.apache.spark.rdd.RDD[(Long, ?)]
Error occurred in an application involving default arguments.
val graph = Graph(vertexRDD, edgeRDD)
^
另外,vertexId 是否总是必须为 Long,或者 graphX 是否也支持 String vertexId(如果我想使用 java UUID)?
【问题讨论】:
-
@yogesh.tewari 不知道为什么这被标记为neo4j。我删除了它。另外:请用您的错误编辑您的问题;不要在 cmets 中添加额外的细节。
-
我理解错误,只是想确认是否有一种方法可以像在 neo4j 节点中一样在 graphx 顶点中存储多个属性。
-
该评论是您第一次提到与 neo4j 相关的任何事情。无论如何:这不是 neo4j 问题。
-
嗨,大卫,我指的是 Neo4j,所以我想我会标记它。但如果它没有意义,那么我将删除它。我将移动原问题中的错误日志。