Чему вы научитесь
- Проектировать таблицы MergeTree: выбирать типы, ключ сортировки, партиции и TTL под реальные запросы
- Организовывать загрузку данных: пакеты, асинхронная вставка, Kafka, файлы Parquet, дедупликация при повторах
- Писать аналитические запросы с агрегатами, окнами, массивами и приближёнными функциями, не перерасходуя память
- Использовать JOIN, словари и денормализацию там, где каждый из них уместен
- Строить витрины на материализованных представлениях и проекциях и выполнять backfill без двойного учёта
- Ускорять поиск индексами пропуска и текстовым индексом и проверять эффект по плану и журналу запросов
- Диагностировать медленные запросы через EXPLAIN, system.querylog и системные таблицы
- Разворачивать кластер с репликацией и шардированием и выносить холодные данные в S3-совместимое хранилище
- Настраивать доступ, квоты и резервные копии и разбирать типовые аварии: «too many parts», нехватка памяти, застрявшие мутации
О курсе
Для кого этот курс
Начальные требования
- Уверенный SQL: JOIN, GROUP BY, подзапросы, оконные функции хотя бы на уровне знакомства.
- Опыт работы с реляционной базой данных в backend-проекте.
- Компьютер с Docker и Docker Compose, 8 ГБ оперативной памяти и 20 ГБ свободного места: весь курс выполняется на локальном стенде.
- Умение работать в терминале. Python нужен только для необязательного симулятора событий.
Преподаватели курса
Формат курса
Курс текстовый, без видео: 130 уроков объёмом 10–13 тысяч знаков каждый, с примерами SQL, таблицами сравнений и разбором ошибок. Уроки читаются последовательно и выполняются на локальном стенде проекта Pulse, который поднимается одной командой из репозитория курса.
Каждая глава заканчивается практическим уроком, где решения главы ложатся в проект: DDL, запросы, конфигурация, скрипты. В главах 3–16 после практики — 5–7 тестовых задач с одним правильным ответом и объяснением после неправильного. Дедлайнов нет, темп вы выбираете сами; ориентир — одна глава в неделю при 5–7 часах занятий. Вопросы по урокам задаются в комментариях к шагам.
Что вы получите
- 130 текстовых уроков с SQL, который выполняется на локальном стенде
- Сквозной проект Pulse: Docker Compose, DDL, генераторы данных, витрины, проекции, запросы дашборда, скрипты проверок и резервного копирования
- 98 тестовых задач с объяснениями к главам 3–16
- Чек-листы и руководства: проектирование типов, здоровая загрузка, retention, production checklist, разбор инцидентов
- Финальный проект с критериями оценки и разбором решения