Курс на Stepik
Обложка курса «Базы данных для бэкенда: PostgreSQL вглубь и карта хранилищ» на Stepik
4 990₽ -50%
--:--:--
2 495

Базы данных для бэкенда: PostgreSQL вглубь и карта хранилищ 0.000

Открыть на
STEPIK.ORG
Категории курса

Курс для бэкендера на любом языке: SQL и схема с нуля — дальше индексы, планы, MVCC, конкурентная запись, выбор хранилища под задачу. Чтобы самому находить причину медленного запроса и отвечать на секции по базам от понимания.

Показатель Текущие показатели Рост
Значение 🏆 Рейтинг 3 дн 7 дн 30 дн
Количество учеников на курсе «Базы данных для бэкенда: PostgreSQL вглубь и карта хранилищ»Учеников на курсе 1
Сертификаты, выданные на курсе «Базы данных для бэкенда: PostgreSQL вглубь и карта хранилищ»Сертификатов выдано 0
Отзывы о курсе «Базы данных для бэкенда: PostgreSQL вглубь и карта хранилищ»Отзывов получено 0
Рейтинг курса «Базы данных для бэкенда: PostgreSQL вглубь и карта хранилищ»Рейтинг курса 0.000
Уроки в курсе «Базы данных для бэкенда: PostgreSQL вглубь и карта хранилищ»Количество уроков 93
Тесты в курсе «Базы данных для бэкенда: PostgreSQL вглубь и карта хранилищ»Количество квизов 369
Задачи с кодом в курсе «Базы данных для бэкенда: PostgreSQL вглубь и карта хранилищ»Количество задач с кодом 77
Стоимость курса «Базы данных для бэкенда: PostgreSQL вглубь и карта хранилищ»Стоимость курса 4 990 ₽
Обновления курса «Базы данных для бэкенда: PostgreSQL вглубь и карта хранилищ»Обновления курса
Дата публикации курса «Базы данных для бэкенда: PostgreSQL вглубь и карта хранилищ»Дата публикации курса
Последнее обновление курса «Базы данных для бэкенда: PostgreSQL вглубь и карта хранилищ»Последнее обновление
Сложность normal

Чему вы научитесь

  • Читать EXPLAIN (ANALYZE, BUFFERS) и называть причину, по которой запрос по таблице в пять миллионов строк идёт четыре секунды вместо сорока миллисекунд
  • Подбирать индекс под конкретный запрос, объяснять, почему существующий не берётся, и считать его цену на записи
  • Защищать запись от гонок: уникальное ограничение, ограничение исключения, ON CONFLICT, блокировка строки, версия строки, идемпотентный повтор
  • Говорить, что именно видит транзакция на каждом уровне изоляции, и узнавать deadlock — потому что устроил его своими руками
  • Проектировать схему под запросы, которые к ней пойдут: нормальные формы, осознанная денормализация, типы PostgreSQL, jsonb, массивы и диапазоны
  • Писать SQL любой рабочей сложности — от JOIN и агрегатов до оконных функций, рекурсивных CTE и LATERAL
  • Переносить схему на живой базе, не заблокировав сервис: миграция в несколько шагов, двойная запись, переливка партиями, индекс без блокировки
  • Находить и устранять N+1 — по логу запросов, на любом ORM и любом языке
  • Строить поиск по описаниям: полнотекстовый на tsvector и семантический на pgvector — и называть границы обоих
  • Выносить файлы сервиса в объектное хранилище: спроектировать ключи и доступ, отдавать по временным ссылкам, держать базу согласованной с бакетом
  • Применять Redis по назначению: структура данных под задачу, TTL и вытеснение, инвалидация — и запрет делать кэш источником истины
  • Выбирать хранилище с числами в руках и выдерживать встречные вопросы — на ревью и на собеседовании

О курсе

Курс для бэкендера на любом языке: SQL и схема с нуля — дальше индексы, планы, MVCC, конкурентная запись, выбор хранилища под задачу. Чтобы самому находить причину медленного запроса и отвечать на секции по базам от понимания.

Для кого этот курс

Курс для тех, кто уверенно пишет код, но данные до сих пор трогал через ORM и готовые запросы: что-то слышал про индексы и транзакции, системного знания нет. 1. Бэкенд-разработчики на любом языке — Go, Java, TS, PHP, C#, Python. Язык приложения здесь не имеет значения: предмет курса общий для всех. 2. Те, кто готовится к собеседованию на грейд выше и знает за собой, что секция по базам — самая слабая. 3. Разработчики, у которых пет-проект перерос игрушку: данных стало миллионы, список грузится секундами, и «добавить индекс» больше не помогает. 4. Те, кто прошёл вводный курс по backend и упёрся в данные: сервис написан, а что происходит внутри базы — по-прежнему непонятно. 5. Аналитики, дата-инженеры и QA-автоматизаторы, которым SQL нужен глубже уровня «выбрать строки», а устройство базы — чтобы понимать, почему запрос идёт долго. Кому не сюда: 1. если ты уже читаешь планы запросов, настраиваешь autovacuum и сам решаешь, какой индекс здесь нужен, — курс будет повторением. 2. Если нужна эксплуатация СУБД (репликация, бэкапы, PITR, мониторинг, тюнинг пулов) — этого здесь нет сознательно. 3. Если нужен курс по конкретному ORM или по своему фреймворку — тоже не сюда: курс языконезависим.

