Сравните оценки и фактические строки, время и loops узлов, затем изучите чтение буферов, сортировки на диске и типы соединений.
Вызвал EXPLAIN ANALYZE — куда смотреть, чтобы понять почему запрос медленно работает?
Сравните оценки и фактические строки, время и loops узлов, затем изучите чтение буферов, сортировки на диске и типы соединений.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Сравните оценки и фактические строки, время и loops узлов, затем изучите чтение буферов, сортировки на диске и типы соединений.
EXPLAIN (ANALYZE, BUFFERS) помогает отличить дорогую обработку от большого чтения. Время и число строк узла при loops > 1 показываются в расчёте на выполнение; учитывайте повторения и не суммируйте вложенные времена бездумно. Сильная ошибка estimates указывает на статистику или зависимости данных. EXPLAIN ANALYZE действительно выполняет запрос, включая изменения данных, поэтому не запускайте его для опасной операции без подходящего окружения.
Источник: www.postgresql.org.