Обычно при улучшении моих запросов я вижу совпадающее улучшение как с cost
, так и с actual time
при выполнении explain analyze
как до, так и после запросов.
Однако в одном случае запрос до сообщает
"Hash Join (cost=134.06..1333.57 rows=231 width=70)
(actual time=115.349..115.650 rows=231 loops=1)"
<cut...>
"Planning time: 4.060 ms"
"Execution time: 115.787 ms"
и отчеты после
"Hash Join (cost=4.63..1202.61 rows=77 width=70)
(actual time=0.249..0.481 rows=231 loops=1)"
<cut...>
"Planning time: 2.079 ms"
"Execution time: 0.556 ms"
Итак, как вы можете видеть, затраты одинаковы, но фактическое и реальное время выполнения сильно различаются, независимо от порядка, в котором я запускаю тесты.
Использование Постгреса 8.4.
Может ли кто-нибудь прояснить мое понимание того, почему стоимость не показывает улучшения?
cost
выглядит не так уж по-другому, но время выполнения сильно отличается. - person Scary Wombat   schedule 28.10.2019