这个问题可能更适合programmers.stackexchange。如果是,请迁移。
我目前正在思考典型数据模型的复杂性。每个人都知道数据模型应该被规范化,但是另一方面,规范化的数据模型将需要相当多的连接来重新组装数据。连接可能是昂贵的操作,具体取决于所涉及的表的大小。所以我想弄清楚的问题是,人们通常会如何进行这种权衡?即在实践中,在设计数据模型时,您会发现在典型查询中可以接受多少个连接?当计算单个查询中的多个连接时,这将特别有趣。
举个例子,假设我们有用户,他们拥有房屋,其中有房间,有抽屉,里面有物品。在上面解释的意义上,用用于用户、房屋、房间、抽屉和项目的表来简单地规范化这一点,稍后在获取属于某个用户的所有项目时,我需要加入五个表。这对我来说似乎非常复杂。
很可能还会涉及表格的大小。连接五个数据量很少的表并不像连接数百万行的三个表那么糟糕。还是这种考虑是错误的?