Oracle AWR详解-DB Time

AWR报告头:
在这里插入图片描述

需要了解的信息如下:

CPUs:64个

Cores:32核

Memory:内存为128G

Sessions:采样快照点时刻的session数,

Cursors/Session:每个session开启的游标数(根据这个判断ora-1000错误)

Elapsed:代表采样时间.结束快照点-起始快照点的时间.

DB Time: 所有用户会话(前台会话)花费在数据库调用上的总和时间(不包含后台进程).这个时间包含CPU时间,CPU队列时间,以及非空闲会话的等待时间,所以DB TIME= DB CPU + Non-Idle Wait +Wait on CPU queue.
DB Time官方解释:
(DB time is measured cumulatively from the time of instance startup and is calculated by aggregating the CPU and wait times of all sessions not waiting on idle wait events (non-idle user sessions)).

需要注意的是DB TIME描述了数据库总体负载情况,需要和elapsed time时间结合看.

从网上看到一个很好的例子:
  假设一家理发店统计半小时(30.11(mins))营业情况,那么一共有64个理发师(64个CPU),顾客在理发店的累计逗留时间就是 DB TIME:612.03 (mins)。
  如果拿顾客累计逗留时间除以营业时间,612.03 /30.11=20.32, 也就是说,在这半小时营业时间内,店内平均有20.32个顾客。顾客的累计逗留时间(DB TIME)不是理发师(CPU)的累计工作时间,如果两个顾客都要烫发,正巧只有一个烫发机,则其中一个顾客需要等待(CPU队列时间),这段时间理发师没有干活。

所以
DB CPU 是一定会小于 DB Time的,理发师剪头发的时间一定小于顾客在店内逗留的时间。

如果遇到DB CPU时间大于DB Time的情况请参考:
DB CPU is Reported as Larger than DB TIME in AWR Report and Trace (Doc ID 1911984.1)

而DB time/Elapsed Time这个值就叫做Average Active Session AAS平均活动会话
例如:
DB Time=60min Elapsed Time=60min AAS=60/60=1 负载一般
DB Time=1min Elapsed Time=60min AAS=1/60 负载很轻
DB Time=60000min Elapsed Time=60min AAS=1000 -> 性能出现瓶颈

既然DB Time= DB CPU + Non-Idle Wait +Wait on CPU queue
  那么我们假设如果数据库仅有2个逻辑CPU,而2个session在60分钟都没等待事件,一直跑在CPU上,那么DB CPU= 2 * 60 mins ,DB Time = 2* 60 + 0 + 0 =120,AAS = 120/60=2
  如果有3个session都100%仅消耗CPU,那么总有一个要wait on queue,那么此时DB CPU = 2* 60 mins ,wait on CPU queue= 60 mins,AAS= (120+ 60)/60=3.
  以上情况只为假设,那么在真实情况下DB Cpu = xx mins,Non-Idle Wait= enq:TX + cursor pin S on X + latch : xxx + db file sequential read + …………
在这里插入图片描述

以上这份报告DB CPU占据DB Time比例比较高.
DB CPU+Non-Idle Wait=(27300+6458.5+1649.5+450.5+294.2+105.6)=36258.3s
DB Time=36258.3/60=604.3min 与AWR报告头部DB Time相差不大.

整理自Maclean Liu

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值