上月,我有机会在达拉斯Oracle用户组听到TUSC的Rich Niemiec谈到Oracle的性能分析问题,其中他给我们的一条提示,我感觉非常有益,那就是Oracle 10g中仍需要STATSPACK。
关于Oracle 10g性能方面,谈论最多的就是新的自动工作负荷存储库(AWR)特性和通过自动数据库诊断监视(ADDM)提供的前瞻性性能监视。它们被广泛的报道,说是对STATPACK的替代。也确实是这样,据Niemiec先生所说,它们可以做更多的工作,代表Oracle性能分析的将来。
但是,他还说到不要忽视STATSPACK,不仅因为作为遗产它仍然存在于Oracle 10g中,而且它还作了很多更新,包含了可以AWR中使用的大量新工具。为了完全使用AWR,你需要对诊断包和分析包进行额外的注册,但STATSPACk已包含在Oracle的价格中。
这里是一些Niemiec先生提到的在Oracle 10g的STATSPACK新增的功能:
时间模型统计:Oracle的时间模型包含db_time,处理数据库请求需要的时间和当会话等待某种资源时的各种等待时间。时间模型统计将db_time分解为它的各个组成部分,因此你可通过操作类型以看到Oracle花费的处理时间。
等待事件柱状图:取代记录每种类型发生时有多少等待的全部计数器,柱状图继续按照时间多少分解各种计数。你可以查看多少等待时间少于1ms,多少少于4ms,多少少于8md等待。假如你要检测等待时间,这可能不是一个优先选择的分析工具,但是它们都很简捷。
读取文件柱状图:像等待事件柱状图一样,它是按照读取时需要的时间分解磁盘块数计数,你可以更轻易地查看哪些设备的执行状况不是很好。
操作系统统计:它显示系统的CPU空闲时间与用户时间的比值,活跃时间与空闲时间比值以及进出的字节数。
撤销统计:这是关于撤销段效率的具体测量方法。
虽然增加了一些新的选项,如设定运行脚本时创建表格的最大容量等,但运行STATSPACK的过程没有太大变化。