Спрос на дата-инженеров вырастет: рассказываем, какую технологию сейчас изучать лучше всего

Оленка Пилипчак

Объем информации в онлайне постоянно растет. Только представьте: ежедневно пользователи по всему миру создают 500 млн твитов, 294 млрд мейлов, 4 млн гигабайт данных в Facebook и 65 млн сообщений в WhatsApp. Вместе с тем возникает потребность в безопасном хранении, быстром обмене и качественном анализе информации. Справиться с этим помогает модель управления данными — Data as a Service.

Этот подход предполагает, что процесс сбора, хранения, интеграции, обработки и анализа данных пользователи возлагают на отдельные команды. Об основных преимуществах и возможностях модели DaaS рассказали на IT-конференции NIX MultiConf.

Предпосылки появления Data as a Service

В начале 2000-х многие IТ-компании столкнулись со стремительным ростом объема данных. Среди них были такие известные корпорации как Google, IBM, Oracle, Microsoft. Специалисты пытались понять, как извлечь из этого потока данных максимальную пользу для бизнеса. Решение не заставило себя долго ждать – решили продавать результаты аналитики по подписке.

Отметим, что в те времена уже было понятие Software as a Service (SaaS) и было образовано семейство концепций as a Service. В его состав вошли IaaS (Infrastructure as a Service), PaaS (Platform as a Service), а также еще не до конца сформированная концепция DaaS как бизнес-модели.

С технической стороны DaaS — метод сбора, хранения, обработки и анализа данных, чем в компании занимается отдельная команда дата-инженеров и дата-аналитиков.  

Одновременно у корпораций возникли сложности с обработкой большого объема данных для собственных нужд. Все понимали ценность информации и пытались ввести Data as a Service внутри организаций. Малому и среднему бизнесу услуга была не по карману. Все изменилось с появлением рынка провайдеров облачных технологий. Они предоставляли различные инструменты и технику для обработки данных. Благодаря развитию этого рынка выросла популярность DaaS как концепции менеджмента.

Какие задачи решает Data as a Service

Сегодня DaaS-системы демонстрируют мощные возможности, работая с данными, ограниченными четко определенными рамками . Это может быть работа с внутренними данными компании, взаимодействие с данными о пользователях отдельной платформы или данные отдельной бизнес-сферы.  

Среди основных задач, помогающих решить DaaS, выделяют следующие:

  • Сбор информации, полученной из внешних источников (СМИ, соцсети, мобильные устройства) и внутренних (базы данных или сервисы).
  • Транспортировка данных, например с помощью сетевого протокола HTTP.
  • Сохранение данных в файловых хранилищах провайдеров облачных технологий.
  • Анализ данных — самый сложный этап, на котором большинство первичных данных компании превращается в полезную (конвертируемую в деньги), а главное — понятную для клиентов ценную информацию.
  • Доставка данных к клиенту удобным для него способом. Обычно это происходит посредством RESTful web-API или BI-инструментов.

У разработчиков NIX также есть показательные примеры реализации системы DaaS. Рассмотрим один из них.

В этой истории в роли бизнеса выступает LMS-система (Learning Management System). Проект предоставляет услуги в сфере образования и насчитывает 43 сервиса. Каждый из них генерирует значительный объем информации, с которой нужно работать отдельным командам Data-инженеров и Data-аналитиков. Конкретно они разрабатывают DaaS-систему.

Общая DaaS-модель выглядит следующим образом:

  • Существует источник данных (Data Source).
  • Оттуда информация попадает в сервисы приема данных (Incoming data services). Это могут быть Spring-сервисы, Amazon API Gateway+Amazon Kinesis Data Firehose.
  • Затем данные передаются в основной логический блок системы (Core).
  • Там они подвергаются первичной трансформации в Spring-модулях, если это требуется бизнес-логика, и хранятся в одном из хранилищ.

Этими хранилищами могут быть:

  • Amazon S3 — все данные в «сыром» виде и готовые репорты;
  • Amazon Aurora — временное хранилище для некоторых отдельных логических блоков;
  • MongoDB — основная база данных;
  • Snowflake — Data Lake.

В этой части системы происходит трансформация и анализ данных с помощью Apache Spark, работающего на Amazon EMR.

Следующий блок — сервисы снабжения результатов анализа клиентам, в качестве которых выступают наши внутренние сервисы. Эта часть реализована Spring-сервисами или парами AWS Lambda+Amazon API Gateway. Также есть технологии, которые используются по всей системе, а именно:

  • Apache Camel — для связи Spring-модулей между собой;
  • Amazon SQS + Amazon SNS — для обмена сообщениями по всей системе;
  • Amazon Lambda — для выполнения логических функций.

Это была общая схема системы. Теперь рассмотрим подробнее один из десятков пайплайнов.

Как и в каждой LMS, здесь у нас есть учащиеся, учителя и процесс оценивания. Выясним, как результаты выполнения учеником задач попадают в систему и какую пользу из этого может получить клиент.

Данные попадают к нам из внутреннего сервиса LMS в Spring-сервис сбора данных по предварительно согласованному контракту. Эти данные в «сыром» виде хранятся в S3-bucket для архивации. Далее сообщение следует к SQS-очереди с исходными данными, которые были получены от источника. Core-часть извлекает данные SQS-очереди и трансформирует их для того, чтобы сохранить в базе данных MongoDB. 

