连接多个表,更好地接近RDBMS

时间:2018-06-16 09:28:50

标签: sql database postgresql activerecord rdbms

我正在开发一个用于安排与美容大师约会的应用程序。

第一张图显示了我现在拥有的架构。我通过服务预约大师。我想知道,如果将 master_id 添加到约会本身(第二张图片)会更快。添加另一个外键来预约它是一个有效的改变还是废物专栏?

Currenly

Alternative

1 个答案:

答案 0 :(得分:2)

两种模式不同。

第一个说每个约会都有一个服务,每个服务都有一个主人。因此,每个约会必须与其服务具有相同的主人。

第二个模型说每个委员都有一个服务一个主人。该服务还有一个主人,但没有什么能保证两个主人是相同的。

我会实现最能代表我正在使用的实体的模型。

为了提高性能,您应该首先关注正确的数据,然后考虑索引,分区以及如何构建查询。如果没有一个能够获得所需的性能,那么您可以考虑如何更改物理数据模型。