没有合适的资源?快使用搜索试试~ 我知道了~
AWR报告分析实例2009.doc
4星 · 超过85%的资源 需积分: 9 93 下载量 201 浏览量
2010-10-31
20:53:30
上传
评论 1
收藏 1.68MB DOC 举报
温馨提示
试读
48页
对分析oracle数据库性能有参考价值,只要是帮助你如何分析数据库产生的快照!
资源推荐
资源详情
资源评论
WORKLOAD REPOSITORY report
for
DB Name DB Id Instance Inst num Release RAC Host
Snap Id Snap Time Sessions Cursors/Session
!" # $%"& # #
'% # $%"& # #
DB Time 不包括 Oracle 后台进程消耗的时间。如果 DB Time 远远小于 Elapsed
时间,说明数据库比较空闲。
在 79 分钟里(其间收集了 3 次快照数据),数据库耗时 11 分钟,RDA 数据
中显示系统有 8 个逻辑 CPU(4 个物理 CPU),平均每个 CPU 耗时 1.4 分钟,
CPU 利用率只有大约 2%(1.4/79)。说明系统压力非常小。
可是对于批量系统,数据库的工作负载总是集中在一段时间内。如果快照周
期不在这一段时间内,或者快照周期跨度太长而包含了大量的数据库空闲时间,
所得出的分析结果是没有意义的。这也说明选择分析时间段很关键,要选择能
够代表性能问题的时间段。
Report Summary
Cache Sizes
Begin End
())*+ ,- ,- . !/01 2
+* //!1 - - 3/())* ,2
显示 SGA 中每个区域的大小(在 AMM 改变它们之后),可用来与初始参数
值比较。
shared pool 主要包括 library cache 和 dictionary cache。library cache 用来存储最
近解析(或编译)后 SQL、PL/SQL 和 Java classes 等。library cache 用来存储最
近引用的数据字典。发生在 library cache 或 dictionary cache 的 cache miss 代价要
比发生在 buffer cache 的代价高得多。因此 shared pool 的设置要确保最近使用的
数据都能被 cache。
Load Profile
Per Second Per Transaction
4 /"1 , ,
3/!* " , ,
!/0+" , ,
+5"!* "
+5"!6*."
7"*!!"
*""
* *""
/*."
3//"
8(."
'*"./" #
9!/0"+ *4 4(*":!!9
4/!!;0*.*"./9 4/6"*/*. <<<<<<<<
显示数据库负载概况,将之与基线数据比较才具有更多的意义,如果每秒或
每事务的负载变化不大,说明应用运行比较稳定。单个的报告数据只说明应用
的负载情况,绝大多数据并没有一个所谓“正确”的值,然而 Logons 大于每秒
1~2 个、Hard parses 大于每秒 100、全部 parses 超过每秒 300 表明可能有争用问
题。
Redo size:每秒/每事务产生的 redo 大小(单位字节),可标志数据库任务的
繁重程序。
Logical reads:每秒/每事务逻辑读的块数
Block changes:每秒/每事务修改的块数
Physical reads:每秒/每事务物理读的块数
Physical writes:每秒/每事务物理写的块数
User calls:每秒/每事务用户 call 次数
Parses:SQL 解析的次数
Hard parses:其中硬解析的次数,硬解析太多,说明 SQL 重用率不高。
Sorts:每秒/每事务的排序次数
Logons:每秒/每事务登录的次数
Executes:每秒/每事务 SQL 执行次数
Transactions:每秒事务数
Blocks changed per Read:表示逻辑读用于修改数据块的比例
Recursive Call:递归调用占所有操作的比率
Rollback per transaction:每事务的回滚率
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 的执行来说是开销昂贵的动作,所以,
应当极力避免硬解析,尽量使用软解析。
Instance Efficiency Percentages (Target 100%)
())*=/6.9 4 /=/>.9
())*.9 %%/*5/*.9
3;**5.9 /).*"9
8(../*"9 3.+.9
*"7./*"!" 9 9=/*"7
本节包含了 Oracle 关键指标的内存命中率及其它数据库实例操作的效率。其
中 Buffer Hit Ratio 也称 Cache Hit Ratio,Library Hit ratio 也称 Library Cache Hit
ratio。同 Load Profile 一节相同,这一节也没有所谓“正确”的值,而只能根据应
用的特点判断是否合适。在一个使用直接读执行大型并行查询的 DSS 环境,
20%的 Buffer Hit Ratio 是可以接受的,而这个值对于一个 OLTP 系统是完全不
能接受的。根据 Oracle 的经验,对于 OLTPT 系统,Buffer Hit Ratio 理想应该在
90%以上。
Buffer Nowait 表示在内存获得数据的未等待比例。
buffer hit 表示进程从内存中找到数据块的比率,监视这个值是否发生重大变
化比这个值本身更重要。对于一般的 OLTP 系统,如果此值低于 80%,应该给
数据库分配更多的内存。
Redo NoWait 表示在 LOG 缓冲区获得 BUFFER 的未等待比例。如果太低(可
参考 90%阀值),考虑增加 LOG BUFFER。
library hit 表示 Oracle 从 Library Cache 中检索到一个解析过的 SQL 或 PL/SQL
语句的比率,当应用程序调用 SQL 或存储过程时,Oracle 检查 Library Cache 确
定是否存在解析过的版本,如果存在,Oracle 立即执行语句;如果不存在,
Oracle 解析此语句,并在 Library Cache 中为它分配共享 SQL 区。低的 library hit
ratio 会导致过多的解析,增加 CPU 消耗,降低性能。如果 library hit ratio 低于
90%,可能需要调大 shared pool 区。
Latch Hit:Latch 是一种保护内存结构的锁,可以认为是 SERVER 进程获取访
问内存数据结构的许可。要确保 Latch Hit>99%,否则意味着 Shared Pool latch
争用,可能由于未共享的 SQL,或者 Library Cache 太小,可使用绑定变更或调
大 Shared Pool 解决。
Parse CPU to Parse Elapsd:解析实际运行时间/(解析实际运行时间+解析中等
待资源时间),越高越好。
Non-Parse CPU :SQL 实际运行时间/(SQL 实际运行时间+SQL 解析时间),太
低表示解析消耗时间过多。
Execute to Parse:是语句执行与分析的比例,如果要 SQL 重用率高,则这个
比例会很高。该值越高表示一次解析后被重复执行的次数越多。
In-memory Sort:在内存中排序的比率,如果过低说明有大量的排序在临时表
空间中进行。考虑调大 PGA。
Soft Parse:软解析的百分比(softs/softs+hards),近似当作 sql 在共享区的命
中率,太低则需要调整应用使用绑定变量。
Shared Pool Statistics
Begin End
-%/*57"9
9?36.+8(./"@
9-%/*5)/*?36A8@
Memory Usage %:对于一个已经运行一段时间的数据库来说,共享池内存使
用率,应该稳定在 75%-90%间,如果太小,说明 Shared Pool 有浪费,而如果高
于 90,说明共享池中有争用,内存不足。
SQL with executions>1:执行次数大于 1 的 sql 比率,如果此值太小,说明需
要在应用中更多使用绑定变量,避免过多 SQL 解析。
Memory for SQL w/exec>1:执行次数大于 1 的 SQL 消耗内存的占比。
Top 5 Timed Events
Event Waits Time(s) Avg Wait(ms) % Total Call Time Wait Class
7.% # # #
?3B=.%/* .)*/%!. , =.6/*0
!/)!*!!!6*. , 5".%AC
;)!"D(.!* , 7"*AC
;)!*!!!6*. , 5".%AC
这是报告概要的最后一节,显示了系统中最严重的 5 个等待,按所占等待时
间的比例倒序列示。当我们调优时,总希望观察到最显著的效果,因此应当从
这里入手确定我们下一步做什么。例如如果‘buffer busy wait’是较严重的等待事
件,我们应当继续研究报告中 Buffer Wait 和 File/Tablespace IO 区的内容,识别
哪些文件导致了问题。如果最严重的等待事件是 I/O 事件,我们应当研究按物
理读排序的 SQL 语句区以识别哪些语句在执行大量 I/O,并研究 Tablespace 和
I/O 区观察较慢响应时间的文件。如果有较高的 LATCH 等待,就需要察看详细
的 LATCH 统计识别哪些 LATCH 产生的问题。
在这里,log file parallel write 是相对比较多的等待,占用了 7%的 CPU 时间。
通常,在没有问题的数据库中,CPU time 总是列在第一个。
更多的等待事件,参见本报告 的 Wait Events 一节。
RAC Statistics
Begin End
=(%;*/)"."
Global Cache Load Profile
Per Second Per Transaction
!/;!+;!/0"*:
!/;!+;!/0""*:
A%"""*:
A%"""".
>4E("/6*."
". .*/..*))$2& #
Global Cache Efficiency Percentages (Target local+remote
100%)
())*""!/!+9
())*""*%/.+9
())*"" "09
Global Cache and Enqueue Services - Workload Characteristics
F:!/;!D((..%$%"&
F:!/;!+*;!/0*:.%$%"&
F:!/;!+(**.;!/0*:.%$%"&
F:!/;!+*;!/0;(! .%$%"&
F:!/;!+*;!/0" .%$%"&
!/;!+!/)!("+")/**;!/0""*: 9
F:!/;!+*;!/0)!("+.%$%"&
F:!/;!+(**.;!/0.%$%"&
F:!/;!+(**.;!/0" .%$%"&
!/;!+!/)!("+")/*(**.;!/0""*: 9
F:!/;!+(**.;!/0)!("+.%$%"&
Global Cache and Enqueue Services - Messaging Statistics
F:%""".D((.%$%"&
F:%""".D((.%/0"8$%"&
F:%""*: D((.%$%"&
F:%""*/"".%$%"&
F:%""*/"".%$%"&
9/) *.".%"""
剩余47页未读,继续阅读
资源评论
- ready_go_go2012-08-13想对oracle性能有深入了解的人,可以拥有。
- 风雨天一2011-11-08不错,很多的资源,详细的介绍了AWR报告,很有实用价值
- browsecai882013-09-24专业不够,重点不透彻
wangweiyong136
- 粉丝: 1
- 资源: 2
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- TG-2024-05-23-204718255.mp4
- 候志强@181 5428 8938_20240420112107.amr
- spispispispispi
- 实验二:IP协议分析.zip
- 驱动代码驱动代码驱动代码驱动代码
- SVID_20240523_141155_1.mp4
- Code for the complete guide to tkinter tutorial
- 关于百货中心供应链管理系统.zip
- SimpleFolderIcon-master 修改Unity的Project下的文件夹图标
- A python Tkinter widget to display tile based maps
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功