JUNG の PageRank アルゴリズムを既存の neo4j グラフ データベースで実行し、将来の参照用にノードのスコアをプロパティとして保存しようとしています。
そこで、次の 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)}
グレムリンで実行します。
スムーズに実行され、プロパティを確認すると、g.v(2381).map()
期待どおりの結果が得られます。
しかし、gremlin を離れて neo4j サーバーを起動すると、これらの変更は存在しません。
誰でも理由とこれを修正する方法を説明できますか?
私の推測では、gremlin のグラフが埋め込まれていることと関係があると思います。
gremlin> g
==>neo4jgraph[EmbeddedGraphDatabase [/path/to/graph.db]]
何か案は?