更新时间:2023-10-23 GMT+08:00

总体调优思路

GaussDB性能调优过程需要综合考虑多方面因素,因此,调优人员应对系统软件架构、软硬件配置、数据库配置参数、并发控制(当前特性是实验室特性,使用时请联系华为工程师提供技术支持)、查询处理和数据库应用有广泛而深刻的理解。

性能调优过程有时候需要重启数据库,可能会中断当前业务。因此,业务上线后,当性能调优操作需要重启数据库时,操作窗口时间需向管理部门提出申请,经批准后方可执行。

调优流程

调优流程如图1所示。

图1 GaussDB性能调优流程

调优各阶段说明,如表1所示。

表1 GaussDB性能调优流程说明

阶段

描述

确定性能调优范围

获取数据库节点的CPU、内存、I/O和网络资源使用情况,确认这些资源是否已被充分利用,是否存在瓶颈点。

SQL调优指南

审视业务所用SQL语句是否存在可优化空间,包括:

  • 通过ANALYZE语句生成表统计信息:ANALYZE语句可收集与数据库中表内容相关的统计信息,统计结果存储在系统表PG_STATISTIC中。执行计划生成器会使用这些统计数据,以确定最有效的执行计划。
  • 分析执行计划:EXPLAIN语句可显示SQL语句的执行计划,EXPLAIN PERFORMANCE语句可显示SQL语句中各算子的执行时间。
  • 查找问题根因并进行调优:通过分析执行计划,找到可能存在的原因,进行针对性的调优,通常为调整数据库级SQL调优参数。
  • 编写更优的SQL:介绍一些复杂查询中的中间临时数据缓存、结果集缓存、结果集合并等场景中的更优SQL语法。