2017-08-04 80 views
-1

這個CSV已經創建了一個ETL並將其導入OrientDB:OrientDB導入CSV文件中的圖表 - ETL

userlist.csv

ID,NAME 
1,SATOSHI 
2,TONA 
3,MIKI 
4,YUJI 
5,OTA 

不過,我不知道該怎麼製作導入此CSV的邊緣的ETL。

relation.csv

FROM_ID,TO_ID,WEIGHT 
1,2,4 
1,3,4 
1,5,3 
2,5,3 
2,3,5 
... 

FROM_IDTO_ID指示userlist.csvIDWEIGHT是可選的。

請教我如何正確編寫ETL。

回答

0

試試這個:

{ 
    "source" : { 
    "file": { "path": "your_path/relation.csv" } 
    }, 
    "extractor" : { 
    "csv": {} 
    }, 
    "transformers": [ 
     { "command": { "command": "CREATE EDGE E FROM (SELECT FROM userlist-class where id = ${input.FROM_ID}) TO (SELECT FROM userlist-class where id = ${input.TO_ID}) set weight=${input.WEIGHT}"} } 
    ], 
    "loader" : { 
    "orientdb": { 
     "dbURL": "plocal:your-path/databases/db-name", 
     "dbUser": "your-user", 
     "dbPassword": "your-pwd", 
     "serverUser": "your-server-user", 
     "serverPassword": "your-server-pwd", 
     "dbType": "graph", 
     "classes": [{"name": "userlist-class-name", "extends":"V"}] 
    } 
    } 
} 

UPDATE

{ 
    "source" : { 
    "file": { "path": "C:/Users/Sorint.Lab/Desktop/Orient/Community/orientdb-community-2.2.24/config/relation.csv" } 
    }, 
    "extractor" : { 
    "csv": {} 
    }, 
    "transformers": [ 
     { "command": { "command": "CREATE EDGE USER_RELATION_FRIEND FROM (SELECT FROM userList where id = ${input.FROM_ID}) TO (SELECT FROM userList where id = ${input.TO_ID}) set weight=${input.WEIGHT}"} } 
    ], 
    "loader" : { 
    "orientdb": { 
     "dbURL": "plocal:C:/Users/Sorint.Lab/Desktop/Orient/Community/orientdb-community-2.2.24/databases/stack45504136", 
     "dbUser": "admin", 
     "dbPassword": "admin", 
     "serverUser": "root", 
     "serverPassword": "root", 
     "dbType": "graph", 
     "classes": [ 
      {"name": "userList", "extends":"V"}, 
      {"name": "USER_RELATION_FRIEND", "extends":"E"} 
      ] 
    } 
    } 
} 

希望它可以幫助

問候

+0

我嘗試過,但收到以下錯誤。 ** 錯誤異常=錯誤解析查詢: CREATE EDGE USER_RELATION_FRIEND FROM(SELECT FROM USER_INFO WHERE ID =)TO(SELECT FROM USER_INFO WHERE ID = 2)SET重量= ^ 遇到 「」 CREATE 「」 位於第1行,第1列。 ** 還有什麼可以做的嗎? –

+0

USER_RELATION_FRIEND類是否已經存在? –

+0

不,它不存在。我想過用這個ETL來實現它。 –