我正在尝试在我现有的 neo4j 图形数据库上运行 JUNGs PageRank 算法,并将节点的分数保存为属性以供将来参考。
所以我创建了以下 groovy 文件:
import edu.uci.ics.jung.algorithms.scoring.PageRank
g = new Neo4jGraph('/path/to/graph.db')
j = new GraphJung(g)
pr = new PageRank<Vertex,Edge>(j, 0.15d)
pr.evaluate()
g.V.sideEffect{it.pagerank=pr.getVertexScore(it)}
并通过 gremlin 运行它。
它运行顺利,如果我要通过g.v(2381).map()
我检查财产,我会得到我所期望的。
但是,当我离开 gremlin 并启动我的 neo4j 服务器时,这些修改是不存在的。
谁能解释为什么以及如何解决这个问题?
我的预感是它与我在 gremlin 中嵌入的图形有关:
gremlin> g
==>neo4jgraph[EmbeddedGraphDatabase [/path/to/graph.db]]
有任何想法吗?