Как расследовать slow query в PostgreSQL?

SeniorPostgreSQL · Backend·Обновлено 16 июня 2026
Коротко
Нужно собрать query plan, actual timings, statistics, locks, indexes и нагрузочный контекст.

Нужно собрать query plan, actual timings, statistics, locks, indexes и нагрузочный контекст.

Сильный ответ должен раскрыть: EXPLAIN ANALYZE; buffers; pgstatstatements; indexes; lock waits.

Важно не допустить типичные ошибки: сразу добавлять index; не смотреть actual rows; не проверять regression после fix.

Что хочет услышать интервьюер

EXPLAIN ANALYZE

buffers

pg_stat_statements

indexes

lock waits

Пример: PostgreSQL example

EXPLAIN (ANALYZE, BUFFERS) SELECT ...;

Типичные ошибки

сразу добавлять index

не смотреть actual rows

не проверять regression после fix

Лучшие курсы по теме

изображение курса

Docker и Ansible

Антон Ларичев
AI-тренажерыAI-тренажеры
Гарантия
Бонусы
иконка звёздочки рейтинга4.7
3 999 ₽ 6 990 ₽
Подробнее
изображение курса

Node.js с нуля

Антон Ларичев
AI-тренажерыAI-тренажеры
Практика в студииПрактика в студии
Гарантия
Бонусы
иконка звёздочки рейтинга4.8
3 999 ₽ 6 990 ₽
Подробнее
изображение курса

Nest.js с нуля

Антон Ларичев
AI-тренажерыAI-тренажеры
Практика в студииПрактика в студии
Гарантия
Бонусы
иконка звёздочки рейтинга4.6
3 999 ₽ 6 990 ₽
Подробнее