can';t调试“;未知错误“;在Neo4j中

can';t调试“;未知错误“;在Neo4j中,neo4j,Neo4j,我需要从CSV文件中加载约2900万个节点(使用定期提交),但在加载第一个约75k个节点后,我会遇到“未知错误”。我尝试过更改提交大小(250、500和1000),增加java堆(-Xmx4096m),并使用,但没有任何更改(除了加载的节点数-提交大小为500的节点在75499个节点后出现“未知错误”,提交大小为250的节点在75749个节点后出现“未知错误”) 我在浏览器中使用Neoj4 2.1.7,在一台具有10GB RAM和Windows Server 2012的远程机器上进行操作。这是我

我需要从CSV文件中加载约2900万个节点(使用定期提交),但在加载第一个约75k个节点后,我会遇到“未知错误”。我尝试过更改提交大小(250、500和1000),增加java堆(-Xmx4096m),并使用,但没有任何更改(除了加载的节点数-提交大小为500的节点在75499个节点后出现“未知错误”,提交大小为250的节点在75749个节点后出现“未知错误”)

我在浏览器中使用Neoj4 2.1.7,在一台具有10GB RAM和Windows Server 2012的远程机器上进行操作。这是我的密码:

USING PERIODIC COMMIT 1000
LOAD CSV FROM "file:/C:/Users/thiago.marzagao/Desktop/CSVs/cnpj.csv" AS node
CREATE (:PessoaJuridica {id: node[0], razaoSocial: node[1], nomeFantasia: node[2], CNAE: node[3], porte: node[4], dataAbertura: node[5], situacao: node[6], dataSituacao: node[7], endereco: node[8], CEP: node[9], municipio: node[10], UF: node[11], tel: node[12], email: node[13]})
真正糟糕的是,
nioneo\u logical.log
文件有一些奇怪的编码,任何文本编辑器都无法理解。我所看到的是
eÿÿÿ4141
ÿÿÿÿÿ
,等等。
消息
文件依次以数百个垃圾收集警告结束,如下所示:

2015-02-05 17:16:54.596+0000 WARN  [o.n.k.EmbeddedGraphDatabase]: GC Monitor: Application threads blocked for 304ms.
2015-02-05 17:16:55.033+0000 WARN  [o.n.k.EmbeddedGraphDatabase]: GC Monitor: Application threads blocked for 238ms.
2015-02-05 17:16:55.471+0000 WARN  [o.n.k.EmbeddedGraphDatabase]: GC Monitor: Application threads blocked for 231ms.
我发现有些关联,但不完全是我要找的


我遗漏了什么?

浏览器是运行此类导入的最差选择,也因为http超时

足够的RAM和快速的磁盘都有帮助

尝试使用连接到正在运行的服务器的
bin/Neo4jShell.bat
。最好确保CSV文件在本地可用

那些nioneo.*日志文件是逻辑日志(事务的预写日志)

您要查找的日志文件是data/log/*.log和data/graph.db/messages.log


您可以做的另一件事是打开浏览器检查器,转到网络/请求选项卡并重新运行查询,以便获得原始HTTP响应,我们刚刚讨论过这一点,以后将尝试将其直接转储到JS控制台。

您可以添加您的模式和用于加载CSV的查询吗?没有模式:数据库开始为空,我尝试加载的节点目前都已存在。我用来加载CSV的代码在上面的问题中(以“使用定期提交…”开头的代码块)。您在shell中尝试过吗?没有。它能改变吗?那我就试试看。那些日志文件是逻辑日志(事务的预写日志)你要找的日志文件是data/log/*.log和data/graph.db/messages.logOk,我会尝试shell并报告。我切换到shell界面和MacBook(它有更多的RAM-16GB,磁盘是SSD,而Neo4j在Linux/OSX上似乎有更好的文档记录)。仍然没有什么乐趣。我没有收到任何错误消息,但过了一段时间Neo4j似乎卡住了-从昨天早上5点起就没有向磁盘写入任何内容(当时数据库文件夹已达到4.85GB)。在此之后,
messages.log
文件中的所有内容都是一堆
[org.neo4j]:GC监视器:为{200-700}阻塞的应用程序线程ms.
消息。这次我让应用程序动态设置堆,我没有调整内存映射设置,但我仍在使用定期提交,因此我认为我不应该遇到任何问题。我会继续搜索和调整几天,希望在某个时候我会找到答案。好的,下周我应该有一个服务呃,使用128GB的RAM-这应该可以完成任务。修复了!我一直在调整内存映射和堆大小,最后我使用shell和“导入密码”使它工作了。@Michael Hunger,非常感谢您的帮助和创建neo4j shell工具!