1

我尝试使用 Batch Importer 将 CSV 数据导入 neo4j 数据库。

起初我尝试在没有自动索引的情况下导入数据,并且效果很好。之后,我尝试对示例数据nodes.csv 和rels.csv 使用自动索引:

节点.csv:

name    age works_on
Michael 37  neo4j
Selina  14
Rana    6
Selma   4

rels.csv:

start   end type        since   counter:int
1     2   FATHER_OF 1998-07-10  1
1     3   FATHER_OF 2007-09-15  2
1     4   FATHER_OF 2008-05-03  3
3     4   SISTER_OF 2008-05-03  5
2     3   SISTER_OF 2007-09-15  7

batch.properties 文件包含以下几行:

use_memory_mapped_buffers=true
neostore.nodestore.db.mapped_memory=100M
neostore.relationshipstore.db.mapped_memory=500M
neostore.propertystore.db.mapped_memory=1G
neostore.propertystore.db.strings.mapped_memory=200M
neostore.propertystore.db.arrays.mapped_memory=0M
neostore.propertystore.db.index.keys.mapped_memory=15M
neostore.propertystore.db.index.mapped_memory=15M
batch_import.node_index.users=exact

尝试在 Windows 上运行批处理导入器时,出现以下异常:

*I:\Research\Temporal Analysis\neo4j>java -server -Xmx4G -jar batch-import-jar-with-dependencies.jar data/graph.db nodes.csv rels.csv node_index users fulltext nodes_index.csv rel_index 工作准确 rels_index .csv*

Using Existing Configuration File

Total import time: 0 seconds
Exception in thread "main" java.lang.IllegalArgumentException: Unknown Type stri
ng:users
        at org.neo4j.batchimport.importer.Type.fromString(Type.java:71)
        at org.neo4j.batchimport.importer.RowData.parseTypes(RowData.java:52)
        at org.neo4j.batchimport.importer.RowData.<init>(RowData.java:25)
        at org.neo4j.batchimport.Importer.importNodes(Importer.java:89)
        at org.neo4j.batchimport.Importer.main(Importer.java:57)

寻找其他人遇到的类似问题,我遇到了这个

当我从这个地址下载了一个 Windows-ready jar 文件时,我想知道它是否包含任何错误或任何 .csv 文件或 batch.properties 中存在错误。

如果有人设法将自动索引数据导入 Windows 机器上的 neo4j 数据库,我将非常感谢描述正确的过程。

谢谢!

4

1 回答 1

0

首先,您必须指定要索引的 csv 列,以增加标题。例如,如果要索引的属性是name,它的 header 应该如下

name:string:chewbecca

调用索引的位置,即。楚贝卡

其次,您必须在属性文件中设置正确的索引名称。作为您的配置,您已设置以下内容:

batch_import.node_index.users=exact

现在您必须指定chewbecca --- 而不是users

batch_import.node_index.chewbecca=exact
于 2013-12-27T09:03:04.553 回答