Apache Kafka для инженеров данных

5ти-дневный курс для специалистов, желающих получить и систематизировать знания по использованию Apache Kafka для программирования распределенной обработки потоков событий (Event Stream Processing) на практических примерах с потоковыми данными в реальном времени.

Курс содержит расширенные сведения по написанию программ работы с распределенным журналом Kafka, использованию его в парадигмах Pub/Sub и Message Queue и обработки потоковых данных с соблюдением best practices.

В теоретической части вы узнаете о наиболее важных API, архитектуре Kafka и внутренних принципах работы основных API Apache Kafka (Producer API, Consumer API, Streams API, Connect API), а также об особенностях реализации Apache Kafka и некоторых интересных концепциях, таких как exactly once semantics, компактируемых логах, Kafka DSL и др.

Код курса Даты начала курса Стоимость обучения Длительность обучения Формат обучения
DEVKI
20 января 2025
03 марта 2025
12 мая 2025
72 000 руб. 24 ак.часов
Количество дней: 5
Дистанционный
Регистрация

О продукте:

Producer и Consumer API — базис для работы с Apache Kafka, единственный способ записать информацию в Kafka и считать ее из Kafka. Знакомясь с этими API, вы узнаете, как работают механизмы сериализации и десериализации данных в Apache Kafka.

Streams API — построение потоковых приложений, читающих данные из топиков Kafka, обрабатывающих их в реальном масштабе времени и записывающих результаты обработки обратно в Kafka. Вы познакомитесь с наиболее важными трансформациями Stream DSL, особенностями использования Processor API.

Kafka Connect — платформа масштабируемого и надежного перемещения большого объема потоковых данных между Kafka и другими системами. Kafka Connect предлагает API, Runtime и REST Service, что позволяет разработчикам создавать собственные коннекторы, которые перемещают большие объемы данных в Apache Kafka и из него в режиме реального времени.

На практике вы напишете несколько собственных приложений, включая свой Producer и Consumer, приложение Kafka Streams, коннекторы Source и Sink. Во время прикладной работы вы опробуете все API, о которых шла речь в теоретической части. Благодаря подробным объяснениям и комментариям, вы поймете, как работает этот инструмент, и каким образом использовать предоставляемые Apache Kafka API для решения ваших бизнес-задач, а также сможете выступать как архитектор EDA-решения.

Аудитория:

Практический курс по кафке и интеграции ее с другими системами ориентирован на программистов, разработчиков Big Data и специалистов, которые хотят:

  • изучить базовые методы программного взаимодействия с Kafka (Producer и Consumer API)
  • научиться использовать Kafka Streams API (как низкоуровневое Processor API, так и декларативный Stream DSL);
  • понять методы интеграции Apache Kafka с внешними системами, как самописными, так и проприетарными
  • узнать практические примеры интеграции
  • освоить лучшие практики (best practices) по реализации процессов автоматического обмена данными между Apache Kafka и внешними системами

О курсе:

  • Курс построен так, чтобы за 24 часа получить глубокое понимание и навыки работы с самой популярной платформой потоковой передачи событий, включая ее архитектуру, возможности и ограничения. Для этого придется выполнять задания, решая задачи проектирования и эксплуатации потоковых конвейеров, включая выполнение операций devops.
  • Курс позволит понять, как устроена Apache Kafka и каковые ее возможности для решения различных задач, связанных с потоковой обработкой больших объемов данных. Обучение включает практические задания, которые помогут вам закрепить полученные знания и научиться применять их на практике. Все задания основаны на реальных задачах, которые приходится решать при работе с Кафка. Задания выполняются онлайн, на платформе, предоставленной нашими специалистами devops, дополнительная оплата за экземпляр платформы не требуется.
  • Цена за обучение представлена в российских рублях
  • Занятия проходят онлайн в дистанционном режиме с преподавателем. Практические задания тоже выполняются онлайн

Соотношение теории к практике 50/50

