понимание файла трассировки, сгенерированного из tkprof - PullRequest
0 голосов
/ 26 октября 2011

Эй, ребята, я изучаю оптимизацию запросов с помощью Oracle 10g, и у меня возникли проблемы с пониманием файла ниже. может кто-нибудь, пожалуйста, объясните файл ниже, это файл трассировки запроса, который я выполнил. я знаю, что процессор и истекшее время (время, необходимое для получения данных из базы данных) но не уверен насчет "диска" и "запроса".

call     count       cpu    elapsed       disk      query    current  rows
------- ------  -------- ---------- ---------- ---------- ----------  -------
Parse        1      0.00       0.00          0          0          0     0
Execute      1      0.00       0.00          0          0          0     0
Fetch     9001      0.17       0.15       1812      16205          0   134999
------- ------  -------- ---------- ---------- ---------- ----------  -------
total     9003      0.17       0.15       1812      16205          0   134999

1 Ответ

2 голосов
/ 27 октября 2011

В прошлом я писал статью об этом - если вы только начинаете, это может быть полезно для вас:

http://betteratoracle.com/posts/14-sql-trace-and-tkprof

В выводе tkprof столбец DISK показывает, сколько блоков было считано с диска, и эквивалентно ФИЗИЧЕСКИМ ЧТЕНИЯМ в выводе автоматической трассировки.

Столбец QUERY - это количество логических операций ввода-вывода, необходимых для ответа на запрос, который может быть получен из буферного кеша или диска. Это эквивалентно статистике CONSISTENT GETS в autotrace.

Столбец CURRENT указывает количество блоков, полученных в текущем режиме, и обычно требуется для обновлений.

...