SQL 调优是指通过综合分析 SQL 的执行计划、执行监控信息、系统配置、系统负载等多方面因素,调整 SQL 的执行策略,以实现资源利用最大化。

SQL 调优方式一般可分为单条 SQL 调优和系统 SQL 调优。
单一的 SQL 调优的优化主体是被调试的 SQL 执行本身,一般调优的目标包括该 SQL 的执行时间、试行期的资源消耗等。常见的调优手段包括调整访问路径、执行顺序、逻辑改写等。
针对单条 SQL 的执行计划性能调优又可以分为单表访问和多表访问两种场景。
| 
 场景  | 
 SQL 调优的关注点  | 
|---|---|
单表访问  | 
  | 
多表访问  | 不仅要关注单表的 SQL 调优问题,还要关注多表间的联接问题: 
  | 
系统的 SQL 调优的目的是提高整个系统的吞吐量或者系统利用率等。系统的 SQL 调优过程往往需要结合多条 SQL 的执行计划,综合分析当前系统的负载特征,主要关注热点行竞争、buffer cache 命中率等全局性的调优点。
针对吞吐量的性能调优主要是考虑在一定资源(CPU、IO、网络等)情况下,将数据库系统处理请求量最大化。主要关注以下几个方面:
| 
 主要方法  | 
 说明  | 
|---|---|
优化慢 SQL  | 找到具体的慢 SQL 后,针对单条 SQL 进行性能调优,请参见示例 查询某段时间内执行时间排名 TOP N 的请求。  | 
均衡 SQL 的请求流量资源  | 请参见示例 查看集群 SQL 请求流量是否均衡。 影响均衡的因素主要有: 
  | 
均衡子计划的 RPC 请求流量资源  | 请参见示例 查看分布式子计划 RPC 执行数是否均衡。 影响子计划请求是否均匀的主要因素如下: 
  | 
Copyright © 2009-2022 www.wtcwzsj.com 青羊区广皓图文设计工作室(个体工商户) 版权所有 蜀ICP备19037934号