一个图形数据库中的多个 'databases'

Multiple 'databases' within one graph database

我使用 GrapheneDB 托管我的 neo4j 数据库 (db)。

问题

我有 N 个客户,正在寻找自动分离他们的内容(他们唯一的数据库)的方法,这样:

选项 1

由于我不熟悉自动创建新的 neo4j 服务器,并且希望保持简单,我的想法是为每个 noderelationship 附加一个唯一的 databaseId图。

那么显然我会在考虑该限制的情况下应用查询。

选项 2

另一个想法是创建一个根节点并为所有节点与根节点创建关系。

问题

我的问题是:

作为一般性建议(因为我对您的用例一无所知),我会尝试为每个 "logical DB"(LDB ).这将使创建和访问属于特定 LDB 的节点变得容易。而且,如果您仅在具有属于同一 LDB 的标签的节点之间创建关系,那么图遍历也将保留在同一 LDB 中。

Neo4j 可以通过标签快速获取节点,您还可以创建索引,以便您可以高效地找到 label/property 组合。