如何查看awr/statspack报表,来定位系统的问题

2023-10-26

author:skate

time:2010-03-25


 

如何查看awr/statspack报表,来定位系统的问题

 

数据库的性能指标一般都有什么?只有定好指标才能判定系统的性能,性能参考指标一般有如下几个:
 
1.响应时间:平均每事务的响应时间和,系统的响应速度
2. cpu时间:平均每事务所消耗的cpu时间(和响应时间不同,因为这里不报错cpu等待时间)
3. 等待时间:等待事件的平均每次等待时间
4. 逻辑读:就是一致读
5. 物理读:从disk
6. 事务数/秒:平均每秒的事务数
7. redo size/:每秒产生的redo
8. redo size/事务:每事务产生的redo
9. 系统cpu(user%+sys%):系统cpu使用百分比
10. 系统内存使用率
11. 磁盘系统使用率
 
 
awr/statspack报表判断系统性能,一般主要看事务响应时间和等待时间,来判断数据库是否正常为外界应用提供服务.
一般oltp系统的响应时间在15s内都是可以接受的。

 

 

 

Awr

DB Name

DB Id

Instance

Inst num

Release

RAC

Host

DBTICA

4056410298

Orcl

1

10.2.0.1.0

NO

db3

 

 

 

Snap Id

Snap Time

Sessions

Cursors/Session

Begin Snap:

8190

13-Mar-10 21:00:46

69

4.3

End Snap:

8192

13-Mar-10 23:00:50

61

4.5

Elapsed:

 

120.07 (mins)

 

 

DB Time:

 

30.40 (mins)

 

 

 

Report Summary

 

Cache Sizes

 

Begin

End

 

 

Buffer Cache:

19,872M

19,872M

Std Block Size:

8K

Shared Pool Size:

2,608M

2,608M

Log Buffer:

14,360K

 

Load Profile

 

Per Second

Per Transaction

Redo size:

65,916.00

7,091.88

Logical reads:

35,000.51

3,765.69

Block changes:

444.38

47.81

Physical reads:

0.02

0.00

Physical writes:

12.19

1.31

User calls:

2,323.80

250.02

Parses:

593.14

63.82

Hard parses:

1.20

0.13

Sorts:

559.07

60.15

Logons:

0.05

0.01

Executes:

1,224.35

131.73

Transactions:

9.29

 

 

 

% Blocks changed per Read:

1.27

Recursive Call %:

50.27

Rollback per transaction %:

0.02

Rows per Sort:

0.13

 

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.93

Soft Parse %:

99.80

Execute to Parse %:

51.55

Latch Hit %:

99.99

Parse CPU to Parse Elapsd %:

71.22

% Non-Parse CPU:

94.67

Shared Pool Statistics

 

Begin

End

Memory Usage %:

82.93

89.01

% SQL with executions>1:

89.78

83.82

% Memory for SQL w/exec>1:

80.34

75.70

 

Top 5 Timed Events

Event

Waits

Time(s)

Avg Wait(ms)

% Total Call Time

Wait Class

CPU time

 

1,418

 

77.7

 

enq: TX - contention

144

320

2,221

17.5

Other

log file sync

29,576

18

1

1.0

Commit

latch: shared pool

254

16

64

.9

Concurrency

log file parallel write

74,540

12

0

.7

System I/O

 

名词解释:db time cpu time elapsed time

 

db time

db time是指oracle花费在cpu上和等待事件上的时间,所以说,db_time=cpu_time+waited timedb time已经做为10g awr的一个采样指标,在上面的awr中可以看到,在9iR2上,我们同样可以通过top 5部分计算出来。在本例中,db time=1,418CPU time/77.7%/60=30.41min(和数据库监控值差一点啊)。这与awr db time一栏的采样数值基本是一致的.其实用任何等待事件都可以计算的

cpu time

Oracle引入CPU time是在9iR2版本,cpu time是衡量一个数据库负载的重要指标,可以将它看成是“CPU used by this session”的收集汇总。

    

9iR2之前,top 5部分称之为Top 5 Wait Events,其中cpu time并不包含在top 5内,该部分是纯粹的等待事件的汇总。而在9iR2之后,Top 5称之为top 5 timed events,从字面上也可以发现二者的区别。oraclecpu time作为一个事件纳入top 5中,新的top 5包含cpu timewaited time 2部分,也就是db time(上面提到的)。  

  

