Что такое EXPLAIN?

Middle
1k просмотров
AFK Offer AI

EXPLAIN показывает план выполнения SQL-запроса — как именно PostgreSQL будет искать данные. Незаменимый инструмент для оптимизации.

EXPLAIN ANALYZE SELECT * FROM users WHERE email = 'test@mail.com';

-- Seq Scan on users (cost=0.00..25.00 rows=1 width=100) (actual time=0.5..2.1 rows=1 loops=1) -- Planning Time: 0.1 ms -- Execution Time: 2.2 ms

Если видишь Seq Scan на большой таблице — нужен индекс. Index Scan — хорошо. EXPLAIN ANALYZE реально выполняет запрос и показывает фактическое время. Важные метрики: actual time, rows (estimated vs actual), Seq Scan vs Index Scan. Используй EXPLAIN перед тем как деплоить новый сложный запрос.

Следующий вопрос

Как работает GOMAXPROCS?