实例问题分析的基本方法论是寻找性能瓶颈, 即哪种资源的消耗最多,什么原因导致该种资源消耗较多,并持续将问题做细粒度拆解。

对于PolarDB PostgreSQL版数据库,使用的基本资源有以下两种:
  • 系统资源:包括CPU、I/O、网络、内存和磁盘资源。
  • 数据库资源:锁(lwlock和lock)和缓存(buffer pool和slru)资源。

通用的调优思路,即通过数据库的等待事件,判断瓶颈资源,再根据具体资源进一步做原因定位。