У меня есть общий вопрос о том, что я вижу в настройке производительности в Oracle. У меня есть запрос, который я тестирую. Мне слишком сложно и сложно представить простой пример, извините! (Я попытался опустить его, но потерял симптом)Запрос Oracle медленнее во второй раз
Первый раз, когда я запускаю запрос, это 2 секунды. В последующих случаях это 3, 4 или даже 5 секунд. Это происходит последовательно - если я меняю интервал, я снова получаю 2 секунды, затем он возвращается.
Это противоположность тому, что я ожидаю - после первого использования базы данных не нужно разбирать запрос, а блоки должны считываться в буферный кеш. Единственное, о чем я могу думать, это то, что он записывает временные данные где-то, таким образом, что быстрее писать и читать, чем просто читать. Но это, конечно, не имеет смысла.
Кто-нибудь знает, почему это происходит? Или любые красные флаги в плане выполнения, которые могут вызвать что-то подобное?
FYI, это SELECT, с несколькими объединениями, агрегацией и представлениями. Нет внутреннего PL/SQL.
Спасибо
Это противоположно тому, что я ожидаю. Выходит ли вывод плана объяснения от запуска до запуска? – Twelfth
Я не думаю, что вы должны быть [crossposting] (http://dba.stackexchange.com/questions/50594/oracle-query-is-slower-the-second-time) это ... – mustaccio
@mustaccio - Извините , Я думал, что это подходит для форума БД, но потом я увидел, сколько еще вопросов в Stackoverflow совпало с моими тегами и подумал, что мне повезло бы здесь. Кроме того, вы единственный, кто ответил, вы можете получить очки! – orbfish