Пробуем приложения Apache Kafka Streams в Kubernetes: probe-механизм и проблемы stateful

курсы по Apache Kafka, Kafka Streams для разработчиков, обучение Kafka Streams, обработка данных, большие данные, Big Data, архитектура, Kafka, Kubernetes, DevOps

Вчера мы говорили про сложности развертывания множества stateful-приложений Apache Kafka Streams в кластере Kubernetes и роль контроллера StatefulSet, который поддерживает состояние реплицированных задач за пределами жизненного цикла отдельных подов. В продолжение этой темы, сегодня рассмотрим механизм проб, которые позволяют определить состояние распределенного приложения, развернутого на платформе контейнерной виртуализации. В качестве примера для проверок живучести, готовности и запуска будем ориентироваться на stateful-приложения Kafka Streams. Зачем нужен probe-механизм в Kubernetes: проблемы микросервисной архитектуры и зависания распределенных приложений При всех достоинствах микросервисной архитектуры, связанных, в основном с ускорением разработки за счет разделения продукта на отдельные модули (микросервисы) в лучших традициях Agile, ей свойственны некоторые специфические проблемы. В частности, автоматическое обнаружение неисправных приложений, перенаправление запросов в другие доступные модули распределенных систем и восстановление поврежденных Далее …

Как ваше состояние: запуск stateful-приложений Apache Kafka Streams в Kubernetes

курсы по Apache Kafka, Kafka Streams для разработчиков, обучение Kafka Streams, обработка данных, большие данные, Big Data, архитектура, Kafka, Kubernetes, DevOps

Сегодня рассмотрим особенности запуска приложений Apache Kafka Streams для потоковой обработки больших данных с отслеживанием состояния в кластере Kubernetes. Читайте далее, в чем проблема управления stateful-приложениями Kafka Streams в Kubernetes и как ее решает контроллер StatefulSet. Что обеспечивает хранение состояний в Apache Kafka Streams Напомним, Kafka Streams – это легковесная клиентская библиотека, которую можно встроить в любое приложение Java или микросервис, где входные и выходные данные хранятся в кластерах Kafka. Он не имеет внешних зависимостей от других систем, кроме Apache Kafka, обеспечивая горизонтальное масштабирование потоковой передачи данных при сохранении строгих гарантий обработки сообщений в порядке их появления. Kafka Streams поддерживает отказоустойчивое локальное состояние, обрабатывая по одной записи за раз практически в режиме реального времени. Благодаря наличию хранилищ состояний и интерактивных Далее …

Как спроектировать идеальный Big Data Pipeline: 5 главных качеств конвейера обработки больших данных с примерами

инженерия больших данных, обучение инженеров данных, курсы по инженерии Big Data, курсы Hadoop, курсы Spark, курсы Hive, курсы HBase, обучение Hadoop, обучение Spark, обучение Hive, обучение HBase,Big Data, Большие данные, обработка данных, архитектура, DataOps, Spark, DevOps, Hadoop, Hive, HBase, ETL

В этой статье разберем ключевые характеристики идеального конвейера обработки больших данных. Читайте далее, чем отличается Big Data Pipeline, а также какие приемы и технологии помогут инженеру данных спроектировать и реализовать его наиболее эффективным образом. В качестве практического примера рассмотрим кейс британской компании кибербезопасности Panaseer, которой удалось в 10 раз сократить цикл разработки и тестирования ETL-конвейеров на компонентах экосистемы Apache Hadoop: Hive, HBase и Spark. На чем стоит инженерия больших данных: 5 принципов проектирования конвейеров Современный Data Engineering – это гораздо больше, чем просто перемещения данных из одного места в другое или операции ETL (Extract-Transform-Load). Инженерия больших данных включает их моделирование, интеграция, конфигурирование СУБД, файловых и других хранилищ, проектирование и реализацию DWH, ETL-конвейеры, внедрение идей CI/CD для данных и прочие DataOps-практики. Далее …

Apache Kafka и прочая Big Data для железнодорожников: кейс Deutsche Bahn

курсы по Kafka, Обучение Apache Kafka, обработка данных, большие данные, Big Data, Kafka, архитектура, Storm, Cassandra, Kubernetes, облака, DevOps

