Kafka Streams для разработчиков

Kafka Streams для разработчиков

Обновление курсов для разработчиков по Apache Kafka!

Чтобы сэкономить ваше время и силы, с 1-го января 2021 года мы запускаем новый 4-х дневный курс «DEVKI: Apache Kafka для разработчиков«, в котором собрано все лучшее из курсов «DEVKA1:Kafka Streams для разработчиков» и «DEVKA2: Kafka интеграция для разработчиков«. Освойте все возможности самой популярной платформы для потоковой обработки в области Big Data: APIs, библиотеку Streams и Kafka Connect для эффективной работы с большими данными в реальном времени!

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

Что такое Kafka Streams и где это используется

Apache Kafka Streams – это клиентская библиотека для разработки распределенных приложений и микросервисов потоковой обработки событий в реальном времени, когда входные и выходные данные хранятся в кластерах Кафка. Она позволяет быстро и просто писать код Java/Scala на стороне клиента, при этом разворачивать и использовать распределенное приложение на сервере Kafka в соответствии с DevOps-подходом. На практике Apache Kafka Streams используется для следующих прикладных задач:
  • разработка распределенных приложений с возможностью их последующего масштабирования;
  • доступ к состоянию приложения без использования баз данных, кэшей и прочих хранилищ;
  • взаимодействие с клиентами в режиме реального времени, например, оперативное оповещение о наступлении событий или построение аналитических прогнозов с минимальной задержкой;
  • реализация потоковых микросервисов с разделяемым состоянием, например, для обеспечения отказоустойчивости.
Все эти и другие прикладные кейсы разбираются в программе нашего практического курса по Kafka Streams.

Для кого предназначен курс по Kafka Streams

Практические курсы Apache Kafka Streams ориентированы на специалистов и разработчиков Big Data систем и IoT/IIoT-проектов, желающих получить следующие знания и навыки:
  • изучить основные компоненты и API Kafka, принципы их взаимодействия и killer features;
  • изучить методы программирования и проектирования приложений с использованием Consumer и Producer API Kafka и написать custom процессоры данных в Kafka Streams;
  • научиться разделять сообщения по топикам и управлять ими как из кода, так и из консоли;
  • научиться использовать Kafka Stream DSL — специализированный язык описания потоков данных в Kafka и динамическую генерацию запросов;
  • получить примеры реализаций лучших практик (best practices) с большим количеством реальных кейсов;
  • освоить лучшие практики создания распределенных приложений для обработки событий в реальном времени.
  • написать Kafka Streams приложение и научиться получать агрегаты напрямую из процессоров данных Kafka Streams
Предварительный уровень подготовки:
  • Знание базовых команд Linux (опыт работы с командной строкой, файловой системой , POSIX, текстовыми редакторами vi, nano)
  • Начальный опыт программирования на Java;
  • Опыт работы с Distributed File System (желательно, но не обязательно).

Как построен курс по Kafka Streams

Продолжительность: 3 дня, 24 академических часа. Соотношение теории к практике 50/50 Обучающий курс содержит расширенные сведения по созданию программ настройки очередей на Kafka и обработки данных в них, с практическими примерами и best practices. Благодаря теории вы узнаете обо всех доступных Kafka API, внутренних принципах работы библиотеки, а также о некоторых интересных концепциях, таких как точно однократная доставка (exactly once). Преподаватель подробно объяснит все решения, чтобы вы усвоили все особенности прикладной обработки потоков Kafka. На практике вы напишете собственное приложение Kafka Streaming с использованием всех современных приемов работы с этой библиотекой.

Программа курса Kafka Streams для разработчиков

1. Основные концепции и архитектура Apache Kafka
  • Основные термины
  • Основные API
2. Topic, partition и offset в Apache Kafka
  • Понятие топика, раздела и смещения
  • Управление Топиками (Topics) из консоли
3. Streams API
  • Архитектура Kafka Streams
  • OLTP операции с Apache Kafka
  • Общие понятия Kafka Streams
  • Создание Kafka Streams приложения
4. Kafka Streams DSL
  • Kafka Streams DSL — теория и практика
5. Processor API
  • Использование Processor API
6. Запросы в Kafka Streams
  • Интерактивные запросы в Kafka Streams

Поиск по сайту