为什么不将非规范化表格推向极致?

时间:2016-01-22 21:33:36

标签: database relational-database nosql

编辑:请不要只是投票。如果这是一个愚蠢的问题,请至少给出一个简短的解释与投票。感谢。

我们已经告诉软件开发人员/数据库开发人员为多个实体类型创建多个表。这只是让我们更容易建模或者技术原因是什么?

我能想到的原因是在非规范化表中,数据量要大得多,因为会有很多重复的条目。例如,对于一个客户,5000个不同客户订单的表中将有5000倍的同一客户。同时保持客户数据的一致性也是一个问题。

但是,假设数据量,一致性和聚合时间没有问题,但是非规范化/加入数据是。将所有数据放在一个表中(作为一个极端)是否可行,只是根据需要根据用例对数据进行规范化处理?

1 个答案:

答案 0 :(得分:2)

规范化运营数据库的主要原因是避免异常。例如,忘记在其出现的每一行中更新某人的电话号码。

它也是插入,更新和删除记录的快捷方式。

  

但是,让我们说数据量,一致性和聚合时间都没有问题

这是一个问题,而且永远都是。这就像说如果安全不是问题我的法拉利会更快。

高度非规范化数据库有一个用例:它被称为数据仓库。