Чтобы добавить в наш новый курс по Apache Kafka для разработчиков еще больше практических примеров, сегодня мы приготовили для вас кейс немецкой железнодорожной компании Deutsche Bahn AG. Читайте далее, почему приложения Kafka Streams заменили Apache Storm и как крупнейшая транспортная компания Германии построила собственную информационную платформу на базе Apache Kafka, Cassandra и Kubernetes в облачном кластере Amazon Web Services. Зачем железнодорожникам Big Data: постановка задачи с точки зрения бизнеса Deutsche Bahn – это основной железнодорожный оператор Германии, акционерное общество со стопроцентным государственным участием [1], которое каждый день обслуживает около 5,7 миллионов пассажиров, управляя 24 тысячами поездов. Почти каждому клиенту требуются сведения о поездке, такие как время отправления и прибытия, платформа, место в очереди при ожидании поезда и прочая важная информация. Далее …

От open-source до Confluent: 3 клиента Python для Apache Kafka

курсы по Apache Kafka, Kafka обучение, обучение большим данным, Кафка для разработчиков, Apache Kafka for developers, Apache Kafka Python, обработка данных, большие данные, Big Data, Kafka, Python, librdkafka, PyKafka, Kafka-Python

Развивая наш новый курс по Apache Kafka для разработчиков, сегодня мы рассмотрим 3 способа о взаимодействии с этой популярной Big Data платформой потоковой обработки событий с помощью языка Python, который считается самым распространенным инструментом в Data Science. Читайте далее, что такое librdkafka, чем PyKafka отличается от Kafka-Python и почему решение от Confluent предпочтительнее других вариантов. Как работать с Apache Kafka средствами Python Обычно разработчики Big Data решений применяют Java или Scala для создания приложений Apache Kafka. Однако, с учетом популярности Python в Data Science в частности и широкой распространенности этого языка программирования вообще, многие решения также создаются с использованием этого инструментария. Для использования Python в Kafka существует несколько готовых средств [1]: Kafka-Python – библиотека с открытым исходным кодом от сообщества Далее …

Не только AirFlow: Apache Luigi и еще 3 ETL-оркестратора для Big Data Pipeline’ов

курсы Airflow, обучение Airflow, обучение инженеров данных, инженерия данных, Big Data, Большие данные, обработка данных, Airflow, архитектура, администрирование, Spark, DataOps, MLOps, Python, Kubernetes, DevOps, ETL

Чтобы максимально приблизить обучение Airflow к практической работе дата-инженера, сегодня мы рассмотрим, какие еще есть альтернативы для оркестрации ETL-процессов и конвейеров обработки больших данных. Читайте далее, что такое Luigi, Argo, MLFlow и KubeFlow, где и как они используются, а также почему Apache Airflow все равно остается лучшим инструментом для оркестрации заданий в области Big Data.   Еще раз об оркестрации задач в Big Data и Machine Learning: что это такое и зачем нужно Обычно развитие data—driven инициатив начинается с ручного управления задачами. Например, для машинного обучения (Machine Learning) это будут процессы очистки данных, обучения моделей, отслеживание результатов и развертывание решений на рабочем сервере (production). Эти процедуры растут и усложняются по мере увеличения команды и продвижения самого продукта.  В частности, растет Далее …

Apache Kafka, микросервисы и проблема удаления данных: 5 практических примеров

курсы по Kafka, обучение Apache Kafka с примерами, обработка данных, большие данные, Big Data, Kafka, администрирование, архитектура, Agile, DevOps

Чтобы сделать наши курсы по Apache Kafka для разработчиков Big Data систем еще более интересными, а обучение – запоминающимся, сегодня мы рассмотрим еще несколько примеров реализации микросервисной архитектуры на этой стриминговой платформе. А также поговорим про проблемы удаления данных в этой архитектурной модели, разобрав кейс компании Twitter по построению корпоративного конвейера стирания данных на базе Kafka.   Микросервисная event-streaming архитектура на Apache Kafka: 5 разных примеров и парочка общих проблем Сегодня микросервисная архитектура стала фактически стандартом де-факто: все больше компаний приходят к этой модели, разделяя «монолиты» своих систем на множество небольших сервисов, каждый из которых решает узко направленную задачу. При некоторых сложностях архитектурного проектирования, данный подход повышает гибкость и расширяемость программных систем, позволяя расширять их функциональные возможности путем добавления новых Далее …

