1

我们正在尝试使用 neo4j 对家庭关系进行建模,并希望了解对此进行建模的最佳方法。注意:我们已经有用户(例如 id、name)驻留在 MySQL 数据库中。

我们有以下样本数据(John Davis 与 Nancy ad 结婚,有 2 个孩子 Joshua 和 Susan)。是否可以在夫妻节点之间建立单一的关系,并进行双向解释。

例如,约翰戴维斯“南希”的丈夫,南希“约翰戴维斯的妻子”。

或者

John Davis “丈夫-妻子-关系” Nancy 因此,如果有人试图读取节点“John Davis”并尝试查找家庭信息,它应该知道 John 是 Nancy 的“丈夫”,并且会以另一种方式读取 Nancy,即是南希是约翰的“妻子”。

鉴于用户信息已作为 MySQL 数据库的一部分存储,那么对此建模的正确方法是什么。

4

1 回答 1

2

MARRIED_TO 关系应该足够了。如果我们严格地谈论男女婚姻,我们可以说这种关系是从男人到女人的,因此外向的 MARRIED_TO 关系在逻辑上意味着“丈夫”,而传入意味着“妻子”。如果你也在模拟男人和女人的婚姻,那么性别可以被编码为每个人节点上的属性,并且这种关系和开始或结束节点的属性的组合会告诉你它的含义。

但是您需要如何对其建模通常取决于您计划如何查询它。

于 2012-05-30T17:35:49.447 回答