0

就我个人而言,我发现数据库规范化真的很有趣(实际上真的很喜欢这样做),但是在为资产管理器设计架构并对其进行规范化时(包含通用和项目特定资产,每种资产都具有任意关系深度的类型),我目前正在研究,我来到了这个基本问题,即应该在多大程度上规范化数据库(我知道3NF)使得进行多个查询、插入等不会比以编程方式处理规范化尝试的数据不一致冗余等成本更高避免?

4

1 回答 1

0

在设计数据库时,您应该将其规范化到最大程度(嗯,考虑到常识)。在开发过程中,您会注意到一些潜在的性能问题。在这种情况下,您可能想求助于使用视图甚至是非规范化一点。

尽管这因情况而异,因为某些程序对性能有严格的要求。其他可能只有少数用户使用,在这种情况下,性能可能并不那么重要。

为了对是否进行非规范化做出正确的决定,从而能够执行更简单的查询,您应该为这两种情况运行一些性能测试。请记住非规范化会对数据库的维护造成什么影响。

在非规范化的情况下,请务必充分记录这一点。

于 2013-05-01T18:42:57.270 回答