2017-05-31 311 views
0

我試圖創建一個約兩千七百萬個關係以及一千五百萬個節點,最初我使用Cypher,但它花費了很多時間,所以我切換了neo4j-import工具實用程序。Cypher查詢相當於neo4j-import

我不知道密碼查詢的結果是否與neo4j-import的結果相同。

我的Cypher查詢是:

load csv from "file://dataframe6.txt" as line fieldterminator" " 
MERGE (A :concept{name:line[0]}) 
WITH line, A 
MERGE (B :concept{name:line[1]}) 
WITH B,A 
MERGE (A)-[:test]->(B); 

含量dataframe6:

C0000005,C0036775,RB_ 
C0000039,C0000039,SY_sort_version_of 
C0000039,C0000039,SY_entry_version_of 
C0000039,C0000039,SY_permuted_term_of 
C0000039,C0001555,AQ_ 
C0000039,C0001688,AQ_ 

我的Neo4j導入腳本:

neo4j-import --into graph.db --nodes:concept "nheader,MRREL-nodes" --relationships "rheader,MRREL-relations" --skip-duplicate-node true 

rheader:START_ID,:END_ID,:TYPE

nheader:: ID,姓名

MRREL節點:

C0000005,C0000005 
C0000039,C0000039 
C0000052,C0000052 
C0036775,C0036775 
C0001555,C0001555 

MRREL-關係

C0000005,C0036775,RB_ 
C0000039,C0000039,SY_sort_version_of 
C0000039,C0000039,SY_entry_version_of 
C0000039,C0000039,SY_permuted_term_of 
C0000039,C0001555,AQ_ 
C0000039,C0001688,AQ_ 

不知怎的,我沒有看到相同的結果

回答

2

將帖子

  1. 如果你想讓你的關係有動力那麼您需要更改您的Cypher代碼,以便使用line[2]來指定關係類型(例如,通過APOC程序apoc.create.relationship)。目前總是使用test作爲類型。

  2. 如果您確實希望neo4j-import導入的所有關係具有相同的test類型,那麼您需要使用right syntax

    嘗試刪除 「:TYPE」 從rheader,並使用此導入命令行(--relationships已改爲--relationships:test):

    neo4j-import --into graph.db --nodes:concept "nheader,MRREL-nodes" --relationships:test "rheader,MRREL-relations" --skip-duplicate-node true 
    
+0

是的,我知道,但我真正感興趣創建具有相同標籤和屬性的節點 – gaurav1207

+0

在我更新的答案中嘗試選項2。 – cybersam