AWR报告参数:DB TIME和DB CPU

http://blog.itpub.net/12679300/viewspace-1182396/

一、前言:
AWR报告是了解ORACLE运行的一个重要报告,CPU的使用情况是AWR报告的一个重要指标,本文档从单个CPU的维度去解读AWR报告;

 

二、重要参数介绍:

DB Time:Amount of elapsed time (in microseconds) spent performing Database user-level calls. This does not include the elapsed time spent on instance background processes such as PMON.

说明: DB TIME=  所有 前台 session 花费在 database 调用上的总和时间

注意是前台进程 foreground sessions

包括 CPU 时间、 IO  Time 、和其他一系列 非空闲 等待时间,别忘了 cpu on queue time


公式:
DB TIME= DB CPU + Non-Idle Wait + Wait on CPU queue  

(思考 DB TIME 的定义定的是前台 session

 

DB CPU:Amount of CPU time (in microseconds) spent on database user-level calls . This does not include the CPU time spent on instance background processes such as PMON.

说明:简单的理解为数据库在运行时消耗的CPU的情况;

db cpu,只包含了用户进程消耗的cpu time,不包含后台进程消耗的cpu time。我们一般关心的是cpu time,并不关心db cpu


三、检查数据库的负载情况

例一:

数据库运行了60分钟,操作系统有16个CPU,总共的DB TIME:60×16=960分钟;

CPU花费了233.57分钟在处理Oralce非空闲等待和运算上,也就是说CPU有 233.57/960*100% =24.3%,

 

例二:

数据库运行了60分钟,操作系统4个CPU,总共DB TIME:60×8=480分钟;

CPU花费了0.62分钟在处理Oralce非空闲等待和运算上,也就是说CPU有 0.62/480*100% =0.13%,

 

总结:很显然从DB Time、Elapsed、CPUs可以初步的看出数据库的负载情况;

 

四、检查数据库的CPU负载情况

例一:

DB CPU(S)表明:数据库每次运行时在DB CPU上面的消耗情况,上面DB CPU/DB Time=97.5%(因为小数点的关系,该值会有误差)

详细的CPU的繁忙程度需要查看Instance CPU的%Busy CPU,当前为99.2%;

 

例二:


根据上面的计算可以知道这个系统的CPU负载也很轻松;

请使用浏览器的分享功能分享到微信等