Курс на Stepik
Обложка курса «PostgreSQL для бэкенда: с нуля до production — индексы, EXPLAIN» на Stepik
990 ₽

PostgreSQL для бэкенда: с нуля до production — индексы, EXPLAIN ★ 0.000

Открыть на
STEPIK.ORG

PostgreSQL для бэкенд-разработчика: с нуля до production. 250 задач с автопроверкой прямо в браузере — пишешь SQL, вердикт и разбор сразу, без «посмотреть решение». Индексы и селективность, чтение планов EXPLAIN, ускорение медленных запросов, транзакции и MVCC, блокировки, vacuum и bloat, партиции, пулы, JSONB и полнотекст, 20 вопросов middle-собеса с разбором. 10 модулей, 59 уроков, 3–5 часов в неделю.

Показатель Текущие показатели Рост
Значение 🏆 Рейтинг 3 дн 7 дн 30 дн
Количество учеников на курсе «PostgreSQL для бэкенда: с нуля до production — индексы, EXPLAIN»Учеников на курсе 7
Сертификаты, выданные на курсе «PostgreSQL для бэкенда: с нуля до production — индексы, EXPLAIN»Сертификатов выдано 0
Отзывы о курсе «PostgreSQL для бэкенда: с нуля до production — индексы, EXPLAIN»Отзывов получено 0
Рейтинг курса «PostgreSQL для бэкенда: с нуля до production — индексы, EXPLAIN»Рейтинг курса 0.000
Уроки в курсе «PostgreSQL для бэкенда: с нуля до production — индексы, EXPLAIN»Количество уроков 59
Тесты в курсе «PostgreSQL для бэкенда: с нуля до production — индексы, EXPLAIN»Количество квизов 55
Задачи с кодом в курсе «PostgreSQL для бэкенда: с нуля до production — индексы, EXPLAIN»Количество задач с кодом 250
Стоимость курса «PostgreSQL для бэкенда: с нуля до production — индексы, EXPLAIN»Стоимость курса 990 ₽ —
Обновления курса «PostgreSQL для бэкенда: с нуля до production — индексы, EXPLAIN»Обновления курса — —
Дата публикации курса «PostgreSQL для бэкенда: с нуля до production — индексы, EXPLAIN»Дата публикации курса — ———
Последнее обновление курса «PostgreSQL для бэкенда: с нуля до production — индексы, EXPLAIN»Последнее обновление — ———
Сложность normal — ———

Содержание курса

Разделы в курсе «PostgreSQL для бэкенда: с нуля до production — индексы, EXPLAIN» 10 разделов Уроки в курсе «PostgreSQL для бэкенда: с нуля до production — индексы, EXPLAIN» 59 уроков Тесты в курсе «PostgreSQL для бэкенда: с нуля до production — индексы, EXPLAIN» 55 тестов Задачи в курсе «PostgreSQL для бэкенда: с нуля до production — индексы, EXPLAIN» 250 задач Последнее обновление курса «PostgreSQL для бэкенда: с нуля до production — индексы, EXPLAIN» обн. 7 октября 2026

🧰 Среда: песочница, psql, первый EXPLAIN

5 уроков
1. Как устроена песочница и как читать вывод запроса ↗
2. NULL, DISTINCT и три ловушки проверки ↗
3. Локальный PostgreSQL, psql и DBeaver ↗
4. Первый EXPLAIN: читаем, а не гадаем ↗
5. Самопроверка: данные, NULL и чтение вывода ↗

🏗 Данные для бэкенда: ER, типы, ограничения, миграции

6 уроков
1. Схема — это набор фактов, а не набор таблиц ↗
2. Типы: база хранит не то, что ты набрал ↗
3. Ограничения: что база не пропустит ↗
4. Грязные данные: чистим и проверяем ↗
5. Ключи: natural, surrogate и что выбрать ↗
6. Миграции: как менять живую схему ↗

🔗 Запросы как в проде: JOIN, CTE, оконные функции

