Можете ли вы оценить, сколько времени займет запрос в Oracle? - PullRequest
2 голосов
/ 11 марта 2010

Я очень плохо знаком с Oracle, и мне было интересно, есть ли способ с помощью какого-либо инструмента или программно оценить, сколько времени потребуется для выполнения запроса?

спасибо!

Ответы [ 3 ]

3 голосов
/ 11 марта 2010

EXPLAIN PLAN должен сообщить вам стоимость, но она очень грубая.

3 голосов
/ 11 марта 2010

Лучший способ оценить время выполнения - это создать некоторые тестовые данные, которые напоминают реальные данные, которые вы ожидаете получить, запустить их на этих данных и определить время, которое требуется.

1 голос
/ 11 марта 2010
  1. Да, есть путь теоретически. По крайней мере, в Sybase (и, вероятно, в oriacle) есть такая вещь, как статистика таблиц (используемая оптимизатором для определения наиболее оптимального плана запроса). Вы можете вычислить приблизительное количество данных, которые вернет запрос, и сколько времени это займет.

  2. Однако, это не тривиально (вам в основном нужно дублировать логику оптимизатора и компилятора запросов) и статистика может быть недоступна для внешнего кода.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...