Научитесь читать план выполнения EXPLAIN ANALYZE и понимать, почему PostgreSQL выбирает Seq Scan вместо Index Scan. Освоите все типы индексов: B-tree, Hash, GIN, BRIN, partial и covering (INCLUDE). Узнаете антипаттерны, которые «ломают» индекс: функция на колонке, implicit cast, NOT IN с NULL. Поймёте, как работают VACUUM и ANALYZE, и как следить за состоянием базы через pg_stat_user_tables и pg_stat_user_indexes. 52 практических урока на датасете e-commerce.
EXPLAIN показывает, как PostgreSQL решает выполнить запрос. Seq Scan, Index Scan, Hash Join — понять план значит понять узкие места. Научитесь читать стоимость, строки и буферы.
Ещё не начат
B-tree — универсальный индекс для равенства и диапазонов. Составные индексы и порядок колонок. Hash — только для равенства. GIN — для массивов и JSONB. Частичные индексы — индексируем только нужные строки.
Ещё не начат
Антипаттерны, которые заставляют PostgreSQL игнорировать индексы. Функции в WHERE, implicit cast, OR вместо IN. Оптимизация JOIN, пагинации и N+1 запросов.
Ещё не начат
VACUUM и ANALYZE: почему таблицы раздуваются и как PostgreSQL актуализирует статистику. Представления pg_stat_user_tables и pg_stat_user_indexes. Итоговый проект — полный цикл оптимизации e-commerce запросов.
Ещё не начат
Все уроки, практические задания и проверка запросов — навсегда.