最近,我从数据库管理员那里得到了一个ash report。
对我来说,这份报告就像法语一样。我不知道它是关于什么的,以及这份报告中写了什么。有人可以指导我阅读它,并解释我应该采取哪些步骤,使我的查询稳定和更少的cpu消耗。此外,哪个查询占用了更多的CPU。
发布于 2012-03-07 23:29:18
ASH (活动会话历史记录)报告显示一段时间内数据库内发生的情况。
例如,SQL with Top Events显示第一个查询消耗了31%的时间。SQL ID列可以链接到使用的Complete List of SQL Text:
select some_giant_list_of_columns
from VU_PERSON_MINI
where lower (person_id) = ?在Top SQL with Top Row Sources中,同样的语句表示它正在执行全表扫描(TABLE ACCESS = FULL)。
我怀疑VU_PERSON_MINI上的LOWER(PERSON_ID)上没有基于函数的索引。添加一个或修复潜在问题(这是一个数字列吗?你能在应用程序中强制它总是以小写存储)应该有助于提高性能。
此外,该查询中direct path read事件的存在也有些麻烦。这通常表示对磁盘的排序活动-或者您正在读取LOB数据。您的意思是成为SQL的一部分吗?
https://stackoverflow.com/questions/9571246
复制相似问题