В этом курсе вы освоите базовые знания, необходимые для уверенного старта работы с Apache Kafka. Вы научитесь настраивать очередь сообщений, писать продюсеров и консюмеров, а также поймёте, как Kafka вписывается в архитектуру платформ обработки данных и событий.
После прохождения этого курса вы с лёгкостью сможете работать с Kafka и понимать работу аналогичных облачных инструментов.
1. Основы Kafka и очередей сообщений
Вы разберётесь, что такое Kafka, как она используется в системах обработки потоков и событий. Узнаете, как устроены ключевые компоненты Kafka: топики, сообщения, группы потребителей, и как они взаимодействуют друг с другом. Также вы узнаете, как работает очередь сообщений, как данные в неё записываются и читаются, и почему важны порядок сообщений и гарантии доставки.
2. Архитектура Apache Kafka
Мы углубимся в ключевые элементы архитектуры Kafka. Вы узнаете, что такое партиции топиков, как они связаны с брокерами, и как происходит обработка данных внутри Kafka. Я объясню, что такое Zookeeper, какую роль он играет и как он взаимодействует с брокерами Kafka и метаданными.
3. Подготовка среды разработки
Вы научитесь запускать Kafka в среде Windows с использованием Docker. Я пошагово покажу, как настроить Bitnami Kafka Docker-контейнер, и дам практические советы для успешной установки и запуска среды.
4. Практика работы с Kafka
Вы настроите собственный топик Kafka, освоите базовые команды для работы с ним. Также вы создадите продюсера для записи сообщений и консюмера для их чтения. Мы протестируем их работу с помощью Python и научимся управлять смещениями консюмеров с использованием offset checker'а.
5. Kafka в платформе обработки данных
В заключении мы разберём, как Kafka может быть интегрирована в платформу Data Science. Вы увидите три практических сценария использования Kafka:
- ETL-инжест пайплайн
- Несколько процессов-потребителей
- Многоступенчатая потоковая обработка
Эти примеры помогут вам начать внедрять Kafka в повседневную работу уже сегодня.