避免使用Java插入重复的节点,Neo4j

时间:2016-06-21 13:06:55

标签: java neo4j duplicates cypher graph-databases

我正在尝试使用Java将一些节点添加到我的Neo4j Graph数据库中,如下所示:

Node basketCourt = graphDatabaseService.createNode(Labels.COURT);
Node playerNode = graphDatabaseService.createNode(Labels.PLAYER);
playerNode.setProperty("name", player.getName());
Relationship relation = playerNode.createRelationshipTo(basketCourt, RelTypes.PLAYS);

我的图形数据库最多可以达到一百万个节点。 我不希望图表包含重复的节点。例如,我不希望拥有多个名为" Micheal Jordan"的玩家节点。使用" findNode(Label,String,Object)"在插入之前检查节点是否已经在数据库中,因为我有数百万个节点需要花费太多时间。

我正在寻找像" Merge"在Cypher中,它匹配模式或创建它,如果它不存在。但我想使用Java而不是Cypher插入节点。有办法吗?也许我可以配置以避免重复?或Neo4j想到的东西,并为我的问题提供了解决方案?

谢谢!

0 个答案:

没有答案