将数据从Neo4j迁移到SQL

时间:2012-10-01 12:32:22

标签: neo4j data-migration

您好我在我的应用程序中使用neo4j,我的结构如下:

  1. 我正在使用嵌入式图表 API
  2. 我有几个数据库,我指向使用我在应用程序中维护的池 eg-> db1,db2,db3,..... db100
  3. 当我想访问某个特定数据库时,我指向它使用 new EmbeddedGraphDatabase(“db(n)之路径”)
  4. 问题是,当连接池数量增加时,应用程序消耗的 RAM大小 持续增加分解应用程序一个极限点。
  5. 所以我想从 Neo4j迁移到其他数据库
  6. 此外,仅我的数据库的一小部分正在使用图表结构
  7. 迁移的一种方法是我为它编写一个脚本。还有更好的选择吗?

    我的另一个问题是什么是最好的数据库,以便维护我的结构。

    我正在考虑的其他观点是,我可以将部分数据保存到Neo4j中,并将其他部分转移到其他数据库。

    如果有什么不清楚我可以澄清。

    提前致谢。

2 个答案:

答案 0 :(得分:1)

EmbeddedGraphDatabase实例相当于SQL中的“连接”。它被设计为运行很长时间(几天,几个月)。因此,开始/停止是昂贵的。

在同一个JVM中拥有数百个独立数据库的用例是什么?

答案 1 :(得分:1)

由于graphdb旨在将整个数据模型保存在单个主机上,因此许多小型数据库的性能都很差。

您是否为每个数据库运行一个JVM?

您可以通过为内存映射提供正确的属性来控制neo4j使用的内存量,还可以使用neo4j-enterprise中的gcr缓存并控制缓存大小属性变量。

我认为将图形部分保留在Neo4j中并且仅移动非图形部分仍然是有意义的。