Посмотрите план выполнения через EXPLAIN, а для фактических показателей — EXPLAIN ANALYZE или аналог вашей СУБД. План показывает способы чтения, соединений, фильтрации и агрегации.
Как понять, какие индексы используются и как проходит запрос?
Посмотрите план выполнения через EXPLAIN, а для фактических показателей — EXPLAIN ANALYZE или аналог вашей СУБД. План показывает способы чтения, соединений, фильтрации и агрегации.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Посмотрите план выполнения через EXPLAIN, а для фактических показателей — EXPLAIN ANALYZE или аналог вашей СУБД. План показывает способы чтения, соединений, фильтрации и агрегации.
В PostgreSQL полезен EXPLAIN (ANALYZE, BUFFERS) SELECT ...: сравнивают ожидаемое и реальное число строк, время узлов, loops, чтения и временные файлы. Index Scan, Bitmap Scan и Seq Scan отражают разные стратегии; полное сканирование не всегда ошибка.
ANALYZE действительно исполняет запрос. Для изменяющих данных запросов это опасно без контролируемой среды. Вывод проверяют на репрезентативных параметрах: наличие индекса не гарантирует, что он выгоден оптимизатору.