2017-08-04 85 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来实现它。 –