我们可以通过cpu timewaited time的比值,来了解库的负载和运行情况,通常较高的比例代表较好的性能;而通过平均每颗CPU耗费的cpu timeElapsed time的比例,可以评估整个系统在CPU方面是否存在瓶颈.

 

elapsed time

elapsed time是指物理的流逝时间,这是一个采样的时间跨度基数

 

 

 

下面几个需要计算的性能指标,其他的可以直接在awr/statspack查到

 

1. response time

    基于transaction或者user call的平均响应时间,可以看做是我们做性能优化效果的一个证据.个人觉得没必要太注重这个数值。response time=service time(cpu time) + waited time。放到我们前面的这个awr中,平均事务响应时间也就可以近似这样计算:avg trans response time =1,418CPU time/77.7%/60/120.07Elapsed/9.29transactions per second=0.027s

 

2. 等待时间:   

            

查看最多的等待事件的平均每次等待事件,在awr中直接就给计算出来了啊,在Top 5 Timed Events 中的avg wait(ms)就表示平均每次等待事件,在statspack就要自己计算了, avg time per wait=320enq: TX - contention/144=2.222s=2221ms(大约等于)

 

3. cpu时间

 

平均每事务的消耗cpu时间,在10g中可以直接查询到。但在9i中就需要计算 
cpu time per trans =1418cpu time/9.29transactions per second/120.07Elapsed/60=0.021s

 

 

 

 

 

 

 

----end-----

 

 

 

 

 

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何查看awr/statspack报表,来定位系统的问题 的相关文章

  • MySQL 行级锁

    我不确定行级锁是如何工作的 但这是我的问题 我有一个表 T id int balance int engine InnoDB 我想锁定 ID 1 的行 所以我开始一个像这样的事务 start transaction select from
  • 在 Swift 中,如何检测哪些 UIControl 事件触发了操作?

    我目前有 4 个 UITextField IBOutlet weak var fNameTextField UITextField IBOutlet weak var lNameTextField UITextField IBOutlet
  • Cassandra 与 ZooKeeper 的事务 - 这有效吗?

    我正在尝试在 ZooKeeper 的帮助下为 Cassandra 实现一个事务系统 由于我认为我在数据库实现方面没有足够的经验 所以我想知道我的想法原则上是否可行 或者是否有任何重大缺陷 以下是步骤的高级描述 识别所有要编辑的行 键 和列
  • 跟踪滚动位置并通知其他组件

    有没有一种简单的方法来跟踪浏览器滚动位置并通知多个组件 用例 在滚动时 我希望能够根据我所在的位置更改页面上各种元素的类 在 Angular 的早期版本中 通过插件可以实现这一点 对于 jQuery 也是如此 当然 可以选择编写裸 JS 在
  • 以编程方式操作 DOM 元素值不会触发 onchange 事件

    我有一个隐藏的表单字段 当按下按钮时 隐藏字段的值就会改变 现在 我已向隐藏字段添加了一个观察者 监听发生的变化 但由于某种原因 即使隐藏元素的值发生变化 事件侦听器也永远不会启动 我正在使用 Prototype 和 Firefox 3 6
  • 如何在react中监听localstorage值的变化?

    我想在用户登录时显示一个按钮 如果用户未登录 那么我不会显示按钮 当用户登录时 我将设置本地存储值 当我在登录组件中设置本地存储时 标头组件必须侦听该事件并且显示按钮 我正在使用 addEventListener 进行监听 但它没有监听 我
  • 动画片段和返回堆栈

    我在使用或理解如何弹出时遇到问题 后台堆栈中的 FragmentTransactions 处理自定义 动画 具体来说 我希望它能够调用 out 动画 但是 看来不是 我有一个简单的方法来处理片段事务 FragmentTransaction
  • 保存到会话状态的 DataTable 丢失事件处理程序

    我有一个来自强类型数据集的数据表 该数据集在 TableNewRow 事件上有一个事件处理程序 用于初始化一些日期字段 当我将此表保存到会话状态时 事件处理程序会正常触发 直到表被序列化 在后续请求中 当我从会话状态检索表时 事件处理程序不
  • 为什么事件属性不容易获取?

    我有以下代码 HERE https jsfiddle net 5n2zagjc 2 是可编辑的示例 用法 在输入字段中键入并观看控制台 function test event let keys Object keys event let k
  • 动态插入的 jQuery 库加载完成后执行我的 jQuery 脚本

    我通过以下方式在页面上动态插入 jQuery 库
  • 是否有用于事件驱动的 Kafka 消费者的 Python API?

    我一直在尝试构建一个以 Kafka 作为唯一界面的 Flask 应用程序 因此 我希望有一个 Kafka 消费者 当相关主题的流中存在新消息时 该消费者会被触发 并通过将消息推回到 Kafka 流来进行响应 我一直在寻找类似 Spring
  • Java - 创建自定义事件和侦听器

    我正在尝试用 Java 创建自定义事件和侦听器 我已经看过这些文章和问题 在 Java 中创建自定义事件 https stackoverflow com questions 6270132 create a custom event in
  • 创建活动时如何更改 Google 日历上的活动组织者?

    我正在使用 Google Calendar Api 创建事件 我试图将参数组织者与我想成为所有者的人的电子邮件一起传递 但它不起作用 并且组织者始终是同一创建者 None
  • hibernate锁等待超时超时;

    我正在使用 Hibernate 尝试模拟对数据库中同一行的 2 个并发更新 编辑 我将 em1 getTransaction commit 移至 em1 flush 之后我没有收到任何 StaleObjectException 两个事务已成
  • Cocoa - 捕获 NSStatusItem 鼠标悬停事件

    当用户的鼠标悬停在我的 NSStatusItem 上时 如何执行函数 如果您分配自定义NSView给你的NSStatusItem s view属性 您可以覆盖NSResponder方法mouseEntered mouseMoved and
  • Flash AS3 EventDispatcher - 有什么方法可以获取已注册侦听器的列表吗?

    有没有什么方法可以获取注册监听器的列表EventDispatcher 我知道EventDispatcher有hasEventListener方法告诉您是否注册了任何侦听器 但是有没有一种简单的方法来询问EventDispatcher找出听众
  • 可以在初始 DOM 解析期间/之前修改 DOM 吗?

    是否可以在初始 DOM 解析期间或之前修改 DOM 或者我是否必须等到 DOM 被解析和构建之后才能与其交互 更具体地说 是否有可能阻止 DOM 中的脚本元素使用用户脚本 内容脚本或 Chrome 或 Firefox 中的类似脚本运行 在解
  • 该操作对于事务状态无效

    我有一个TransactionScope 堵塞 它总是卡在插入语句中 它在活动监视器中显示为阻塞任务 因此它阻塞 SQL 服务器 并且在超时后 我收到此错误 该操作对于事务的状态无效 出了什么问题 const TransactionScop
  • F10键没被抓住

    I have a Windows Form and there overriden ProcessCmdKey However this works with all of the F Keys except for F10 I am tr
  • ASP.NET Click() 事件在第二次回发时不会触发

    我有一个 ASP NET Web 表单 我第一次提交表单时 会引发 提交按钮单击 事件 表单返回到浏览器时可能会出现验证错误 或者可以选择使用新值再次提交表单 当再次提交表单时 提交按钮单击 事件永远不会触发 Page Load 触发 但按

