4х-дневный курс "Apache Kafka для инженеров данных" курс для специалистов, желающих получить и систематизировать знания по использованию 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 для решения ваших бизнес-задач.
Аудитория
Практические курсы по разработке Кафка и интеграции ее с другими системами ориентированы на программистов, разработчиков 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 (необязательно).
Программа курса
1. Основные концепции и архитектура Apache Kafka
- Архитектура и история возникновения Kafka
- Основные абстракции и понятия
- Основные 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.
В конце обучения на курсе проводится итоговая аттестация в виде теста или на основании оценок за практические работы, выполненных в процессе обучения
В современном мире сложно обойтись без информационных технологий и их производных - компьютеров, мобильных телефонов, интернета и т.д., особенно в крупных компаниях и государственных организациях, работающих с большим количеством людей, а не только с парой VIP-клиентов, как это может быть в случае небольшой компании. А там, где есть большое количество контрагентов, заявителей и т.д. - не обойтись без баз данных, необходимых для обработки информации. Естественно, что времена гроссбухов и карточек, памятных многим по библиотекам, давно прошли, сегодня используются персональные компьютеры и электронные базы данных.
Сегодня невозможно представить работу крупнейших компаний, банков или государственных организаций без использования баз данных и средств Business Intelligence. Базы данных позволяют нам хранить и получать доступ к большим объемам информации, а система управления базами данных (СУБД) — осуществлять менеджмент доступных хранилищ информации.
В Учебном центре « Интерфейс» Вы научитесь эффективно использовать системы управления базами данных: быстро находить нужную информацию, ориентироваться в схеме базы данных, создавать запросы, осуществлять разработку и создание баз данных.
Обучение позволит Вам не только получить знания и навыки, но и подтвердить их, сдав соответствующие экзамены на статус сертифицированного специалиста . Опытные специалисты по СУБД Microsoft SQL Server или Oracle могут быть заинтересованы в изучении систем бизнес-аналитики. Это задачи достаточно сложные, использующие громоздкий математический аппарат, но они позволяют не только анализировать происходящие процессы, но и делать прогнозы на будущее, что востребовано крупными компаниями. Именно поэтому специалисты по бизнес-аналитике востребованы на рынке, а уровень оплаты их труда весьма и весьма достойный, хотя и квалифицированным специалистам по базам данных, администраторам и разработчикам, жаловаться на низкий уровень дохода тоже не приходится. Приходите к нам на курсы и получайте востребованную и высокооплачиваемую профессию. Мы ждем Вас!
В конце обучения на курсах проводится итоговая аттестация в виде теста или путём выставления оценки преподавателем за весь курс обучения на основании оценок, полученных обучающимся при проверке усвоения изучаемого материала на основании оценок за практические работы, выполненные в процессе обучения.
Учебный центр "Интерфейс" оказывает консалтинговые услуги по построению моделей бизнес-процессов, проектированию информационных систем, разработке структуры баз данных и т.д.
- Нужна помощь в поиске курса?
Наша цель заключается в обеспечении подготовки специалистов, когда и где им это необходимо. Возможна корректировка программ курсов по желанию заказчиков! Мы расскажем Вам о том, что интересует именно Вас, а не только о том, что жестко зафиксировано в программе курса. Если вам нужен курс, который вы не видите на графике или у нас на сайте, или если Вы хотите пройти курс в другое время и в другом месте, пожалуйста, сообщите нам, по адресу mail@interface.ru или shopadmin@itshop.ru
- Поговорите со своим личным тренинг-менеджером!
Мы предоставляет Вам индивидуальное обслуживание. Если у вас есть потребность обсудить, все вопросы касательно обучения, свяжитесь, пожалуйста c нами по телефонам: +7 (495) 925-0049, + 7 (495) 229-0436. Или любым другим удобным для Вас средствами связи, которые Вы можете найти на сайтах www.interface.ru или www.itshop.ru
|