awr
oracle DB Time是从时间角度剖析数据库性能的指标。将性能问题定位在耗费时间最多的事件或sql语句上。优化的目的便是:减少用户花在数据库上的时间,或减少DB Time。
1. oracle DB Time
oracle DB Time是时间模型统计中最重要的信息。指的是花费在数据库调用上的总时间,是数据库负载的指示灯。
DB Time=DB Wait Time(用户会话的非空闲等待)+DB cpu Time(前台session调用)
DB CPU Time=active user session * Elapsed 时间
下图是AWR报告的头部信息:
其中,Elapsed是两个快照之间持续的时间。DB Time是前台session调用以及非空闲等待的时间。
当前服务器,逻辑CPU的数量是32,每个CPU平均服务时间为1792.7/32=56分钟,远大于Elapsed,数据库处于繁忙状态,CPU使用率特别高,一度在90%以上。
根据公式: DB Time=DB Wait Time(用户会话的非空闲等待)+DB CPU Time(前台session调用),我们需要进一步确定这56分钟的DB Time的构成。
下图是load profile部分:
DB Time(Per Second)=DB Time/Elapsed=93.5
DB CPU (Per Second)=DB CPU/Elapsed=26.8