Oracle19C AWR报告分析之Wait Classes by Total Wait Time-二、详细分析

时间:2024-11-17 14:10:13

2.1 指标参数介绍

参数 含义
Wait Class 等待事件类别,例如 CPU、I/O、事务提交、集群通信等。
Waits 此类别中等待事件发生的总次数,表明发生某种等待的频率。
Total Wait Time 等待总时间,表示系统在特定类别上的总等待耗时(单位:秒)。
Avg Wait Time 每次等待的平均耗时(单位:微秒或毫秒),反映单次事件的平均延迟。
% DB Time 此等待类别占数据库总运行时间的比例,用于衡量该类别对系统整体性能的影响。
Avg Active Sessions 平均活动会话数,与此等待类别相关的并发会话活动情况。

2.2 数据库性能分析

1. DB CPU

  • 特征: CPU 时间是数据库的核心性能指标,通常用来处理 SQL 查询、计算和其他任务。

  • 分析

    • 占比 95.6%,表明系统性能瓶颈主要集中在CPU上。
    • 可能存在 SQL 查询优化空间,例如:
      • 高耗时 SQL:检查 AWR 报告中的 Top SQL
      • 表和索引:优化表设计,确保查询语句合理使用索引。
    • 硬件问题:若硬件 CPU 不足,可能需要扩容服务器资源。

2. System I/O

  • 特征: 反映数据库与存储系统的交互情况,例如读取数据块、写入日志。

  • 分析

    • 等待次数多(9,053,641 次),但单次平均等待时间较低(321.45μs)。

    • 潜在问题

      • 高等待次数可能表明 I/O 请求过多。
      • 缓存使用不足导致频繁的磁盘访问。
    • 优化建议

      • 增加内存缓冲区大小,提升缓存命中率。
      • 检查表扫描情况,避免不必要的全表扫描。

3. Cluster

  • 特征: 表示在 RAC 环境中节点之间的通信和资源协调。

  • 分析

    • 等待次数高(4,211,068 次),主要反映集群节点之间的同步问题。

    • 可能的原因:

      • 跨节点数据访问频繁。
      • 全局缓存同步(Global Cache)。
    • 优化建议

      • 数据分区:优化分区策略,减少跨节点操作。
      • RAC 网络:检查节点间网络延迟。

4. Commit

  • 特征: 提交事务时的等待,例如写入日志文件。

  • 分析

    • 提交事务的平均等待时间为 896.18μs,占总时间的 1.0%

    • 如果提交频率过高,会影响整体性能。

    • 优化建议

      • 合并小事务,减少频繁提交。
      • 确保日志文件存储(如 REDO 日志)I/O 性能足够。

5. User I/O

  • 特征: 用户查询或操作引发的 I/O 请求等待。

  • 分析

    • 等待时间占比低(0.4%),但优化空间仍然存在。
    • 主要优化点:
      • 查询优化:检查慢查询,减少不必要的磁盘访问。
      • 索引设计:确保热点查询语句能充分利用索引。

6. Concurrency

  • 特征: 并发操作引起的等待,例如锁争用。

  • 分析

    • 占比仅 0.1%,但如果环境中并发度较高,可能会有性能问题。

    • 优化建议

      • 检查并发事务中的锁争用和死锁问题。
      • 调整事务隔离级别,减少不必要的锁。

7. Application

  • 特征: 反映应用程序层的等待,例如 PL/SQL 或存储过程中的耗时。

  • 分析

    • 占比低(0.0%),无需重点关注,除非报告中有异常耗时的应用程序。

8. Network

  • 特征: 网络通信相关的等待。

  • 分析

    • 网络等待时间非常短(1.12μs),且占比可以忽略,说明网络未对数据库性能造成瓶颈。

2.3 综合性能评估

性能瓶颈:DB CPU

  • 核心问题

    • 数据库在计算任务(如 SQL 语句执行)上耗费了绝大部分时间。

    • 优化方向

      • 定位高耗时 SQL,通过索引优化、语句重写提升效率。
      • 提高硬件性能(增加 CPU 核心数)。

I/O 相关性能问题

  • System I/OUser I/O 的高等待次数表明磁盘访问频繁。

  • 优化策略

    • 增加缓存大小。
    • 优化存储硬件性能,如使用 SSD 替代传统硬盘。

集群通信(Cluster)问题

  • RAC 环境优化

    • 减少跨节点访问。
    • 检查网络配置,确保节点间通信稳定。

事务管理(Commit

  • 提高事务效率
    • 合并小事务。
    • 确保日志存储路径性能可靠。

2.3 结论

  从 AWR 数据分析中可以看出,当前系统主要性能瓶颈在于 CPU 使用和I/O性能。通过优化查询、增加硬件资源和调整存储结构,可以有效提升数据库性能。此外,RAC 和事务提交的优化也是潜在的改进方向。

注:此分析只针对这一部分的参数指标进行分析,不包括整体的分析,需根据不同参数指标,对AWR进行全局性分析,从而更深入地诊断数据库性能问题,优化数据库性能。