AWR报告详细分析

发布 2019-05-27 19:46:20 阅读 8084

db time不包括oracle后台进程消耗的时间。如果db time远远小于elapsed时间,说明数据库比较空闲。

db time= cpu time + wait time(不包含空闲等待) (非后台进程)

说白了就是db time就是记录的服务器花在数据库运算(非后台进程)和等待(非空闲等待)上的时间。

db time = cpu time + all of nonidle wait event time

在79分钟里(其间收集了3次快照数据),数据库耗时11分钟,rda数据中显示系统有8个逻辑cpu(4个物理cpu),平均每个cpu耗时1.4分钟,cpu利用率只有大约2%(1.4/79)。

说明系统压力非常小。

列出下面这两个来做解释:

report a:

snap id snap time sessions curs/sess

begin snap: 4610 24-jul-08 22:00:54 68 19.1

end snap: 4612 24-jul-08 23:00:25 17 1.7

elapsed: 59.51 (mins)

db time: 466.37 (mins)

report b:

snap id snap time sessions curs/sess

begin snap: 3098 13-nov-07 21:00:37 39 13.6

end snap: 3102 13-nov-07 22:00:15 40 16.4

elapsed: 59.63 (mins)

db time: 19.49 (mins)

服务器是aix的系统,4个双核cpu,共8个核:

sbin> bindprocessor -q

the **ailable processors are: 0 1 2 3 4 5 6 7

先说report a,在snapshot间隔中,总共约60分钟,cpu就共有60*8=480分钟,db time为466.37分钟,则:

cpu花费了466.37分钟在处理oralce非空闲等待和运算上(比方逻辑读)

也就是说cpu有 466.37/480*100% 花费在处理oracle的操作上,这还不包括后台进程。

看report b,总共约60分钟,cpu有 19.49/480*100% 花费在处理oracle的操作上。

很显然,2中服务器的平均负载很低。

从awr report的elapsed time和db time就能大概了解db的负载。

可是对于批量系统,数据库的工作负载总是集中在一段时间内。如果快照周期不在这一段时间内,或者快照周期跨度太长而包含了大量的数据库空闲时间,所得出的分析结果是没有意义的。这也说明选择分析时间段很关键,要选择能够代表性能问题的时间段。

显示sga中每个区域的大小(在amm改变它们之后),可用来与初始参数值比较。

shared pool主要包括library cache和dictionary cache。library cache用来存储最近解析(或编译)后sql、pl/sql和j**a classes等。library cache用来存储最近引用的数据字典。

发生在library cache或dictionary cache的cache miss代价要比发生在buffer cache的代价高得多。因此shared pool的设置要确保最近使用的数据都能被cache。

显示数据库负载概况,将之与基线数据比较才具有更多的意义,如果每秒或每事务的负载变化不大,说明应用运行比较稳定。单个的报告数据只说明应用的负载情况,绝大多数据并没有一个所谓“正确”的值,然而logons大于每秒1~2个、hard parses大于每秒100、全部parses超过每秒300表明可能有争用问题。

redo size:每秒产生的日志大小(单位字节),可标志数据变更频率, 数据库任务的繁重与否。logical reads:

每秒/每事务逻辑读的块数。平决每秒产生的逻辑读的block数。logical reads= consistent gets + db block gets

block changes:每秒/每事务修改的块数。

physical reads:每秒/每事务物理读的块数。

physical writes:每秒/每事务物理写的块数。

user calls:每秒/每事务用户call次数。

parses:sql解析的次数。每秒解析次数,包括fast parse,soft parse和hard parse三种数量的综合。

软解析每秒超过300次意味着你的"应用程序"效率不高,调整session_cursor_cache。在这里,fast parse指的是直接在pga中命中的情况(设置了session_cached_cursors=n);soft parse是指在shared pool中命中的情形;hard parse则是指都不命中的情况。

hard parses:其中硬解析的次数,硬解析太多,说明sql重用率不高。每秒产生的硬解析次数, 每秒超过100次,就可能说明你绑定使用的不好,也可能是共享池设置不合理。

