在设计一个数据库(例如MySQL)的模式时,是否应该完全规范化表格是一个问题。
一方面,连接操作(和外键约束等)非常缓慢;另一方面,您会得到冗余数据和潜在的不一致性。
这里的正确方法是“最后优化”吗?即按照手册规范化DB,然后查看可以去规范化以获得最佳速度增益的内容。
我对这种方法的担忧是,我将定居在可能不够快的DB设计上-但在那个阶段重构模式(同时支持现有数据)将非常痛苦。这就是为什么我想暂时忘记我学到的关于"适当的" RDBMS实践的一切,而尝试一次“扁平表”的方法的原因。
这个DB将要大量插入,这个事实会影响决策吗?