7 уроков
1. LEFT JOIN: где теряются нули и зачем ON вместо WHERE ↗
2. Self-join и задача о делении ↗
3. Агрегаты: счётчики, суммы и ловушка «умноженной суммы» ↗
4. HAVING, WHERE и «агрегат в фильтре» ↗
5. CTE: читаемость, рекурсия и «агрегируй до JOIN» ↗
6. Оконные функции: top-N на группу, rank и lag ↗
7. Самопроверка: боёвые запросы на shop ↗

🗂 Индексы: B-tree, GIN/GiST, частичные; когда индекс вредит

6 уроков
1. Селективность: когда индекс вообще кому-то нужен ↗
2. B-tree: как индекс читают и почему порядок важен ↗
3. Составные индексы: порядок колонок решает всё ↗
4. Не только B-tree: hash, GIN, GiST, trigram, частичные ↗
5. Цена индекса: запись, размер, дубли и обслуживание ↗
6. Самопроверка модуля: индексы в цифрах ↗

🔍 EXPLAIN ANALYZE: читаем планы, сканы, сортировки и хэши

7 уроков
1. Как устроен план: что смотрят в первых трёх строках ↗
2. Оценка против факта: rows, статистика и «planner ошибается» ↗
3. Scan'ы и сортировка: Seq, Index, Index Only, Bitmap, Sort ↗
4. Стратегии джойнов: Nested Loop, Hash, Merge ↗
5. CTE, подзапросы и план: когда «WITH» меняет всё ↗
6. Три ошибки, из-за которых план не сходится с реальностью ↗
7. Самопроверка модуля: план и цифры ↗

🐌 Медленные запросы: 10 production-кейсов, как чинить

6 уроков
1. Кейс 1–2: N+1 и отчёт, который считает три раза ↗
2. Кейс 3–4: сортировка и пагинация без OFFSET-беды ↗
3. Кейс 5–6: поиск по подстроке и огромные IN-списки ↗
4. Кейс 7–8: не-SARGable условия и неявное приведение типов ↗
5. Кейс 9–10: UPDATE пачками и «агрегат на всю таблицу» ↗
6. Самопроверка: диагностика по цифрам ↗

🔒 Транзакции и конкурентность: MVCC, изоляция, блокировки

6 уроков
1. Транзакция = граница атомарности, и где она рвётся ↗
2. MVCC: старые версии, snapshot'ы и «почему вакуум — не мусор» ↗
3. Уровни изоляции: что и когда видно ↗
4. Блокировки и дедлоки: кто кого и как это читать ↗
5. Savepoints, очереди и «как откатить часть» ↗
6. Самопроверка: что сломается при конкурентной записи ↗

🏭 Продакшн: партиции, bloat, пулы, реплика, JSONB, FTS

7 уроков
1. Партиции: режем таблицу по датам и не промахиваемся мимо ↗
2. JSONB и гибрид: когда колонка «документ» оправдана ↗
3. Полнотекст: tsvector, словари и релевантность ↗
4. Bloat и vacuum: что раздувается и почему ↗
5. Пулы соединений и PgBouncer: почему «бада нет, а ждёт» ↗
6. Репликация: лаг, «свои» данные и переключение ↗
7. Самопроверка: production-состояние базы в цифрах ↗

🛠 Мини-проект: медленный API → быстрый (замеры, правки, защита)

4 урока
1. Урок 1. Постановка: что именно мы «ускоряем» ↗
2. Урок 2. Правки, которые проверяются числом ↗
3. Урок 3. Защита от регресса: цифры, которые нельзя сломать ↗
4. Урок 4. Защита проекта: что ты говоришь на review ↗

🎯 Собеседование: 20 вопросов middle по БД с разбором

5 уроков
1. Вопросы 1–4: джойны, NULL, «а что вернётся» ↗
2. Вопросы 5–8: индексы, порядок колонок, селективность ↗
3. Вопросы 9–12: MVCC, изоляция, блокировки, потери обновлений ↗
4. Вопросы 13–16: план, оценки, где искать «тормоза» ↗
5. Вопросы 17–20: продакшн — пулы, реплика, партиции, миграции ↗