0
我試圖將數據從MySQL數據庫導入到Neo4j,使用CSV文件作爲中介。我正在關注basic example,但無法完成它的工作。我正在用這些查詢導入兩個表格:將CSV關係導入到Neo4j
//Import projects.
USING PERIODIC COMMIT
LOAD CSV WITH HEADERS FROM "file:/tmp/projects.csv" AS row
CREATE (:project
{
project_id: row.fan,
project_name: row.project_name
});
//Import people.
USING PERIODIC COMMIT
LOAD CSV WITH HEADERS FROM "file:/tmp/persons.csv" AS row
CREATE (:person
{
person_id: row.person_id,
person_name: row.person_name,
});
//Create indicies.
CREATE INDEX ON :project(project_id);
CREATE INDEX ON :project(project_name);
CREATE INDEX ON :person(person_id);
CREATE INDEX ON :person(person_name);
此部件適用。當我嘗試導入關係時,不起作用的是:
//Create project-person relationships.
USING PERIODIC COMMIT
LOAD CSV WITH HEADERS FROM "file:/tmp/project_persons.csv" AS row
MATCH (project:project {project_id: row.project_id})
MATCH (person:person {person_id: row.person_id})
MERGE (person)-[:CONTRIBUTED]->(project);
控制檯接受沒有錯誤的查詢,但從未結束。它在100%CPU,25%RAM下運行數天,但磁盤使用率可以忽略不計。數據庫信息中沒有關係。
我在某個地方犯了錯,還是真的這麼慢? project_persons.csv
文件長度爲1300萬行,但不應該定期提交現在顯示的內容嗎?
它可以工作,但即使增加了限制,導入所有數據也很乏味。由於某種原因,我有剩餘的200k關係,不會合並或刪除。 – Rachie
同意單調乏味。你在做什麼來刪除不需要的關係? –
我不知道如何處理它們,或者即使它們是不需要的。 – Rachie