Начальные требования

Что нужно знать

  • Программировать на каком-либо языке: функции, типы, коллекции, циклы, условия. Какой именно — неважно.
  • Работать в терминале на базовом уровне: запустить команду, прочитать вывод.

Что нужно на машине

  • Docker Desktop или Docker Engine с плагином compose — ставится по ходу курса, перед первым стендом.
  • Памяти виртуальной машине Docker — около 4 ГБ. Полный стенд к концу курса занимает меньше половины, и в шагах сказано, что останавливать, если памяти меньше.

Преподаватели курса

Как проходит обучение

Формат. Курс полностью текстовый: 17 модулей, 93 урока, 1159 шагов. Видео нет — есть текст, запросы, вывод команд, планы и разбор ошибок.

Проверка знаний. 446 шагов из 1159 — проверяемое задание: 77 SQL-задач и 369 вопросов с выбором, сопоставлением и порядком.

SQL решается прямо на платформе. Пишешь запрос, движок Stepik исполняет его на настоящих данных, ты сразу видишь результат — ставить для этого ничего не нужно. Одна честная деталь: тренажёр Stepik построен на MySQL 8, а курс про PostgreSQL. Поэтому задачи написаны в пересечении диалектов, и там, где диалекты расходятся, курс говорит об этом в том же шаге, где конструкция появляется. Переносимый SQL — рабочий навык, а не компромисс.

Квизы-диагностики. Дан план запроса, лог блокировок, схема или метрика — назови причину, а не определение. Каждый неверный вариант — типичная ошибка, и к нему написан разбор, почему так рассуждать не выходит.

Стенд на твоей машине — и это главное про формат. 192 шага-инструкции: сгенерировать пять миллионов строк, снять EXPLAIN, устроить deadlock, посмотреть вытеснение в Redis, переехать со схемой на живой базе. Автопроверить это платформа не может — серверов баз данных в её песочнице нет, и симулировать их на Python было бы нечестной формой. Поэтому вместо автопроверки: точные команды, дословно приведённый ожидаемый вывод, 61 блок «Проверь себя» и квизы на результат наблюдения.

Проектные шаги. Начиная с четвёртого модуля каждый заканчивается собственным проектом — 15 за курс, по условию и чек-листу «готово, когда»: что денормализовать, какие индексы нужны сервису, как защитить запись, как переехать со схемой незаметно, какое хранилище выбрать и чем за это платить.

Капстоун. Финал — спроектировать хранение под незнакомый сервис и защитить решение: разбор по ролям, индексы с обоснованием, план роста на десятикратном объёме и трёхминутная защита. Три варианта на выбор, включая «своё решение по своему проекту».

Сообщество. Проходить курс в одиночку не обязательно — у него есть «Гильдия вайба»: помощь, когда застрял, разбор чужих и своих решений по хранению, план, в котором оценка не сходится с фактом, поиск тиммейтов и вопросы с собеседований, на которые не нашлось ответа. Чем активнее участвуешь — тем больше берёшь от курса

Что вы получите

  • Локальный стенд на Docker Compose, собранный по ходу курса: PostgreSQL 18 и pgvector, MinIO, Redis, MongoDB, Elasticsearch, ClickHouse, DuckDB — вместе с данными, запросами и экспериментами он остаётся у тебя
  • Капстоун: решение по хранению для сервиса, разложенное по ролям, с числами, планом роста и защитой на три минуты — файл, который читается без тебя
  • Пройденный руками стек из вакансий: SQL и PostgreSQL, индексы и планы, транзакции и блокировки, объектное хранилище, Redis, MongoDB, Elasticsearch, ClickHouse
  • Ответы на вопросы секции по данным — от механизма, а не от заученной формулировки: в 27 шагах отдельно разобрано, почему эту тему спрашивают и что на самом деле засчитывают
  • 446 проверяемых заданий и 15 проектных шагов с чек-листами самопроверки
  • Умение объяснить своё решение по данным: что оптимизируем, чем платим и каким требованием это оправдано
  • Сертификат Stepik по итогам курса
  • Доступ к сообществу «Гильдия вайба» в Telegram и Discord

Нагрузка

10-15 часов в неделю

Расскажите о курсе друзьям