Если оценка EXPLAIN кардинально отличается от EXPLAIN ANALYZE — что это значит?

В PostgreSQL команда EXPLAIN показывает план выполнения SQL-запроса, то есть как СУБД собирается его выполнить, без фактического запуска запроса.

Короткий ответ

Что ответить на собеседовании

В PostgreSQL команда EXPLAIN показывает план выполнения SQL-запроса, то есть как СУБД собирается его выполнить, без фактического запуска запроса. Она выводит информацию о последовательности операций, использовании индексов, оценке стоимости и количестве строк.

Подробный разбор

Ответ с пояснениями

В PostgreSQL команда EXPLAIN показывает план выполнения SQL-запроса, то есть как СУБД собирается его выполнить, без фактического запуска запроса. Она выводит информацию о последовательности операций, использовании индексов, оценке стоимости и количестве строк.

EXPLAIN ANALYZE не только показывает план, но и выполняет запрос, собирая реальные статистические данные о времени выполнения каждой операции и количестве обработанных строк. Это позволяет сравнить план с реальным поведением и выявить узкие места.

Пример:

EXPLAIN SELECT * FROM users WHERE id = 10;
EXPLAIN ANALYZE SELECT * FROM users WHERE id = 10;

Первый покажет предполагаемый план, второй — план с реальными метриками выполнения.

Практика в реальном времени

Подготовьтесь к следующему собеседованию

Interview Boost учитывает вакансию, резюме и технологии и помогает сформулировать ответ прямо во время интервью.

Начать подготовку