是否有一个图形数据库可以添加任意的边线类型,而无需批量迁移?

问题描述 投票:0回答:1

这里是用例:说我想构建一个笔记应用程序,允许用户在笔记或笔记的某些部分之间进行交叉链接。用户创建交叉链接(边缘)时,他们可以指定链接的类型(边缘类型)。用户还可以输入自定义链接(边缘)类型。

例如,用户写了一个关于西莉亚的笔记,另一个写了关于巴里的笔记。然后,她用链接类型“ HUSBAND”链接了Celia的Barry笔记。她用链接类型“ WIFE”链接了来自Barry的Celia笔记。在图数据库的现有模式中,“ WIFE”和“ HUSBAND”都不是显式的边类型。

[在我研究过的大多数图形数据库中(例如Neo4j,ArangoDB,Amazon Neptune),在节点之间添加新的边缘(链接)类型需要链接数据库的大规模迁移,因为边缘通常作为集合存储在那些数据库中系统。

不是允许用户动态定义新的集合,而是有任何图形数据库以不同的方式对待边缘,即,不需要我预先定义所有可能的边缘类型吗?

neo4j arangodb
1个回答
0
投票

您在此处描述的内容听起来与您对建模超图的想法类似。如果很重要,请使用在Barry和Celia之前声明的HUSBAND和WIFE的示例,那么您可以考虑将HUSBAND和WIFE本身建模为节点,然后在将Barry和Celia的数据输入数据库时​​,您可以将它们附加到那些节点上。建模的方式会有所不同,但是(很多)示例可能是(Wife)<-[:HAS_REL_TYPE]-(Celia)-[:KNOWS]->(Barry)-[:HAS_REL_TYPE]->(Husband)

© www.soinside.com 2019 - 2024. All rights reserved.