neo4j 中参考节点的概念是不是仍在使用或弃用?

Posted

技术标签:

【中文标题】neo4j 中参考节点的概念是不是仍在使用或弃用?【英文标题】:Is concept of reference node in neo4j still used or deprecated?neo4j 中参考节点的概念是否仍在使用或弃用? 【发布时间】:2013-02-26 12:01:35 【问题描述】:

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

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

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

谢谢。

【问题讨论】:

【参考方案1】:

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

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

【讨论】:

【参考方案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中检索所有节点的方法是什么?

【讨论】:

那个现在在api.neo4j.org/current/org/neo4j/tooling/…

以上是关于neo4j 中参考节点的概念是不是仍在使用或弃用?的主要内容,如果未能解决你的问题,请参考以下文章

Neo4j 是不是能够在 HDFS 中存储数据?

使用 REST 优化 Neo4j 的大批量批量插入

neo4j初次使用学习简单操作-cypher语言使用

neo4j-简介,安装

Neo4j_01属性图

Neo4j 是不是支持视图的概念