Высоконагруженная система обработки и хранения данных - Intexsoft

Высоконагруженная система обработки и хранения данных

Система, которая выполняет функцию хранилища данных и биллинговой системы для всех расходов и действий клиентов.
image

О проекте

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

 

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

Технологии

Состав команды

  • Тимлид

  • 4 разработчика

  • 4 специалиста по тестированию

600K

записей обрабатывается в секунду

20

микросервисов

4

года работы над проектом

Решение

Данный проект представляет собой Big Data. Ключевая особенность системы – хранение и обработка огромного массива данных. Масштаб системы можно сравнить со Spotify, Яндекс.Музыка и т.д. В сутки система обрабатывает миллиарды файлов, а в секунду поступает примерно 600 тыс. записей.

 

В условиях такого объема, для хранения данных была использована распределен-

ная база данных Cassandra. Для обеспечения целостности данных и распределения нагрузки используются несколько ЦОДов (Центров Обработки Данных), географически расположенных в разных регионах.

 

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

 

Система построена на основе микросервисной и распределенной архитектуры.

Помимо того, что все данные хранятся распределенно, обработка и сохранение данных происходит при помощи микросервисов. На данный момент в системе насчитывается порядка 20 микросервисов.

 

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

 

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

Методология и прозрачность

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

 

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

 

Когда начался этап активного внедрения продукта, команда разработки перешла на

методологию Kanban для оптимизации рабочих процессов.

Основная функциональность

  • Управление информацией

    сбор, обработка и агрегирование данных, хранение большого объема данных, выгрузка данных в виде отчетов

  • Расчет данных

    учет платежей и расходов, перерасчет расходов для выставления нового счета с учетом обновленных данных

Похожие проекты

Более 150 компаний уже воспользовались нашими услугами по разработке программного обеспечения. Не верите нам на слово? Смотрите сами!

Мобильное приложение для гастрономических заведений

Мобильное приложения для ресторанов, пиццерий и суши-баров.
Learn more

Оптовый интернет-магазин

B2B интернет-магазин на базе платформы Magento для продажи рекламной продукции партнеров.
Learn more

HR Система

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

Агрегатор информации о товарах

Агрегатор информации о товарах из различных интернет-магазинов.
Learn more

Система управления доставкой багажа

Cистема доставки багажа от и до аэропорта.
Learn more

Мобильное приложение для образовательных услуг

Платформа для сектора образования, которая облегчает общение между учителями и родителями учеников.
узнать больше

Веб-приложение для обучения танцам

Приложение для индивидуальных и групповых занятий танцами онлайн
узнать больше

Высоконагруженная система обработки и хранения данных

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

Веб-приложение для операций с недвижимостью

Веб-приложение для покупки, аренды и продажи недвижимости онлайн в Испании, Панаме и Коста-Рике.
узнать больше

Давайте обсудим ваш проект

Напишите нам и мы обязательно найдём решение для вашего бизнеса