我有一个Postgres表,我将其完全导出为CSV。 我在Neo4j中导入CSV文件,所有行。 导出和导入之间的记录计数不同。 我在导出或导入期间没有收到任何错误。 这是计数。我失去了133条记录。
select count(1) from wokas;
count
----------
19798966
(1 row)
match (n:Woka) return count(n);
+----------+
| count(n) |
+----------+
| 19798833 |
+----------+
1 row
16944 ms
导出命令是:
COPY (SELECT woka_id, author_id, publisher_id, language_id, woka_title FROM wokas) TO '/Users/levi/woka-data/wokas.csv' WITH CSV header;
导入命令是:
USING PERIODIC COMMIT
LOAD CSV WITH HEADERS FROM "file:/Users/levi/woka-data/wokas.csv" AS row
CREATE (:Woka {woka_id: row.woka_id, author_id: row.author_id, publisher_id: row.publisher_id, language_id: row.language_id, woka_title: row.woka_title});
这里有什么问题?
答案 0 :(得分:1)
它可能是您的CSV中的内容,例如。杂散引号或空字符等。
您可以使用csvkit之类的工具来分析您的CSV。
您也可以使用Cypher来完成其中的一些工作。从:
开始LOAD CSV WITH HEADERS FROM "file:/Users/levi/woka-data/wokas.csv" AS row
RETURN count(*)
然后从那里开始工作......
我们在这里介绍了一些内容:
http://neo4j.com/developer/guide-import-csv/#_csv_data_quality