gpt4 book ai didi

database - 图数据库设计方法

转载 作者:太空狗 更新时间:2023-10-30 01:42:55 26 4
gpt4 key购买 nike

我想将图形数据库用于 Web 应用程序(涉及用户、帖子、评论、投票、答案、文档和文档合并以及用户和文档上的一些其他传递关系的网络)。所以我开始问自己是否有类似图形数据库的设计方法,即类似于为关系数据库(如那些正常形式)推荐的设计原则?

示例问题(出现的许多问题):

  • 创建顶级节点用户并在数据库中的任何用户节点上建立关系(“存在”)是个好主意吗?
  • 建立版本管理(即创建关系(类似于“follows”))指向文档/帖子的更新版本是否是个好主意,返回此关系意味着观察文档经历的更改.
  • 等...

那么,我们需要图数据库设计指南吗?

最佳答案

Gremlin 用户组 (http://tinkerpop.com/) 和 Neo4j 用户组 (https://groups.google.com/forum/?fromgroups#!forum/neo4j) 是讨论图形数据库建模的好地方。

您可以创建诸如“用户”之类的 super 节点,但使用索引并为每个用户创建一个具有 key=element_type, value="user", id=user_node_id 的索引条目可能会更好、性能更高。

“关注”关系通常用于 Facebook 和 Twitter 上的人/ friend ,因此我不会将其用于版本控制。您可以在 Neo4j 中构建一个版本控制系统,为每个条目添加时间戳并使用最后写入获胜算法,还有其他数据库系统(如 Datomic)内置了此功能。

有关 Bulbs/Python (https://github.com/espeed/lightbulb/blob/master/lightbulb/model.py) 中的示例博客模型,请参见 Lightbulb 的模型 (http://bulbflow.com)。

关于database - 图数据库设计方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10753331/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com