Обработка и визуализация данных туннелепроходческих машин
IT-решение для инфраструктурных гигантов: разработка системы для оперативного мониторинга TBM-сенсоров
О клиенте
Клиент — крупная международная компания, специализирующаяся на строительстве и эксплуатации масштабных инфраструктурных объектов, в частности, на прокладке туннелей. Для управления проектами и мониторинга работ компания использует собственную информационную систему IRIS (Integrated Risk- and Information-System). Эта система полностью интегрирована в информационную инфраструктуру туннелепроходческих машин Herrenknecht.
Ситуация, с которой обратился клиент
В процессе туннелепроходческих работ генерируется огромный массив данных с многочисленных сенсоров туннелепроходческих машин (TBM). Существующая система с трудом справлялась с обработкой и представлением такого объема информации в реальном времени.
Основные проблемы включали:
• Длительное время обработки и визуализации данных
• Чрезвычайно высокие требования к памяти для выполнения импорта данных
• Невозможность эффективного управления различными источниками данных по отдельности
• Ограниченная масштабируемость и сложность разработки новых функций в монолитной архитектуре
Задача
Основная цель проекта заключалась в создании модулей для системы IRIS, которые позволили бы:
-
Организовать обмен данными между IRIS и серверами TBM в реальном времени
-
Обеспечить быструю обработку и визуализацию данных с сенсоров в удобном для восприятия виде
-
Настроить конфигурируемую отчетность по заданным формам
-
Реализовать систему уведомлений о критических значениях сенсоров
-
Перевести ключевой функционал продукта на микросервисную архитектуру для обеспечения масштабируемости и независимой разработки
Решение
Команда Натлекс разработала комплексное решение, интегрированное в систему IRIS, которое включает в себя ряд специализированных модулей: “Дашборды”, “Навигационная карта”, “Панель сенсоров”, “Графики”, “Отчеты” и другие
Ключевые аспекты решения:
-
Веб-платформа
Система представляет собой современную веб-платформу с интерактивным интерфейсом и мощным серверным хранилищем данных, доступную по всему миру через браузер
-
Реальный масштаб времени
Визуализация данных сенсоров происходит в квази-реальном времени с интервалом обновления 10 секунд
-
Модульность
Система IRIS имеет модульную структуру, что позволяет адаптировать ее под индивидуальные потребности каждого проекта
-
Полная интеграция
Обеспечено автоматическое, непрерывное и согласованное ведение записи данных с сенсоров TBM, навигационных данных и других параметров привода
-
Микросервисная архитектура
Продукт был переведен на микросервисы, взаимодействующие через очереди (RabbitMQ). Это позволило значительно улучшить юзабилити и масштабируемость, а также снизить требования к памяти при импорте данных
-
Оптимизация данных
Для ускорения отображения на графиках и дашбордах реализовано использование средних значений и компрессия данных для уменьшения объема дискового хранилища
-
Визуализация и мониторинг
Созданы настраиваемые дашборды, графики и отчеты, позволяющие оперативно отслеживать состояние TBM и принимать решения
Команда и технологический стэк
Команда состояла из 7 человек: backend-разработчики, frontend-разработчики, тестировщики, проект-менеджер.
Технологический стек:
• Frontend: Angular
• Backend: Java (Spring Boot)
• Базы данных: PostgreSQL, SQL
• Обмен сообщениями: RabbitMQ
Ключевые компетенции: опыт работы с визуализацией больших данных, разработка микросервисов, работа со сторонними API (эндпоинтами), обработка исключений.
Этапы проекта
Проект был реализован за 2,5 года. Значительная часть этого времени была посвящена миграции существующего крупного продукта на микросервисную архитектуру, что включало:
-
Анализ существующего функционала и определение частей для миграции
-
Разработка и внедрение микросервисов
-
Решение вопросов совместимости и наследования существующих решений
-
Оптимизация процессов импорта и обработки данных
Реализованный функционал
-
Мониторинг
Модули “Дашборды”, “Навигационная карта”, “Панель сенсоров”, “Графики”, “Отчеты”, "Ряды данных"
-
Управление
Модули "Ошибки Программируемого логического контроллера", "Управление грунтом", "Управление режущим инструментом", "Управление сегментами"
-
Отчетность
Модуль “Отчеты” с возможностью конфигурирования, включая автоматическую ежедневную отправку графиков на E-mail
-
Уведомления
Настройка оповещений при отклонении данных сенсоров от заданных значений
-
Интеграция
Связь с модулями “Устройства” и “Документооборот”.
Уникальный функционал
Уникальность решения заключается в способности эффективно работать с масштабными потоками данных TBM в реальном времени и обеспечивать их мгновенную визуализацию.
Переход на микросервисы позволил:
• Значительно улучшить масштабируемость продукта.
• Снизить требования к памяти при обработке данных.
• Обеспечить независимую разработку новых функций, что критически важно для дальнейшего развития продукта.
Результаты
Благодаря внедрению решения Натлекс, заказчик получил следующие преимущества:
-
Увеличение скорости получения и обработки данных
-
Оперативное получение отчетности, необходимой для ведения работ
-
Конкурентное преимущество: продукт стал более привлекательным для предложения при прокладке туннелей по всему миру
-
Уверенность в развитии: владельцы продукта получили возможность запускать новые проекты без риска для стабильности существующих клиентов
Вызовы, с которыми столкнулись
Самым большим вызовом стала миграция крупного монолитного продукта на микросервисы при сохранении его функциональности.
Сложности включали:
• Необходимость обработки чрезвычайно большого объема данных с сохранением скорости.
• Высокие требования к памяти для импорта данных, которые удалось решить только через рефакторинг и микросервисы.
• Определение оптимального баланса между наследованием старых решений и внедрением новых, современных подходов.