Neo4j 到 OrientDB:导入数据库 graphml 不导入节点和关系的属性
Neo4j to OrientDB: import database graphml is not importing the properties of nodes and relationships
我按照 documentation 将数据从 Neo4j 迁移到 OrientDB
out.graphml 文件有标签、类型和 属性 信息。以下文件的片段。
<node id="n259" labels=":FacebookUser:_FacebookUser"><data key="labels">:FacebookUser:_FacebookUser</data><data key="__type__">com.czen.social.model.FacebookUser</data><data key="firstName">Test</data><data key="lastName">Name</data><data key="id">1000085</data></node>
<edge id="e1172175" source="n402940" target="n5457" label="KNOWS"><data key="label">KNOWS</data><data key="__type__">com.czen.social.model.Relationship</data><data key="hired">true</data><data key="hiredTlm">Tue Apr 21 05:16:36 EDT 2015</data><data key="weight">35</data></edge>
得到graphml后,我尝试将其导入OrientDB
orientdb {db=test}> IMPORT DATABASE /tmp/out.graphml
Importing GRAPHML database from DATABASE /tmp/out.graphml...
Transaction 14 has been committed in 0ms
orientdb {db=test}> classes
CLASSES
----------------------------------------------+------------------------------------+------------+----------------+
NAME | SUPERCLASS | CLUSTERS | RECORDS |
----------------------------------------------+------------------------------------+------------+----------------+
E | | 10 | 0 |
FacebookUser | V | 11 | 2190 |
KNOWS | E | 14 | 171 |
我们可以看到 FacebookUser 的类名,但是当我们查看它的信息时,它没有列出任何 属性。
orientdb {db=test}> info class FacebookUser
Class................: FacebookUser
Super class..........: V
Default cluster......: facebookuser (id=11)
Supported cluster ids: [11]
Cluster selection....: round-robin
将它导入到 OrientDB 时我是否遗漏了什么?
谢谢!
如果您在架构中看不到任何属性,这意味着您在无架构模式下工作,但图表可以正确导入。尝试执行此操作:
select * from V
和:
select * from E
你能看到属性吗?
使用 https://oss.sonatype.org/content/repositories/snapshots/com/orientechnologies/orientdb-community/ 的新 2.1 快照解决了这个问题。我必须用 uid 替换字段 id,否则 class 信息中不会显示它被忽略。
感谢 Luca 提供修复的快照。
我按照 documentation 将数据从 Neo4j 迁移到 OrientDB
out.graphml 文件有标签、类型和 属性 信息。以下文件的片段。
<node id="n259" labels=":FacebookUser:_FacebookUser"><data key="labels">:FacebookUser:_FacebookUser</data><data key="__type__">com.czen.social.model.FacebookUser</data><data key="firstName">Test</data><data key="lastName">Name</data><data key="id">1000085</data></node>
<edge id="e1172175" source="n402940" target="n5457" label="KNOWS"><data key="label">KNOWS</data><data key="__type__">com.czen.social.model.Relationship</data><data key="hired">true</data><data key="hiredTlm">Tue Apr 21 05:16:36 EDT 2015</data><data key="weight">35</data></edge>
得到graphml后,我尝试将其导入OrientDB
orientdb {db=test}> IMPORT DATABASE /tmp/out.graphml Importing GRAPHML database from DATABASE /tmp/out.graphml... Transaction 14 has been committed in 0ms orientdb {db=test}> classes CLASSES ----------------------------------------------+------------------------------------+------------+----------------+ NAME | SUPERCLASS | CLUSTERS | RECORDS | ----------------------------------------------+------------------------------------+------------+----------------+ E | | 10 | 0 | FacebookUser | V | 11 | 2190 | KNOWS | E | 14 | 171 |
我们可以看到 FacebookUser 的类名,但是当我们查看它的信息时,它没有列出任何 属性。
orientdb {db=test}> info class FacebookUser Class................: FacebookUser Super class..........: V Default cluster......: facebookuser (id=11) Supported cluster ids: [11] Cluster selection....: round-robin
将它导入到 OrientDB 时我是否遗漏了什么?
谢谢!
如果您在架构中看不到任何属性,这意味着您在无架构模式下工作,但图表可以正确导入。尝试执行此操作:
select * from V
和:
select * from E
你能看到属性吗?
使用 https://oss.sonatype.org/content/repositories/snapshots/com/orientechnologies/orientdb-community/ 的新 2.1 快照解决了这个问题。我必须用 uid 替换字段 id,否则 class 信息中不会显示它被忽略。 感谢 Luca 提供修复的快照。