Чему вы научитесь
- Понимать разницу между пакетной и потоковой обработкой данных
- Понимать, как изменения в базе данных превращаются в поток событий
- Создавать локальное учебное окружение с помощью Docker Compose
- Настраивать передачу изменений из PostgreSQL в Kafka с помощью Flink CDC
- Работать с топиками, ключами сообщений и группами потребителей Kafka
- Передавать поток данных из Kafka в ClickHouse
- Проверять обработку добавления, изменения и удаления записей
- Находить причины отставания и восстанавливать конвейер после остановки
- Самостоятельно собирать проект PostgreSQL → Flink CDC → Kafka → ClickHouse
О курсе
Потоковая обработка данных часто кажется сложной темой. Kafka, Flink, CDC, журнал WAL, смещения и контрольные точки выглядят как большой набор технологий, которые нужно изучать по отдельности.
В этом курсе мы разберём их на одном понятном практическом проекте. Вы последовательно соберёте работающий конвейер:
PostgreSQL → Flink CDC → Kafka → ClickHouse
Начнём с основных понятий, подготовим окружение в Docker, настроим передачу изменений и проверим весь путь данных. Предварительно изучать Kafka, Flink CDC, PostgreSQL или ClickHouse не требуется.
Что вы создадите
В ходе курса вы соберёте систему, в которой изменения из PostgreSQL автоматически передаются через Flink CDC в Kafka, а затем загружаются в ClickHouse.
Вы добавите новую запись, измените её и удалите. После каждой операции сможете проследить, как событие проходит через все компоненты и появляется в итоговой аналитической таблице.
Итоговый проект будет работать не только при обычной обработке данных. Вы также проверите его поведение при остановке компонентов, накоплении событий и последующем восстановлении.
Для кого этот курс
- Для начинающих инженеров данных.
- Для действующих инженеров данных, которые хотят разобраться с потоковой обработкой и CDC.
- Для инженеров-аналитиков и разработчиков хранилищ данных.
- Для специалистов DataOps и DevOps, работающих с платформами данных.
- Для разработчиков, которым нужно передавать изменения из операционной базы в аналитическую систему.
Что потребуется для старта
Для прохождения курса достаточно базового знакомства с SQL, Docker и командной строкой. Все необходимые действия будут разобраны последовательно.
Java и Scala не требуются. Мы не будем писать Flink-приложения и углубляться в DataStream API. Основная работа выполняется с помощью Docker, SQL, готовых конфигураций и командной строки.
Как построено обучение
Курс состоит из семи модулей и развивается от основных понятий к самостоятельной сборке итогового проекта.
- Потоковые данные и CDC. Разберём отличие потоковой обработки от пакетной и поймём, как работает захват изменений данных.
- Основы Apache Kafka. Познакомимся с брокерами, топиками, партициями, ключами сообщений, смещениями и группами потребителей.
- Знакомство с Flink CDC. Рассмотрим устройство задания Flink, работу PostgreSQL WAL, первоначальный снимок и чтение последующих изменений.
- Передача изменений из PostgreSQL в Kafka. Настроим логическую репликацию и обработку операций INSERT, UPDATE и DELETE.
- Преобразование и загрузка в ClickHouse. Разберём структуру CDC-событий, выполним преобразование данных и загрузим их в итоговую таблицу.
- Надёжность потокового конвейера. Изучим контрольные точки, дубликаты, порядок событий, отставание потребителей, рост WAL и восстановление после остановки.
- Итоговый проект. Самостоятельно соберём конвейер и проведём его полную проверку.
Особенности курса
- Один сквозной проект на протяжении всего курса.
- Практическая работа с реальными конфигурациями и командами.
- Постепенное объяснение сложных понятий простым языком.
- Разбор распространённых ошибок и способов диагностики.
- Проверка работы конвейера после остановок и повторных запусков.
- Без разработки на Java и Scala.
- Без Kubernetes и сложного администрирования Kafka.
Что вы получите в результате
После прохождения курса у вас останется готовый локальный проект, который можно повторно запускать, изменять и использовать как основу для собственных экспериментов.
Главный результат курса заключается не только в работающих контейнерах. Вы будете понимать, как данные проходят через конвейер, где хранится прогресс обработки, почему могут появляться дубликаты, из-за чего растёт WAL и как восстановить систему после сбоя.
Это практическая база для дальнейшей работы с потоковыми платформами, системами CDC и современными конвейерами данных.
Для кого этот курс
Начальные требования
Для прохождения курса достаточно базовой подготовки:
-
понимание простых SQL-запросов: SELECT, INSERT, UPDATE и DELETE;
-
начальный опыт работы с Docker и Docker Compose;
-
умение выполнять команды в терминале;
-
компьютер с возможностью запускать несколько Docker-контейнеров;
-
желание разбираться в движении данных между системами.
Предварительное знание Apache Kafka, Apache Flink, Flink CDC, PostgreSQL и ClickHouse не требуется. Все компоненты и необходимые настройки будут разобраны по ходу курса.
Java и Scala также не потребуются. Основная работа выполняется через Docker, SQL, командную строку и готовые конфигурационные файлы.
Наши преподаватели
Как проходит обучение
Курс состоит из последовательных текстовых уроков с наглядными схемами, практическими примерами, командами и готовыми конфигурациями.
Все практические задания продолжают единый проект:
PostgreSQL → Flink CDC → Kafka → ClickHouse
В каждом модуле вы сначала знакомитесь с основными понятиями, затем применяете их на практике. Вы будете запускать компоненты в Docker, выполнять SQL-запросы, изменять конфигурации и наблюдать за движением событий между системами.
После уроков предусмотрены проверочные вопросы, которые помогут закрепить материал и проверить понимание ключевых принципов.
В практических заданиях вы будете:
-
подготавливать окружение;
-
настраивать PostgreSQL и логическую репликацию;
-
работать с топиками и сообщениями Kafka;
-
создавать конвейер Flink CDC;
-
подключать ClickHouse к потоку событий;
-
проверять обработку INSERT, UPDATE и DELETE;
-
моделировать остановки компонентов и восстановление конвейера.
В финальном модуле вы самостоятельно соберёте весь проект, проверите обработку изменений и проведёте итоговую приёмку.
Курс можно проходить в удобном темпе. Все необходимые команды и примеры приведены непосредственно в уроках.
Программа курса
Сертификат
Что вы получаете
- Собранный вами потоковый конвейер PostgreSQL → Flink CDC → Kafka → ClickHouse
- Практический опыт настройки захвата изменений данных и логической репликации PostgreSQL
- Навыки работы с топиками, партициями, ключами сообщений и группами потребителей Kafka
- Понимание первоначального снимка, журнала WAL, смещений и контрольных точек
- Опыт передачи и обработки операций INSERT, UPDATE и DELETE
- Навыки поиска причин отставания, появления дубликатов и роста WAL
- Практику остановки, перезапуска и восстановления компонентов конвейера
- Итоговый проект, который можно развивать дальше и использовать в учебном портфолио