Сообщения о том, что данные получены и успешно сохранены в MongoDB попадают в SNS-топики, откуда подбираются SQS-очереди. Они накапливаются в Report Generator, который по графику на основе полученных сообщений выбирает необходимые данные из MongoDB и формирует отчет об успеваемости студента с последующим планом по улучшению.

Отчет попадает в S3-bucket, откуда будет передан с помощью AWS Lambda + API Gateway клиенту (внутреннему сервису). Последний же покажет его пользователю (студенту или учителю) в формате user friendly.

Подобный отчет востребован среди учителей и учащихся. Так что внутренние сервисы получают большую пользу, пользуясь им как сервисом, и не задумываются о его имплементации.

Приведем еще один пример. Абсолютно со всех сервисов мы собираем информацию об активности пользователей — это 28 ГБ данных в сообщениях ежедневно или примерно 40 тыс. сообщений ежечасно.

Здесь несколько другой подход. Данные из сервисов попадают в DaaS-систему через API Gateway + Amazon Kinesis Data Firehose и хранятся в Amazon S3. Именно эта комбинация позволяет продуктивно прорабатывать такое большое количество данных.

Далее информация попадает в Snowflake. Для предварительной трансформации используется Apache Spark, если она не нужна — Snowpipe. В Snowflake Data-аналитики формируют из данных Data Lake. Результаты предоставляются клиентам (бизнес-аналитикам компании) с помощью BI-инструмента — Looker. Таким образом и реализуется DaaS-система на примере LMS-проекта.

Теперь перейдем к основным преимуществам Data as a Service, которые сделали эту систему популярной.

Преимущества Data as a Service

DaaS – это финансово выгодно

Предположим, что существует Data-провайдер, который предоставляет аналитику общедоступных данных. Будет значительно проще и дешевле приобрести их результаты, чем самостоятельно создавать аналогичную систему, которая выполняла тот же процесс.

Не считая того, в компании множество разных сервисов генерируют для команды контент. Одному сервису требуется аналитика из пяти серверов, другому — из шести. Они между собой взаимосвязаны. Поэтому вместо того чтобы каждая команда собирала отдельную аналитику из всех сервисов и дублировала данные, лучше создать коалицию людей и делегировать обязанности. Таким образом каждый отдельный сервис будет заниматься бизнес-задачей.

Простота в использовании для клиента

Вам не нужно думать о задачах, выполняемых командой при работе над проектом. Вы не беспокоитесь о том, как происходит процесс сбора, хранения, обработки и анализа данных, а просто пользуетесь готовым результатом.

Высокое качество данных

За счет того, что детальным анализом данных занимается команда профессионалов, обладающих специальными знаниями и технологиями обработки информации, качество получаемых результатов значительно возрастает.

Индустрия аналитики данных будет развиваться. Ключевые игроки на рынке — AWS, Oracle, Google, Meta, Apple, Microsoft — будут постоянно расти. Другие компании, использующие аналитику внутренних данных, чаще будут имплементироваться DaaS. Даже небольшие команды в процессе своей деятельности будут генерировать все больше информации, тоже нужно будет обрабатывать.

Поэтому вероятно, что их спрос на Data-инженеров вырастет. Поэтому изучайте DaaS-модель прямо сейчас.

Если вы занимаетесь бизнесом, самое время заложить архитектуру DaaS-системы в своей компании. Выясните, какими данными будет оперировать ваше приложение или веб-сайт, какие функции будет выполнять продукт.

Что касается имеющегося сервиса, то вам нужно проанализировать, каким объемом данных приложение уже оперирует, и есть ли необходимость привлечь к работе с ними отдельную команду. Собственно, эти специалисты и будут заниматься созданием DaaS для вашего проекта.

Останні статті

Обучение Power BI – какие онлайн курсы аналитики выбрать

Сегодня мы поговорим о том, как выбрать лучшие курсы Power BI в Украине, особенно для…

13.01.2024

Work.ua назвал самые конкурентные вакансии в IТ за 2023 год

В 2023 году во всех крупнейших регионах конкуренция за вакансию выросла на 5–12%. Не исключением…

08.12.2023

Украинская IT-рекрутерка создала бесплатный трекер поиска работы

Unicorn Hunter/Talent Manager Лина Калиш создала бесплатный трекер поиска работы в Notion, систематизирующий все этапы…

07.12.2023

Mate academy отправит работников в 10-дневный оплачиваемый отпуск

Edtech-стартап Mate academy принял решение отправить своих работников в десятидневный отпуск – с 25 декабря…

07.12.2023

Переписки, фото, история браузера: киевский программист зарабатывал на шпионаже

Служба безопасности Украины задержала в Киеве 46-летнего программиста, который за деньги устанавливал шпионские программы и…

07.12.2023

Как вырасти до сеньйора? Девелопер создал популярную подборку на Github

IT-специалист Джордан Катлер создал и выложил на Github подборку разнообразных ресурсов, которые помогут достичь уровня…

07.12.2023