如何设计与其他节点有序关系的neo4j db节点

时间:2017-03-04 07:52:07

标签: neo4j

我正在尝试设计一个Neo4j图形数据库,我将说明我的具体要求。我正在设计一个应用程序,允许用户在他们阅读的书籍和杂志上进行协作。要求:

  1. 同一本书可以被多人阅读
  2. 特定人阅读书籍的顺序很重要。例如,我希望能够表示人员A按顺序阅读书籍B1和B2,而人员B可能已按此顺序阅读书籍B3,B2和B1。

    我正在考虑使用表示书籍,杂志,人物等的节点

  3. 确保订单/序列信息的最佳方法是什么?我想到了几个选项:

    1. 在Person和Book节点之间的关系中存储订单ID或时间戳,并使用它来查询该人员按正确顺序阅读的所有书籍。
    2. 在Book节点之间存储下一个/上一个关系,但这种方法不起作用,因为订单可能会因读书的人而异。

1 个答案:

答案 0 :(得分:2)

对我而言,这是方便,有效和有效的方法。

  

在Person和之间的关系中存储订单ID或时间戳   一个Book节点,用于查询由该人读取的所有书籍   正确的订单。

存储下一个/上一个关系是行不通的,因为你必须在书籍的NEXT关系中保存UserID,这只是废话。