Neo4:我需要帮助以更正确的方式对数据建模

时间:2018-12-17 15:44:43

标签: database neo4j label cypher data-modeling

我有一个数据库,该数据库由我需要复制的数据组成,因为它们属于两个不同的字段,也就是说,它们既属于Pluto字段,又部分数据库也属于Goofy字段。 为我的数据库建模最正确的解决方案是什么?

创建一个多标签,每个节点将添加标签:Pluto或:Goofy? 还是为每个范围字段=冥王星或字段=高飞创建一个属性?

2 个答案:

答案 0 :(得分:1)

如果您的数据仅包含少数几个用于同一概念(例如“迪士尼角色”)的替代值(例如,PlutoGoofy),则为每个值使用单独的标签是最简单的数据建模方法。

但是,如果您需要为同一概念表示许多个替代值,则仅使用单个标签(例如,DisneyCharacter)并放入属性中的替代值(例如name)。为了快速启动对特定替代值的查询,您可以为此类节点(例如CREATE INDEX ON DisneyCharacter(name))创建一个index,因此,这种方法可以与使用单独的标签一样快。

答案 1 :(得分:0)

您的两个程序都可以使用。但是,出于性能方面的考虑,首选多标签方法。此外,对此的查询更加简单明了。