Oracle19C AWR报告分析之Wait Classes by Total Wait Time
- 一、分析数据
- 二、详细分析
- 2.1 指标参数介绍
- 2.2 数据库性能分析
- 2.3 综合性能评估
在 Oracle 数据库的 AWR 报告中,Wait Classes by Total Wait Time
是评估数据库性能的重要部分。本篇文章主要是介绍指标参数的含义、相关分析以及数据库性能优化建议。
一、分析数据
二、详细分析
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
。 - 表和索引:优化表设计,确保查询语句合理使用索引。
- 高耗时 SQL:检查
- 硬件问题:若硬件
CPU
不足,可能需要扩容服务器资源。
- 占比 95.6%,表明系统性能瓶颈主要集中在
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/O
和User I/O
的高等待次数表明磁盘访问频繁。 -
优化策略
- 增加缓存大小。
- 优化存储硬件性能,如使用 SSD 替代传统硬盘。
集群通信(Cluster
)问题
-
RAC 环境优化
- 减少跨节点访问。
- 检查网络配置,确保节点间通信稳定。
事务管理(Commit
)
- 提高事务效率
- 合并小事务。
- 确保日志存储路径性能可靠。
2.3 结论
从 AWR
数据分析中可以看出,当前系统主要性能瓶颈在于 CPU
使用和I/O
性能。通过优化查询、增加硬件资源和调整存储结构
,可以有效提升数据库性能。此外,RAC 和事务提交的优化也是潜在的改进方向。
注:此分析只针对这一部分的参数指标进行分析,不包括整体的分析,需根据不同参数指标,对AWR进行全局性分析,从而更深入地诊断数据库性能问题,优化数据库性能。