En

JazzTeam Software Development Company

Agile Java Development

BIG DATA-система формирования отчетности

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

Техническое описание:

Заказчик использует базу данных Oracle, которая содержит большое количество записей. Сложная структура базы и большое количество данных приводили к тому, что формирование отчетов на основе этих данных происходило достаточно медленно. Задача команды JazzTeam состояла в сокращении времени формирования отчетов, при этом не изменяя существующую структуру данных.
На этапе технического анализа было принято решение использовать OLAP подход и внедрить хранилище аналитических данных, не изменяя при этом существующую базу данных Oracle. Отобрали трех кандидатов:

Каждую систему нагружали реальными данными и замеряли тестами показатели производительности. Наилучший результат показала система Apache Druid. Ее архитектура хорошо подходит для быстрого формирования отчетов из большой базы данных.
На следующем этапе мы разработали прототип на основе связки:

Oracle + Java + Spring + Spring Batch + JUnit + Apache Droid 

Прототип выполнял следующие операции:

  1. Выгрузка данных из Oracle Database.
  2. Загрузка данных в Apache Druid.
  3. Формирование отчетов.
  4. Дополнение и корректировка существующих отчетов.

Заказчик был удовлетворен успешным тестированием и демонстрацией результатов на прототипе.

Технологии:

Язык программирования: Java
Фреймворки: Spring, Spring Batch, JUnit
Базы данных: Oracle Database, Cassandra, MongoDB, Apache Druid.
Облачный сервис: Amazon Web Services.

Скриншоты:

Особенности проекта:

Результат проекта:

Достижения компании на проекте:

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