【问题标题】:Facing problem to importing csv file with bulk importer in neo4j在 Neo4j 中使用批量导入器导入 csv 文件时面临问题
【发布时间】:2019-08-01 09:26:07
【问题描述】:

我正在尝试使用 neo4j 批量导入器从 csv 文件中加载节点及其关系,我的脚本是这样的

neo4j-admin import \
--id-type=string \
--nodes:AGENT="nodes_AGENT_C_20190610.csv" \
--nodes:CUSTOMER="nodes_CUSTOMER_C_20190610.csv" \
--relationships:CASHOUT="relcashoutTest-header.csv,relcashoutTest.csv"

我的关系文件是这样的 csv 文件

:TYPE,:START_ID(CUSTOMER),:END_ID(AGENT),TXNID:string,TIMESTAMP:datetime,AMOUNT:int,CHANNEL

这里的TYPE表示名为RELATIONSHIP的列 我的关系 csv 文件看起来像这样

CASHOUT,abc,xyz,6C19MX7DXL,2019-03-01T11:02:55,40,charge
CASHOUT,pqr,jkl,6C19MX7E2V,2019-03-01T11:02:57,10,charge

运行我的 import.sh 脚本后,我收到以下错误 意外错误:未找到组“客户”。可用的组是:[]

我浏览了文档,但没有弄清楚我的错误。任何帮助将不胜感激 neo4j 版本是 3.5.8

【问题讨论】:

    标签: neo4j


    【解决方案1】:

    :START_ID:END_ID 字段可以采用可选的ID space,如:START_ID(CUSTOMER)

    ID空间与节点标签不同。为了使:START_ID(CUSTOMER) 工作,您的节点CSV 文件之一(可能是CUSTOMER 标签的文件)必须在其标题中指定:ID(CUSTOMER) 而不仅仅是:ID。这样做会将CUSTOMER ID 空间与该文件创建的节点相关联,您应该不会再看到该特定错误。

    您可能还需要对AGENT ID 空间执行类似的操作。

    注意:如果您的所有节点在 :ID 字段(跨 CSV 文件)中都有唯一值,那么您根本不需要使用 ID 空间。在这种情况下,您的关系文件头可以简单地使用:START_ID:END_ID 而无需任何限定。

    【讨论】:

      猜你喜欢
      • 2012-03-31
      • 1970-01-01
      • 1970-01-01
      • 2016-04-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-09-02
      • 2017-11-18
      相关资源
      最近更新 更多