Database design 图形数据库设计原则、一般原则和粒度问题

Database design 图形数据库设计原则、一般原则和粒度问题,database-design,graph,design-principles,Database Design,Graph,Design Principles,在关系数据库设计中,有规范的表单来指导设计过程。是否有类似的原则适用于neo4j等图形数据库的设计 特别是,我对问题的粒度感到困惑:我可以设计一个图形数据库,其中大多数属性存储在顶点中(联系人具有属性名称、出生日期等),或者我可以将大多数数据存储在关系中(将具有“firtst name”关系的联系人连接到另一个保存实际信息的顶点)或者我可以同时做这两件事(当然会出现一致性问题,但这可能会加快检索时间) 这些问题与我开始SQL设计时的初学者问题类似,许多问题只有通过积累经验才能解决。你还可以推荐一

在关系数据库设计中,有规范的表单来指导设计过程。是否有类似的原则适用于neo4j等图形数据库的设计

特别是,我对问题的粒度感到困惑:我可以设计一个图形数据库,其中大多数属性存储在顶点中(联系人具有属性名称、出生日期等),或者我可以将大多数数据存储在关系中(将具有“firtst name”关系的联系人连接到另一个保存实际信息的顶点)或者我可以同时做这两件事(当然会出现一致性问题,但这可能会加快检索时间)


这些问题与我开始SQL设计时的初学者问题类似,许多问题只有通过积累经验才能解决。你还可以推荐一本关于这个主题的基础知识的实用书籍,或者告诉我在哪里可以找到一些一般原则吗?

我所看到的没有任何东西像关系数据库中的规范化那样被视为真理。然而,我主张两件事:

1) 像平常一样对实体(节点)建模。这些实体的属性是专门属于这些实体并且存在于关系(连接)之外的事物


2) 像平常一样为你的关系(边缘)建模。这些属性不应存在,除非两个实体(节点)相关(连接)。

在中启动了有关此主题的电子邮件线程