使用Neo4J存储图形的正确方法

时间:2014-10-12 17:54:41

标签: graph neo4j couchdb

我正在构建一个允许用户通过API调用N个不同图形的系统。目前我有一个工作原型从CouchDB中提取图形。但是,出于显而易见的原因,我想转到图表DB。我的理解是Neo4J一次只能处理一个图形,或者需要这样的标记系统才能混合图形。这些方法都不是最佳的。对此最好的做法是什么?

还有一些需要注意的事项:我将调用这些图形并使用像networkx这样的图形进行操作,并且我已经考虑过将这些图形存储在"常规"然后,当请求进入时,DB将它们移动到Neo4J,这看起来非常激烈。

1 个答案:

答案 0 :(得分:1)

Neo4j没有多个数据库的概念,就像大多数关系数据库那样使用CREATE DATABASE。在Neo4j中,您可以使用一个图形空间。

所以你有两个选择:

  1. 为每个图形使用单独的Neo4j实例(单个或集群),也许在嵌入模式下使用Neo4j很有帮助
  2. 使用一个Neo4j实例(单个或群集)并将数据存储在不同的子图中。如果子图需要某些互连,则可以使用标签来标识某个节点所属的子图。