Главная » Курсы » Курсы Apache Kafka » DEVKI: Apache Kafka для инженеров данных
Все курсы
Apache Kafka для инженеров данных
Даты начала курса | 10 января 2024 13 марта 2024 |
|
Стоимость обучения | 66 000 руб. | Регистрация |
Длительность обучения | 24 ак.часов | |
Код курса | DEVKI |
3х-дневный курс для специалистов, желающих получить и систематизировать знания по использованию 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 и др.
Вы освоите следующие компоненты платформы Apache Kafka
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 для решения ваших бизнес-задач.
Кому нужны курсы по разработке Apache Kafka
Практические курсы по разработке Кафка и интеграции ее с другими системами ориентированы на программистов, разработчиков Big Data и специалистов, которые хотят:
- изучить базовые методы программного взаимодействия с Kafka (Producer и Consumer API)
- научиться использовать Kafka Streams API (как низкоуровневое Processor API, так и декларативный Stream DSL);
- понять методы интеграции Apache Kafka с внешними системами, как самописными, так и проприетарными;
- узнать практические примеры интеграции;
- освоить лучшие практики (best practices) по реализации процессов автоматического обмена данными между Apache Kafka и внешними системами.
Соотношение теории к практике 50/50
Предварительная подготовка
- Начальный опыт работы в Unix
- Начальный опыт программирования на Java
- Опыт работы с Hadoop Distributed File System (желательно).
Программа курса "Apache Kafka для инженеров данных"
- Архитектура и история возникновения Kafka
- Основные абстракции и понятия
- Основные API
- Изучим основные компоненты и API Kafka, принципы их взаимодействия и killer features.
- Понятие топика, раздела и смещения
- Управление Topic-ами из консоли
- Отслеживание последнего прочитанного сообщения
- Семантики доставки сообщений (at least once, at most once, exactly once)
Разберемся в анатомии топика, использовании механизмов партиционирования и consumer групп.
- Публикация сообщений с помощью кода
Погрузимся в детальную настройку и использование Kafka Producer-а и best practices на стороне производителя сообщений.
- Прием сообщений point-to-point
- Kafka Broadcasting и группы. Гибкий процесс приема сообщений.
Научимся принимать сообщения и на практике реализуем минимальное приложение, работающее с Kafka.
Познакомимся с концепцией групп (consumer groups) и научимся настраивать группы для работы с сообщениями в режиме broadcasting.
- Архитектура Kafka Streams
- Потоковая обработка в Apache Kafka. Основные абстракции Kafka Streams
Изучим общие принципы и приемы в процессе работы с Kafka Streams.
- Kafka Streams DSL — теория и практика
- Создание Kafka Streams приложения
Изучим специализированный язык описания (DSL) потоков данных в Kafka и научимся его использовать.
Напишем базовое Kafka Streams приложение.
- Использование Processor API
Научимся работать на “низком” уровне – создавать топологии и перенаправлять по ним сообщения, использовать расписание (punctuator).
Напишем приложение с использованием Processor API.
- Архитектура Kafka Connect
- Виды Kafka Connector-ов
- Готовые Connector и Confluent HUB
- Connect API
Разберемся в том, какие готовые Connector-ы есть для Kafka, создадим собственные Source и Sink коннекторы.
- Особенности хранения данных
- Сериализация и десериализация данных и Confluent Registry
- Компактируемые топики и retension
- Конфигурация и производительность процесса работы с данными в Kafka
- ksqlDB как способ создания не сложных потоковых приложений
- использование Producer и Consumer API с другими языками программирования
Познакомимся с внутренним устройством топиков, партиций и сегментов. Поймем влияние параметров конфигурации на производительность процесса публикаци и потребления сообщений.
Научимся сериализовать и десериализовать данные с использованием Avro, познакомимся с ksqlDB, его особенностями и применимостью. На примере python API познакомимся с тем, как можно использовать Kafka не из Java.
Программа курса «DEVKI: Apache Kafka для инженеров данных»
Отправить ссылку на e-mail: