周二下午2:34,产品经理的Slack消息弹出来:"用户抱怨个人页加载慢得像拨号上网。"后端团队面面相觑——他们的数据库设计堪称教科书级别,第三范式(3NF)完美落地,没有冗余、没有异常,教授看了会流泪的那种。

问题就出在这份"完美"上。查询一个用户资料需要连表7次,数据散落在十几个规范化表里,像把一张完整照片切成碎片存进不同抽屉。每次打开页面,数据库都在玩拼图游戏。

团队做了个"离经叛道"的决定:战略性反规范化。把高频查询字段冗余存储,用空间换时间,用"脏数据"换速度。上线后页面加载从8秒跌到120ms,用户投诉归零。

技术负责人后来复盘:「我们花了三年追求范式正确,却忘了数据库是为用户服务的,不是为教授评职称的。」

现在他们的架构文档里多了一条备注——"先让用户爽,再让教授爽,如果只能选一个,选前者。"