【问题标题】:Oracle 11g - AWR report Analysis helpOracle 11g - AWR 报告分析帮助
【发布时间】:2014-07-10 23:00:24
【问题描述】:

我是 Oracle 的新手,我从企业管理器创建了 AWR 报告。这是报告的一个小快照。

登录次数: 每秒 0.01 - 每个事务 0.02
内存中排序 % 100.00
执行次数 每秒 19.0 -每个事务 27.7
% SQL with execution >1 开始:97.45 - 结束:94.41
缓冲区缓存: 开始:240M - 结束:240M
回滚 每秒 0.2 - 每笔交易 0.2
缓冲区命中率 99.98
共享池大小: 开始:1,024M - 结束:1,024男

你们能否告诉我“登录”、执行等每个术语的含义以及如何使用它们来确定数据库性能?

对不起,如果这个问题看起来很愚蠢,但我在网上找不到任何解释。

【问题讨论】:

    标签: oracle oracle11g report awr


    【解决方案1】:

    登录非常简单——新用户/会话登录系统的次数。通常,您不希望每秒进行大量登录,因为这是一个非常缓慢的操作。如果你这样做了,那么你可能应该看看连接池。

    排序 - 通常您希望对数据进行排序(日期、字母顺序)。小数据集可以在内存中排序。较大的可能会溢出到磁盘,这比较慢。如果你在记忆中做所有事情,那并不意味着有问题。

    执行 - SQL 通常经过 PARSE、BIND、EXECUTE、FETCH。每次执行可能有多次提取(提取前 10 行,后 10 行等)。同样,一些 SQL 没有提取(例如插入)。一个事务由许多 SQL 组成。如果每个事务有 20-30 个 SQL,那么您会得到一些合理的复杂性。并非每个语句本身都是一个孤立的事务。每秒执行次数更为基本。请参阅我的结束评论。

    % SQL with execution > 1 - 每次解析可以有多个绑定和执行(这是一件好事,因为解析可能很昂贵)。您的大多数 SQL 都会执行多次,非常好。

    缓冲区高速缓存 - 用于数据块副本的内存量。没有“好”或“坏”之分,这取决于服务器上的内存。

    回滚 - 每笔交易 0.2 是....奇数。它表明 20% 的事务被回滚而不是提交。可能没什么好担心的,它可能只是后退或取消按钮的工作方式。除非在强制回滚时引发大量错误,否则这不是数据库问题,而只是应用程序的工作方式。

    Buffer Hit % - 数据块读取的百分比直接来自内存而不需要进入磁盘。从内存读取速度比磁盘快,所以高是“好”(特别是对于 OLTP 应用程序 - 数据仓库通常处理的数据多于内存容量)。但不要对比率感到兴奋。如果您可以减少物理 IO(从磁盘读取)很好,但是从内存中的块生成额外的读取只是为了提高比率没有任何好处。

    共享池大小 - 同样,它是内存的度量。

    ================================================ ========================== 最终,这些都不是衡量数据库性能的好方法。重要的是应用程序用户(或开发人员或管理人员)是否说他们的程序符合或不符合他们的性能规范。

    每秒执行次数是一项重要的衡量标准,但仅针对您所需的工作量。如果用户想要每秒执行 50 次,而只执行 20 次,结果是加班,那么你就有问题了。如果他们只需要每秒做 10 次,并且他们在 Youtube 上花半天时间,那你做得很好。

    同样,如果测量的是一个工作日的 8 小时,如果它涵盖 24 小时,其中每个人有 16 小时在家,情况可能会大不相同。

    【讨论】:

    • 非常感谢 Gary,帮了大忙!
    猜你喜欢
    • 1970-01-01
    • 2016-01-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-08-24
    • 2013-11-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多