04.04.2023

Этапы создания аналитических приложений в облаке

Сергей Кравченко, Старший аналитик данных, Beltel Datanomics

Для реализации Data science проектов в облаке под ключ с полной передачей документированного кода компания может обратиться к опытным сторонним разработчикам. Цель этой статьи — описание перечня работ, необходимых для решения такой задачи. В прошлых статьях мы писали о преимуществах облачных технологий и о создании решений по подписке (SaaS), однако SaaS-продукты не всегда могут подходить клиентам по тем или иным причинам. Одной из причин может быть желание клиента самостоятельно развивать экспертизу в новых направлениях. В этом случае готовый проект, выполненный разработчиками облачных решений, может оказаться быстрым стартом. Ниже представлен перечень этапов от описания концепций до введения системы в продуктовую эксплуатацию.

  1. Описание бизнес-задачи

Ключевым является постановка задачи от бизнеса, от которой строится потребность в сборе данных и понимание, как их обрабатывать.

  1. Проектирование архитектуры системы в облаке

После постановки бизнес-задачи становится понятно, с какими объемами данных необходимо работать, какие примерно нагрузки должна выдерживать система приема и обработки данных, как данные должны обрабатываться —  потоком или иными способами. Исходя из таких вводных можно начать проектировать архитектуру решения.

  1. Создание облачного хранилища и выгрузка данных

Создание спецификации данных происходит совместно с этапом постановки задачи. Для функционирования аналитической системы возникает необходимость в хранении данных. Исходя из формата данных, требований обработки и доступа предъявляются требования к хранению данных.

  1. Создание и тестирование механизма приема данных

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

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

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

  1. Написание кода организации вычислительного процесса и тестирование

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

  1. Создание инфраструктуры для выполнения расчетов алгоритмов

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

  1. Передача проекта

Для полной передачи проекта необходимо произвести:

  • Отладку системы, пусконаладочные работы
  • Написание документации и руководства пользователям
  • Обучение персонала
  • Поддержку решения на время обучения персонала

Заключение

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

Оставьте заявку и получите бюджет и план внедрения наших решений в ваш бизнес

    Заполняя форму, Вы соглашаетесь с правилами обработки персональных данных.

    Мы используем файлы cookies, чтобы получать статистику и делать наш сайт и другие сервисы удобными для вас. Продолжая дальнейшее использование сайта и/или его сервисов, вы соглашаетесь с этим. Более подробную информацию можно прочитать в «Политика обработки персональных данных» и в «Политика Cookies»