Analysing Statspack 2      

命中率陷阱

原文:http://jonathanlewis.wordpress.com/2006/12/27/analysing-statspack-2/

作者:Jonathan Lewis

了解Statspack的报告的一个重要的事情是要甄别出哪些内容是不需要看的,下面就是一个例子:

Instance Efficiency Percentages (Target 100%)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Buffer Nowait %: 100.00 Redo NoWait %: 100.00
Buffer Hit %: 100.00 In-memory Sort %: 100.00
Library Hit %: 99.96 Soft Parse %: 99.00
Execute to Parse %: 98.02 Latch Hit %: 100.00
Parse CPU to Parse Elapsd %: 92.74 % Non-Parse CPU: 98.56

Instance Efficiency 汇总这一部分报告内容实质上是没有用的,至少是在企图通过个别的报告就希望定位到问题所在的情况下。

那么上面的汇总数据又能说明些什么呢?我们继续监控下内存中的数据,所有的排序都在内存中,大部分的解析都是软解析,继续监控下library cache中的对象,每次解析都执行了很多次,解析只占用了少量的cpu时间。

唯一可能会导致性能不佳的地方就是92.74%的数据项,数据显示在解析的时候损失了一点时间,但解析本身所占的比重也是微乎其微,这关系大吗?

事实上,这个实例已经显示出严重的响应时间,系统已超额负载。原因主要有三个主要的设计缺陷,但却不容易发现。但数据显示唯一可疑的地方是92.74%,但我们如何来减少解析的时间开销呢,一种可能恐怕只能让cpu疯狂的工作。

记住:百分比(或者命中率)会隐藏scale。如果每分钟执行一次解析,那么100%硬解析也并非就一定是坏事。但如果每分钟10,000次解析,那么100%的软解析对系统来说也会是灾难,但应当排除使用会话缓存的cursor,但系统仍然记录为一次解析调用的情形。

对于一次解析,1000次执行的具有高达99.9%命中率的情形,如果其中900次的执行都毫无意义,那又何尝是好的设计呢。

如果你确实希望观察一下实例的命中率模型数据,花费一点时间去看一下 Load Profile 部分,尤其是‘每秒’的统计,来决定你的实例是否在合理的工作状态,要时刻的记住平衡原则:如果你把头放在冰桶里,脚放在火堆了,平衡一下你应该是感到最舒服。

statspack系列2的更多相关文章

  1. statspack系列8

    原文:http://jonathanlewis.wordpress.com/2006/12/27/analysing-statspack-8/ 作者:Jonathan Lewis 在前面的关于stat ...

  2. statspack系列7

    原文:http://jonathanlewis.wordpress.com/2006/12/27/analysing-statspack-7/ 作者:Jonathan Lewis 这是一段Oracle ...

  3. statspack系列4

    原文:http://jonathanlewis.wordpress.com/2006/12/27/analysing-statspack-4/ 作者:Jonathan Lewis 使用statspac ...

  4. statspack系列3

    原文:http://jonathanlewis.wordpress.com/2006/12/27/analysing-statspack-3/ 作者:Jonathan Lewis 下面的例子中的结果并 ...

  5. statspack系列6

    原文:http://jonathanlewis.wordpress.com/2006/12/27/analysing-statspack-6/ 作者:Jonathan Lewis 下面是一段时间以前网 ...

  6. statspack系列5

    原文:http://jonathanlewis.wordpress.com/2006/12/27/analysing-statspack-5/ 作者:Jonathan Lewis 前些天,有人给我发了 ...

  7. 蓝色的成长记录——追逐DBA(8):为了夺回SP报告,回顾oracle的STATSPACK实验

    ***********************************************声明*************************************************** ...

  8. .Net程序员学用Oracle系列(30):零碎补充、最后总结(The End)

    1.同义词 2.Flashback 技术 3.连接字符串的写法 4.转义字符 & 特殊运算符 5.文件类型 6.查看参数 & 修改参数 7.AWR 工具 8.学习方法 & 学习 ...

  9. 【等待事件】等待事件系列(5.1)--Enqueue(队列等待)

    [等待事件]等待事件系列(5.1)--Enqueue(队列等待)   1  BLOG文档结构图   2  前言部分   2.1  导读和注意事项 各位技术爱好者,看完本文后,你可以掌握如下的技能,也可 ...

随机推荐

  1. VS2010 测试 -普通单元测试

    http://www.cnblogs.com/rhythmK/archive/2012/04/20/2458832.html

  2. effective c++(04)之对象使用前初始化

    对于内置类型以外的初始化责任落在构造函数身上.如下: class PhoneNumber{}; class ABEntry{ public: ABEntry( const string& na ...

  3. ASP.NET MVC5总结(三)登陆中常用技术解析之session与cookie

    1.session机制 session机制是在服务器端保持状态的方案,在做系统登陆时,我们往往会用到session来存储一些用户登录的重要信息,而这些信息是不能存在cookie中的. 当访问量增多时, ...

  4. ubuntu安装mariadb

    参考网址:https://downloads.mariadb.org/mariadb/repositories/ 以ubuntu12.04安装mariadb10为例.具体其他的可以参考给出的参考网址H ...

  5. WKWebView无法(通过URL schemes)跳转到其他App

    Custom scheme URL 在WKWebView中默认是不支持的 (但Safari可以). 我们可以通过NSError来进行一些处理从而使得程序可以正常跳转: func webView(web ...

  6. 伪Base16的构思和实现

    最近看见了一个迅雷地址,发现将其转换为普通链接的工具后,发现所谓专用地址地址就是原地址前加一个表示迅雷的前缀,后进行Base64编码.查阅Base64编码过程后,突发奇想:能否做一个Base16算法? ...

  7. 两款web api 调试工具

    两款web api 调试工具: Fiddler (http://www.telerik.com/fiddler) Postman(http://www.getpostman.com/) 资源: Fid ...

  8. 暑假集训(2)第二弹 ----- The Suspects(POJ1611)

    B - The Suspects Crawling in process... Crawling failed Time Limit:1000MS     Memory Limit:20000KB   ...

  9. JQuery上传插件Uploadify

    一:官网 http://www.uploadify.com/ 二:引用 <link href="plug-in/uploadify3.2.1/uploadify.css" r ...

  10. 阻止CSS样式被缓存

    <link href="/stylesheet.css?<?php echo time(); ?>" rel="stylesheet" typ ...