如何为具体的业务场景设计出最佳的索引方案。
假设你要为一个新建的小区设计道路系统:
- 道路太少:居民出行不方便,总是绕远路
- 道路太多:建设成本高,维护麻烦,还占用太多土地
- 道路合理:主干道、次干道、小区道路分工明确,既方便出行又节约资源
数据库索引设计也是同样的道理!
一、理解业务查询模式
在设计索引之前,我们首先要了解业务是如何查询数据的。这就像城市规划前要先做交通流量调查一样重要。
案例:电商订单系统分析
-- 查询1:用户查看自己的订单(最频繁 - 占60%查询量)SELECT*FROMordersWHEREuser_id=123AND