Какой Machine Learning в вашем production: 5 популярных паттернов на любой вкус и 2 основные стратегии внедрения

цифровизация, архитектура, контейнеризация, Docker, Kubernetes, Big Data, Большие данные, Data Science, машинное обучение, Machine Learning, DevOps, MLOps, Kafka, Data Lake, Hadoop

Завершая цикл статей про MLOps, сегодня мы расскажем про 5 шаблонов практического внедрения моделей Machine Learning в промышленную эксплуатацию (production). Читайте далее, что такое Model-as-Service, чем это отличается от гибридного обслуживания и еще 3-х вариантов интеграции машинного обучения в production-системы аналитики больших данных (Big Data), а также при чем тут Apache Kafka, Лямбда-архитектура, контейнеризация и бессерверные вычисления. MLOps-шаблоны внедрения ML-моделей в production MLOps-энтузиасты выделяют следующие паттерны внедрения моделей машинного обучения в production [1]: Модель как услуга или сервис (Model-as-Service); Модель как зависимость (Model-as-Dependency); Предварительный расчет (Precompute); Модель по запросу (Model-on-Demand); Гибридная модель обслуживания (Hybrid Model Serving) или Федеративное обучение (Federated Learning)   Критерий ML-модель Обслуживание и версионирование (Service & Versioning) Вместе с приложением-потребителем Независимо от приложения-потребителя Доступность во время компиляции Далее …

Как внедрить MLOps: краткое пошаговое руководство

цифровизация, цифровая трансформация, Big Data, Большие данные, Data Science, машинное обучение, Machine Learning, Agile, DevOps, MLOps

Рассказав, как оценить уровень зрелости Machine Learning Operations по модели Google или методике GigaOm, сегодня мы поговорим про этапы и особенности практического внедрения MLOps в корпоративные процессы. Читайте далее, какие организационные мероприятия и технические средства необходимы для непрерывного управления жизненным циклом машинного обучения в промышленной эксплуатации (production). 2 направления для внедрения MLOps Напомним, MLOps – это культура и набор практик для автоматизации комплексного управления жизненным циклом систем машинного обучения, от разработки (Development) до эксплуатации (Operations) всех компонентов: ML-модели, программный код и инфраструктура развертывания. MLOps расширяет методологию CRISP-DM с помощью Agile-подхода и технических инструментов автоматизированного выполнения операций с данными, ML-моделями, кодом и окружением. Таким образом, практическое внедрение MLOps следует вести сразу по 2-м направлениям: организационное, что предполагает адаптацию принципов Agile к корпоративной культуре и частичную перестройку Далее …

Насколько созрел ваш MLOps: многокритериальная 5-уровневая модель зрелости Machine Learning Operations

цифровизация, цифровая трансформация, Big Data, Большие данные, Data Science, машинное обучение, Machine Learning, Agile, DevOps, MLOps

Недавно мы рассказывали про модель зрелости MLOps от Google. Сегодня рассмотрим альтернативную методику оценки зрелости операций разработки и эксплуатации машинного обучения, которая больше похоже на наиболее популярную в области управленческого консалтинга модель CMMI, часто используемую в проектах цифровизации. Читайте далее, по каким критериям измеряется Machine Learning Operations Maturity Model и как применить это на практике.   5 критериев для оценки MLOps-зрелости Предложенная компанией Google 3-х уровневая модель оценки зрелости MLOps не является единственной. Например, альтернатива от исследовательской ИТ-компанией GigaOm, в отличие от Google-варианта, учитывает не только технологии поддержки жизненного цикла машинного обучения, но и корпоративную культуру, которая неотделима от любой технической парадигмы. GigaOm выделяет 5 уровней MLOps-зрелости, оценивая состояние Machine Learning и окружающей инфраструктуры на предприятии по следующим критериям [1]: Далее …