使用批量导入将数据导入neo4j的异常

时间:2013-05-08 15:40:30

标签: graph neo4j graph-databases

我在远程unix盒子上运行neo-4j 1.8.2。我正在使用这个jar(https://github.com/jexp/batch-import/downloads)。

nodes.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

但我得到了这个例外:

使用现有配置文件

Total import time: 0 seconds
Exception in thread "main" java.util.NoSuchElementException
        at java.util.StringTokenizer.nextToken(StringTokenizer.java:332)
        at org.neo4j.batchimport.Importer$Data.split(Importer.java:156)
        at org.neo4j.batchimport.Importer$Data.update(Importer.java:167)
        at org.neo4j.batchimport.Importer.importNodes(Importer.java:226)
        at org.neo4j.batchimport.Importer.main(Importer.java:83)

我是neo4j的新手,正在检查这个导入器是否可以节省一些编码工作。 如果有人可以指出可能的错误,那就太棒了。 谢谢你的帮助!

- 编辑: - 我的nodes.csv

name    dob city    state   s_id    balance desc    mgr_primary mgr_secondary mgr_tertiary  mgr_name    mgr_status
John Von    8/11/1928   Denver  CO  1114-010    7.5 RA  0023-0990   0100-0110   Doozman Keith   Active

我的rels.csv

start   end type    since   status  f_type  f_num
2   1   address_of              
1   3   has_account 5   Active      
4   3   f_of            Primary 0111-0230

1 个答案:

答案 0 :(得分:0)

您好我以前使用批量导入脚本遇到了一些问题。

您的文件格式化必须非常严格,这意味着:

  • 没有预期的额外空格,就像我在“开始”之前在你的rels.csv的第一行看到的那样

  • 没有多个空格代替标签。如果您的文件与您在此处复制的文件完全相同,则您有4个空格而不是选项卡,这不会起作用,因为脚本使用标记器查找标签!

我有这个问题,因为我总是将标签转换为4个空格,一旦我明白了,我就停止为我的csv做这个了!