2016-11-26 4 views
1

Neo4jは後で参照するために第三者システムに格納するためにノードIDを使用することはお勧めしません。neo4jノード用のjavaでuuidを生成する最適な方法は何ですか

  1. したがって、neo4jノードのjavaでuuidを生成するにはどうすればよいですか?
  2. 現在、私はUUID.randomUUID()を使用しています。 uuidを生成する。 UUID.randomUUID()を使用すると、neo4j検索のパフォーマンスに影響はありますか?
+0

で働いています。あなたが使っているのはあなたの好みに完全に依存しています(あなたが必要であれば)。UUIDの生成がデータベース呼び出しのような操作コストに近いところにあるとは思えません。 –

答えて

0

内部IDが安定していないため、外部システムの内部IDを参照しないでください。

UUIDを生成するオプションの1つは、apoc procedure libraryで利用可能なapoc.create.uuid関数を使用することです。例:

CREATE (p:Person) 
SET p.name = "Bob", 
    p.uuid = apoc.create.uuid() 

ユーザー定義のプロシージャおよび機能の詳細は、this blog postを参照してください。

0

もう一つの選択肢は、GraphAware UUIDを使用して、UUIDをノードおよびオプションで関係に透過的に割り当てることです。また、UUIDが変更または削除されていないことを確認します。

https://github.com/graphaware/neo4j-uuid

免責事項:私は、これは、ツール/フレームワーク勧告の質問のように思えるGraphAware

+0

@ルアンナ私はあなたの提案を試みて、それが文字列ベースのuuidを生成するようです。数値ベースのuuidではなく、文字列ベースのuuidを使用した検索と索引付けのパフォーマンスに影響はありますか? –

関連する問題