随机推荐

  • Discourse搭建

    首先要链接上服务器 首先WINDOWS打开CMDER MAC的话打开Terminal 都是类似的 在窗口输入 ssh root ALIYUN IP 这里的ALIYUN IP是你的服务器的公网IP地址 举个例子 我的公网IP是47 88 12
  • Qt中执行多条shell语句

    在Qt中执行一个shell指令常用QProcess类来完成 常见的用法示例如下 QProcess process process start find opt name ts calibrate str是需要执行的命令 flag proce
  • python之weditor定位的使用

    1 driver text 书城 定位元素的方式 属性定位 2 driver text 书城 click 点击元素 3 driver resourceId click 点击搜素按钮 4 driver resourceId send keys
  • 我在支付宝花了 1 分钟,查到了对象的开房记录

    来源丨Hack https mp weixin qq com s 6fDFqBQMqUVdkJG Dg7iCw 在大数据时代下 不管你做什么都会留下蛛丝马迹 只要学会把各种软件运用到极致 捉奸简直轻而易举 今天就来给大家分享一下 什么叫大数
  • Python基础学习:numbers模块

    numbers 数字抽象基类 其源代码存储在 Lib numbers py numbers模块定义了数字抽象基类的层次结构 逐渐定义更多的操作 该模块中定义的任何类型都不能实例化 1 数字塔 class numbers Complex 数字
  • Python EasyNote 1

    描述 Python strip 方法用于移除字符串头尾指定的字符 默认为空格或换行符 或字符序列 注意 该方法只能删除开头或是结尾的字符 不能删除中间部分的字符 Python split 通过指定分隔符对字符串进行切片 如果参数 num 有
  • 05 CoCos Creator-native.log

    1 Compile failed 编译保存信息 查看报错文件 C Users Administrator CocosCreator logs native log Error Compile failed The log file path
  • 宏和函数

    此为C语言的基础 和Linux内核关系并不大 不过还是作为补充知识点介绍一下好了 宏非常频繁的用于执行简单的计算 比如在两个表达式中寻找其中较大的一个 define MAX a b a gt b a b 如果使用函数来实现的话就比较慢 宏的
  • Hololens2发布流程记录,含MRTK2导入,工程的安装

    记录一下HoloLens2发布流程 1 创建新工程 我这边用的是unity2019版本 2 下载MixedRealityFeatureTool exe 官网链接 https download microsoft com download 2
  • 住宅IP和机房IP的特征区别

    住宅IP是ISP 互联网服务提供商 或ADSL提供商分配给单个用户的实际住宅IP地址 由100 真实WIFI网络用户组成 住宅IP是真正的用户设备IP 与主流用户的宽带网络IP完全一致 与机房等IP相比 成功率更高 关闭概率更低 但维护稳定
  • 在spring引入log4j

    在spring中使用log4j 引入log4j软件包 配置log4j属性 加载log4j配置文件 默认加载 手动加载 使用logger 本文的整体代码结构是在已经引入spring基本应用的前提下 在spring配置文件中通过 Bean注解创
  • git---查看当前账户和切换账户

    查看当前用户名和邮箱 git config user name git config user email 修改用户名和邮箱 git config global user name Your username git config glob
  • GPT-Tools Cookbook by Eric

    1 账号申请和登录 1 1 OpenAI 账号注册 可以参考 2 ChatGPT 的注册与登录 来自 涛哥ChatGPT和Python变现圈 选择账号邮箱 我们在尝试过直接使用邮箱注册OpenAI账号 试验了两次 都没有成功 Note 第二
  • SpringBoot 集成SpringBatch 批处理框架

    SpringBatch 核心组件简介 1 JobRepository 用来注册Job容器 设置数据库相关属性 2 JobLauncher 用来启动Job的接口 3 Job 我们要实际执行的任务 包含一个或多个 4 Step 即步骤 包括 I
  • 自然语言处理实战项目18-NLP模型训练中的Logits与损失函数的计算应用项目

    大家好 我是微学AI 今天给大家介绍一下 自然语言处理实战项目18 NLP模型训练中的Logits与损失函数的计算应用项目 在NLP模型训练中 Logits常用于计算损失函数并进行优化 损失函数的计算是用来衡量模型预测结果与真实标签之间的差
  • QQkey后门

    今天凌晨收到 LX2222 的举报反馈被盗号 发布的加速器盗取账号信息 https www 52pojie cn thread 785555 1 1 html 我们着手分析一下看看软件确实发现了问题 被添加了盗取QQkey的后门 通过拿到Q
  • SQL查询语句之查询数据

    目录 1 基本查询语句 2 单表查询 2 1 查询所有字段 1 列出表中的所有字段 2 使用 查询所有字段 2 2 查询指定字段 2 3 查询指定记录 2 4 带 in 关键字的查询 2 5 带 between and 的范围查询 2 6
  • HTML中Table表格的使用与漂亮的表格模板

    1 表格标记 表格是网页中十分重要的组成元素 表格用来存储数据 包含标题 表头 行和单元格 在HTML语言中 表格标记使用符号 table 表示 定义表格光使用 table 是不够的 还需要定义表格中的行 列 标题等内容 标记 说明 表格标
  • Vue2 项目里,使用 Element 的 dialog 里嵌套 tabs,导致关闭 dialog 时浏览器卡死问题

    Vue2 项目里 使用 Element 的 dialog 里嵌套 tabs 导致关闭 dialog 时浏览器卡死问题 解决办法 给 tab 添加 v if 绑定 dialog 的 visible sync
  • 如何查看awr/statspack报表,来定位系统的问题

    author skate time 2010 03 25 如何查看awr statspack报表 来定位系统的问题 数据库的性能指标一般都有什么 只有定好指标才能判定系统的性能 性能参考指标一般有如下几个 1 响应时间 平均每事务的响应时间