Продолжительность курса: 24 ак.часа, 5 дней по 4.8 ак.часа

Уровень подготовки:

  • Начальный опыт работы в Unix
  • Начальный опыт программирования на Java
  • Опыт работы с Hadoop Distributed File System (желательно)

Программа курса «Apache Kafka для инженеров данных»

1. Основные концепции и архитектура Apache Kafka

    • Архитектура и история возникновения Kafka
    • Основные абстракции и понятия: брокер, Zookeeper, продюсер и потребитель
    • Основные API
    • Изучим основные компоненты и API Kafka, принципы их взаимодействия и killer features

2. Topic, partition и offset в Apache Kafka

    • Понятие топика, раздела и смещения
    • Управление Topic-ами из консоли
    • Отслеживание последнего прочитанного сообщения
    • Семантики доставки сообщений (at least once, at most once, exactly once)

Разберемся в анатомии топика, использовании механизмов партиционирования и consumer групп.

3. Producer API

    • Публикация сообщений с помощью кода

Погрузимся в детальную настройку и использование Kafka Producer-а и best practices на стороне производителя сообщений.

4. Consumer API

    • Прием сообщений point-to-point
    • Kafka Broadcasting и группы. Гибкий процесс приема сообщений.

Научимся принимать сообщения и на практике реализуем минимальное приложение, работающее с Kafka.
Познакомимся с концепцией групп (consumer groups) и научимся настраивать группы для работы с сообщениями в режиме broadcasting.

5. Потоковая обработка в Kafka

    • Архитектура Kafka Streams
    • Потоковая обработка в Apache Kafka. Основные абстракции Kafka Streams

Изучим общие принципы и приемы в процессе работы с Kafka Streams.

6. Kafka Streams DSL

    • Kafka Streams DSL — теория и практика
    • Создание Kafka Streams приложения

Изучим специализированный язык описания (DSL) потоков данных в Kafka и научимся его использовать.
Напишем базовое Kafka Streams приложение.

7. Processor API

    • Использование Processor API

Научимся работать на “низком” уровне – создавать топологии и перенаправлять по ним сообщения, использовать расписание (punctuator). Напишем приложение с использованием Processor API.

8. Kafka Connect

    • Архитектура Kafka Connect
    • Виды Kafka Connector-ов
    • Готовые Connector и Confluent HUB
    • Connect API

Разберемся в том, какие готовые Connector-ы есть для Kafka, создадим собственные Source и Sink коннекторы.

9. Inside Kafka

    • Особенности хранения данных
    • Сериализация и десериализация данных и Confluent Registry
    • Компактируемые топики и retension
    • Конфигурация и производительность процесса работы с данными в Kafka
    • ksqlDB как способ создания не сложных потоковых приложений
    • использование Producer и Consumer API с другими языками программирования

Познакомимся с внутренним устройством топиков, партиций и сегментов. Поймем влияние параметров конфигурации на производительность процесса публикаци и потребления сообщений.
Научимся сериализовать и десериализовать данные с использованием Avro, познакомимся с ksqlDB, его особенностями и применимостью. На примере python API познакомимся с тем, как можно использовать Kafka не из Java.

Скачать программу курса «Apache Kafka для инженеров данных» в формате pdf

Отправить ссылку на e-mail:

Что Вы получите:

Окончив курс «Apache Kafka для инженеров данных» в нашем лицензированном учебном центре «Школа Больших Данных», вы получите удостоверение установленного образца, которое может засчитываться в качестве свидетельства о повышении квалификации.

Кто проводит курс

Королев Михаил
МГУ им. М.В. Ломоносова (Москва, 1992)
Профессиональные компетенции:

Отзывы наших клиентов о курсе

Оставить отзыв

Чтобы записаться на курс DEVKA: Apache Kafka для инженеров данных позвоните нам по телефону +7 (495) 414-11-21 или заполните форму регистрации ниже.

Я даю свое согласие на обработку персональных данных и соглашаюсь с политикой конфиденциальности.
Поиск по сайту