整个Oracle的性能指标体系建立在响应时间模型上:
响应时间=服务时间+等待时间
性能指标因此也有两种,一种叫“性能统计数据(Performance Statistics)”,内存命中率(buffer cache hit ratio)是最典型的指标。另一种叫等待事件(wait events)或者OWI。
第一个指标非常看重数据是从SGA读取还是从磁盘读取的,而命中率的概念就是:
命中率=命中次数/访问次数
该指标基于以下的逻辑:CPU从Cache中访问数据最快,内存其次,磁盘最慢。而有限内存往往会因为空间紧张而将一些暂时无用的数据写回磁盘进行释放,而下次的读取必然又是物理读,这些IO就会上升,命中率就会下降,因此,命中率的高低反应了系统的繁忙程度,提高命中率就能提高性能。它反应的就是服务时间。
然而,人们渐渐发现命中率高不代表系统的性能好,命中率低的系统也不一定就有性能问题,它只是现象,不是性能下降的原因。
第二种指标则基于以下逻辑:用户的操作可以分解为对OS的调用,通过分类,并进行统计,再将统计结果以视图的形式展现出来,就能提供给用户分析。发生的等待事件,每类事件发生的次数,消耗的时间都被记录下来,以此为依据,DBA就知道时间消耗在哪些环节,进行针对性调整。该指标反应的是等待时间。
性能统计——缓冲区命中率在95%以上?
SQL优化的重点是执行计划的好坏,一个高命中率的执行计划绝不等于一个高效的执行计划。将数据库性能与命中率的高低划等号是错误的,但它能体现服务时间的情况,可作为OWI的补充。
常用的基本视图:
性能统计数据:v$statname v$sysstat v$sesstat v$waitstat
等待事件接口:v$event_name v$session_wait v$session_event v$system_event
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/25226713/viewspace-683631/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/25226713/viewspace-683631/