数据模型决定上限
交付手记:从需求到上线 · 第 4 章
界面可以随时调整,数据模型一旦上线就很难改。它是最值得多花时间的一层。
为什么值得多花两天
界面不满意,改一周就能换掉;数据模型设计错了,迁移一次可能影响所有历史数据。这笔账算清楚,就不会急着写建表语句。
我会先画出实体和关系,再问三个问题:主键会不会变、哪些字段需要留痕、哪些查询会变得频繁。
几个反复踩到的点
- 金额用定点数而不是浮点,避免对账差一分钱
- 状态字段用明确的枚举值,别用可自由填写的文本
- 删除优先考虑标记而不是物理删除,审计和回溯都靠它
- 时间统一按 UTC 存储,展示时再转时区
索引是查询的说明书
索引不是越多越好。每一个索引都对应一类查询,写索引的同时把对应的查询语句记下来,半年后回头看会感谢自己。
延伸阅读
数据模型需要结合业务边界一起评审。相关服务包括 技术咨询与架构设计 和 Web 系统定制开发,案例可参考 数据中台建设。