这时候可以启用参数cursor_sharing=similar|force,该参数默认值为exact。但该参数设置为similar时,存在bug,可能导致执行计划的不优。

sorts:每秒/每事务的排序次数。

logons:每秒/每事务登录的次数。

executes:每秒/每事务sql执行次数。

transactions:每秒事务数。每秒产生的事务数,反映数据库任务繁重与否。

blocks changed per read:表示逻辑读用于修改数据块的比例。在每一次逻辑读中更改的块的百分比。

recursive call:递归调用占所有操作的比率。递归调用的百分比,如果有很多pl/sql,那么这个值就会比较高。

rollback per transaction:每事务的回滚率。看回滚率是不是很高,因为回滚很耗资源 ,如果回滚率过高,可能说明你的数据库经历了太多的无效操作 ,过多的回滚可能还会带来undo block的竞争该参数计算公式如下:

round(user rollbacks / user commits + user rollbacks) ,4)* 100% 。

rows per sort:每次排序的行数。

注:oracle的硬解析和软解析

提到软解析(soft prase)和硬解析(hard prase),就不能不说一下oracle对sql的处理过程。当你发出一条sql语句交付oracle,在执行和获取结果前,oracle对此sql将进行几个步骤的处理过程:

1、语法检查(syntax check)

检查此sql的拼写是否语法。

2、语义检查(semantic check)

诸如检查sql语句中的访问对象是否存在及该用户是否具备相应的权限。

3、对sql语句进行解析(prase)

利用内部算法对sql进行解析,生成解析树(parse tree)及执行计划(execution plan)。

4、执行sql,返回结果(execute and return)

其中,软、硬解析就发生在第三个过程里。

oracle利用内部的hash算法来取得该sql的hash值,然后在library cache里查找是否存在该hash值;

假设存在,则将此sql与cache中的进行比较;

假设“相同”,就将利用已有的解析树与执行计划,而省略了优化器的相关工作。这也就是软解析的过程。

诚然,如果上面的2个假设中任有一个不成立,那么优化器都将进行创建解析树、生成执行计划的动作。这个过程就叫硬解析。

创建解析树、生成执行计划对于sql的执行来说是开销昂贵的动作,所以,应当极力避免硬解析,尽量使用软解析。

本节包含了oracle关键指标的内存命中率及其它数据库实例操作的效率。其中buffer hit ratio 也称cache hit ratio,library hit ratio也称library cache hit ratio。同load profile一节相同,这一节也没有所谓“正确”的值,而只能根据应用的特点判断是否合适。

在一个使用直接读执行大型并行查询的dss环境,20%的buffer hit ratio是可以接受的,而这个值对于一个oltp系统是完全不能接受的。根据oracle的经验,对于oltp系统,buffer hit ratio理想应该在90%以上。

2023年高考英语山东卷详细分析

2010年高考英语山东卷给人的总体感受是 试卷难度适中,贴近现实生活,关注社会,选材注重对学生价值理念的引导。整个试题没有很难很偏很怪的知识点,对英语语言技能和语言知识的考查非常全面。题意表达清楚,语言准确 简洁,完全符合素质教育和新课程改革的要求,充分体现了新课程标准提出的 培养学生的语言运用能力...

英语四级新题型详细分析

原试题难度 新试题难度 在此次调整中,快速阅读理解的变化也很大。在此之前,长篇阅读部分,原来快速阅读部分要求15分钟完成15题,不少同学因为时间紧迫,考试结束铃声响起,也基本上还未和最后两题 见面 此次调整后,原来的选择加填空调整为匹配题。篇章后附有10个句子,每句一题。每句所含的信息出自篇章的某一...

2023年高考英语试题详细分析

2010年高考英语试题分析山东卷。做完2010年普通高等学校招生全国统一考试英语科山东卷,感觉非常欣慰,因为整个试题的难度适中,控制得当,没有很难很偏的知识点,考查的知识点非常全面。可以很明显的感觉到本套试题是严格按照 2010年普通高等学校招生全国统一考试山东卷考试说明 进行了科学 规范 严谨的命...