Oracle DB 压力测试相关性能指标及达到指标的方法

数据库服务器的几个性能测试指标(单机或RAC, RAC的某些值需要加总或求平均):

DB服务器CPU利用率 
        ---  可从NMON ,  AWR 或 SQL 获取,如果是RAC,  可能需要求平均值。  

IOPS                            
         ---  NMON获取的IOPS更精确  (相对AWR或SQL)  ,类似Physical Read Total IO Requests,数据库的一次I/O和操作系统的一次I/O 不同。

IO带宽
      ---- NMON中 DISK_SUMM 的sheet上 Disk Total KB/s 上有呈现。

每秒产生的Redo大小(Redo size Per Second)
          ----  涉及到数据库redo ,  从AWR或SQL获取 

每秒Transactions数(Transactions Per Second 或 Txns/s) 
          ----  涉及到数据库transactions ,  从AWR或SQL获取 

IO Response Time  
          ----  涉及到数据库IO响应,  从AWR或SQL获取    (查找等待事件中Timed Events:   db file sequential read , 查看Wait Time下的 Avg(ms) 可得到 )    

如果是RAC ,   AWR报告需要是全局的, 执行  awrgrpt.sql  。

------------------------------------------

压力如何调整: 

1.     如果需要增加IOPS 而不增加IO带宽(吞吐量), 可以适当减少全表扫描的查询,增加通过rowid 进行索引扫描的查询 , 比如可以通过 dba_segments 查询出size较大的几个表,通过强制使用index 进行rowid 访问来增加IOPS .
例如:  select   /*+INDEX(a  )*/    count(1)   from   gl.gl_je_lines  a   where   description  is  not  null  ;   
 条件中选择最不可能建立index的列 (查一下是否使用到index也可以) , 或者说长度最长的那个字段, 比如这里的 description ,  列上最好有值 。  这样通过 where 后的条件字段不能直接在 index 中取值,而需要通过rowid 在table中取值, 那么相对block 更加分散, IOPS 会增加较快, 而IO带宽相对增加不多。 

2.   如果需要增加IO 带宽 , 那么全表扫描是一个选择 。

3.   如果需要增加redo size /S  的大小,  自然是增加单位时间内的 DML 。


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/35489/viewspace-775263/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/35489/viewspace-775263/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值