将数据从Neo4j迁移到SQL [英] Migrate Data from Neo4j to SQL

查看:181
本文介绍了将数据从Neo4j迁移到SQL的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在应用程序中使用neo4j,其结构如下:

Hi I am using neo4j in my application and my structure is as following:


  1. 我正在使用嵌入式图 API

  2. 我有几个数据库,它们指向使用我在应用程序中维护的池 eg-> db1,db2,db3,... .. db100

  3. 当我想访问特定的数据库时,我使用 new EmbeddedGraphDatabase( Path to db(n))
  4. 指向该数据库
  5. 问题在于,当连接池数量增加时,应用程序消耗的 RAM大小保持增长,并且破坏应用程序达到极限。

  6. 所以我正在考虑从 Neo4j迁移到其他数据库

  7. 另外我的数据库的一小部分正在使用图形结构

  1. I am using Embedded Graph API
  2. I have several databases that I point to using a pool that I maintain in my application eg-> db1, db2, db3, ..... db100
  3. When I want to access a particular database I point to it using new EmbeddedGraphDatabase("Path to db(n)")
  4. The problem is that when the connection pool count increases the RAM size being consumed by the application keep increasing and breaks down the application at a point of limit.
  5. So I am Thinking of migrating from Neo4j to some other Database.
  6. Additionally only a small part of my database is utilizing the graph structure.

一种迁移方式是我为其编写脚本。还有更好的选择吗?

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

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

如果不清楚,我可以澄清。

If anything is unclear I can clarify.

谢谢。

推荐答案

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

Your lots of small databases will perform poorly as the graphdb is designed to hold the whole datamodel on a single host.

每个数据库是否运行单个JVM?

Do you run a single JVM per database?

您可以通过提供正确的内存映射属性来控制neo4j使用的内存量,并使用来自neo4j企业的gcr缓存并控制缓存的大小属性变量。

You can control the amount of memory used by neo4j by providing the correct properties for memory mapping and also use the gcr cache from neo4j-enterprise and control the cache size-property variables.

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

I think it still makes sense to keep the graph part in Neo4j and only move the non-graphy part.

这篇关于将数据从Neo4j迁移到SQL的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