图形数据建模-节点与关系Neo4j注释节点

图形数据建模-节点与关系Neo4j注释节点,neo4j,graph-databases,Neo4j,Graph Databases,在Neo4j中,最有效/可扩展的数据建模方式是什么。比如说,你正在制作一个假设的电影评论网站。要求如下: 用户可以与其他用户成为朋友 用户可以加入组 用户可以观看电影 用户可以向朋友/团体推荐电影 用户可以评论他们观看的电影 合并(c:User{name:“Chandler”}) 合并(j:User{name:“Joey”}) 合并(c)-[:朋友{自:1994}]-(j) 合并(c)-[:成员{自:1994年以来}]-(g:集团{名称:“咖啡俱乐部”}) 合并(j)-[:成员{自1995年以来

在Neo4j中,最有效/可扩展的数据建模方式是什么。比如说,你正在制作一个假设的电影评论网站。要求如下:

  • 用户可以与其他用户成为朋友
  • 用户可以加入组
  • 用户可以观看电影
  • 用户可以向朋友/团体推荐电影
  • 用户可以评论他们观看的电影

    合并(c:User{name:“Chandler”})
    合并(j:User{name:“Joey”})
    合并(c)-[:朋友{自:1994}]-(j)
    合并(c)-[:成员{自:1994年以来}]-(g:集团{名称:“咖啡俱乐部”})
    合并(j)-[:成员{自1995年以来}]-(g)

    匹配(c:User{name:“Chandler”})
    合并(c)-[:观看的](m:Movie{name:“PulpFiction”})
    合并(c)-[:观看的](m:Movie{name:“dumbdumber”})

  • 实现需求4和需求5的最有效/可扩展的方式是什么

    用例1: “钱德勒”想向“乔伊”推荐“邓恩邓伯”,并评论道:“这部电影还会更可笑吗?”

    用例2:“ “乔伊”想向“咖啡俱乐部”推荐“讲坛小说”,并评论“你好吗?”

    我可能会创建一个链接到用户、电影和组或朋友节点的推荐节点

    5英镑

    • 您可以将注释作为属性放入:WATCHED关系中
    • 您可以在用户和电影之间创建附加的:注释关系
    • 您可以在用户和电影之间创建一个附加的评论节点

    这完全取决于您以后想如何使用这些注释,如果应该有注释线程等。

    这是一个广泛的问题,可能不适合堆栈溢出;一般来说,您应该发布您所做的事情、遇到的问题和特定的问题,然后人们可以提供帮助。看起来您需要关于如何构建的一般建议推荐系统和数据建模。有很多好的链接,你应该阅读以获得这些信息(我将提供一个)。尝试一下,然后请问一个更具体的问题。Hi@FrobberOfBits我在我的问题中有一个董事会声明“在Neo4j中,什么是最有效/可扩展的数据建模方法?”。“然而,在最后,我对我的问题和我的用例非常具体。谢谢你的链接,尽管读得不错:)