4

我在tutorials-java-embedded-index浏览 neo4j 文档。它描述了参考节点的概念。创建一个用户参考节点usersReferenceNode,用于连接数据库中创建的所有用户节点。

这个参考节点的用途是什么?当我尝试使用graphDb.getReferenceNode()时,它显示为不推荐使用的方法。

那么是否/是否需要创建参考节点?如果是,这种参考节点的用途和用途是什么?

谢谢。

4

2 回答 2

8

由于系统的设计,参考节点的概念已被弃用。索引应该用于检索某些类型的节点等。所以你可以有一个名为Animal的索引和一个名为的索引Bird,它们可以存储那些“类型”的节点。

删除参考节点的一个原因是密集节点问题,如果您无法将所有内容都存储在Neo4j. 这是您拥有一个具有许多关系的节点的地方。在某个点(取决于系统,但通常在数十万个)之后,根据关系类型查找节点。

于 2013-02-26T16:07:35.670 回答
2

我可以看到的参考节点的一个用例是删除特定节点。例如考虑以下场景:

> I have two types of nodes, say ANIMAL and BIRD
> I have a reference node `animalsReference` linked to all ANIMAL nodes and
> I have a reference node `birdsReference` linked to all BIRD nodes

现在将来假设我想删除所有 BIRD 节点。在这里,我可以使用“birdsReference”来获取所有 BIRD 类型的节点并将它们全部删除。

如果graphDb.getReferenceNode()不推荐使用,我们如何完成此类任务(删除一些节点)?

我也可以看到graphDb.getAllNodes()已弃用。那么检索所有节点的方法是graphDB什么?

于 2013-02-26T12:21:21.233 回答