第三节 SQL业务审核与优化
业务审核与优化
什么是业务审核
- 类似于code review
- 评审业务schema和SQL设计
- 偏重关注性能
- 是业务优化的主要入口
- 审核提前发现问题并进行优化
- 上线后通过监控和巡检发现问题,进行优化
schema设计审核
- 表和字段命名是否合规
- 字段类型、长度设计是否适当
- 表关联关系是否合理
- 主键、更新时间保留字段等是否符合要求
- 约束、默认值等配置是否恰当
- 了解业务、表数据量、增长模式
- 数据访问模式、均衡度
- 根据业务需求,表是否需要分区,是否有数据周期
SQL语句审核
- SQL语句的执行频率
- 表上是否有合适的索引
- 单次执行的成本
- 执行模式,锁情况分析
- 关注事务上下文
什么时候需要审核
- 业务开发阶段,上线前
- 业务版本变更,线上更新前
- 新表和SQL上线
- SQL查询条件变化
- SQL查询频率变化
- 业务逻辑导致现有表数据量规模变化
业务发布流程
- SQL审核需要开发与应用运维支持
- 充分沟通做好必要性说明和教育工作
- 制定业务发布流程,嵌入DBA审核环节
- 积累经验,不断完善评审方法