• 526

    Заявлено проектов

  • 443

    Опубликовано проектов

  • 164

    Оставлено комментариев

  • 1485

    Количество голосов

  • 22

    Дней до окончания голосования

← Вернуться к списку

Декомиссия монолита: импортозамещение решения с монолитной архитектурой, построенном на иностранной СУБД, вендор которой ушел из РФ

  • Руководитель проекта со стороны заказчика

  • Категория

  • Номинация

  • Цели

    1. Перевести устаревшую систему с проприетарного на OpenSource технологический стек.

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

    3. Реализовать поэтапное и бесшовное внедрение нового решения.

  • Сроки выполнения

    апрель, 2021 — ноябрь, 2024
  • Год завершения проекта

    2024

  • Масштаб проекта

    94000 человеко-часов
  • Результаты

    • Произведен редизайн архитектуры KYC профиля клиента. Выработана новая архитектура с учетом перехода на Low-code BPM платформу (хВРМ).

    • Обеспечен бесшовный переход из старой системы в новую.

    • Разработан механизм синхронизации данных между новой и замещаемой системами.

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

    • Выполнена полная миграция всех данных в новую систему, включая исторические данные.

    • Добились существенного сокращения сроков и стоимости новых доработок за счет внедрения Low-code платформы хВРМ.

  • Уникальность проекта

    Единая клиентская база данных представляет собой масштабное решение со сложными бизнес-процессами и сложными данными. В рамках проекта было реализовано импортозамещение решения с монолитной архитектурой, построенном на СУБД Oracle. Для этого осуществлен перевод системы с проприетарного на open source технологический стек и реализовано бесшовное внедрение нового решения.

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

    В рамках проектах был произведен редизайн архитектуры и выработана новая архитектура: 

    • Переход с монолита на микросервисы. 

    • Микросервисы сочетают или Pro-сode (Java и React) или Low-сode (xBPM) в зависимости от того, что лучше подходит для реализации требований. 

  • Проект решает задачи импортозамещения

    Да

  • Использованное ПО

    • Low-code платформа хВРМ

    • Java

    • React

    • PostgreSQL

  • Решение из каталога Global CIO

    В проекте не используются решения из каталога Global CIO

  • Сложность реализации

    Масштаб системы, которую нужно было трансформировать – около 1 000 000 строк кода. В качестве системы хранения использовался Oracle, который нужно было импортозаместить.

    Перед трансформацией Система представляла собой:

    • Самодельный DAO слой на основе XML-based DSL с логикой в хранимых процедурах.

    • Почти любая сущность – это «документ» - таблица в 100000 колонок.  Присланный клиентом устав юрлица, договор, заявка на оказание услуги, оповещение от биржи клиенту, сертификат ЭЦП – это всё «документы».

    • Большое количество логики в триггерах («постпроцессы»). Из application serverа на java не контролируется изменение всех объектов. Изменение любого объекта может произойти по триггеру.

    При этом присутствовал существенный объем постоянно идущих доработок функциональности по бизнес-требованиям, которые исходят из десятка подразделений биржи. Как следствие – высокий уровень связности «всего со всем».

  • Описание

    Единая клиентская база данных (ЕКБД) – это система управления инструментами, которыми торгует биржа, и участниками, которые подключены к торгам и могут выставлять заявки. Данные из ЕКБД поступают в торговые и клиринговые системы биржи. Характеризуется сложностью процессов и сложностью данных, которыми необходимо управлять.

    Ключевой задачей проекта была необходимость перевести Единую клиентскую базу данных с проприетарного на open source технологический стек и реализовать поэтапное, бесшовное внедрение нового решения.

    Был выбран стек PostgreSQL + Java + ReactJS и микросервисы, разворачивающиеся в кластере Kubernets. В качестве инструмента была выбрана платформа хВРМ за совместимость с базовым технологическим стеком и возможность реализации гибкого по функционалу решения с возможностью дальнейшего масштабирования, полностью кастомизированное под бизнес-процессы и бизнес-задачи биржи.

    На платформе xBPM реализована подсистема  управления KYC профилем клиента биржи (участника торгов или эмитента). В рамках проекта был произведен редизайн архитектуры и выработана новая архитектура с учетом перехода на Low-code BPM платформу.

    Сотрудниками был разработан механизм синхронизации между новой и замещаемой системами и обеспечен бесшовный переход из старой системы в новую.

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

    Каждая итерация перехода состояла из следующих шагов:
       
    1.  Разработка и тестирование:
    • Бизнес-функции для новой системы в виде отдельного микросервиса.

    • Встраивания UI нового микросервиса в UI старой системы в режиме feature toggle.

    • Процедуры миграции данных из старой системы в новую по набору сущностей микросервиса.

    • Онлайн интеграционных потоков от старой системы к микросервису и от микросервиса к старой системе.

    • Процедуры сверки старой и новой систем по набору сущностей, относящихся к микросервису.
    2.  Выполнение процедуры миграции данных по бизнес-функции в промышленной среде.

    3.  Перевод пользователей к вводу данных в новом микросервисе (переключение feature toggle).

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

    Также по запросам биржи была доработана платформа xBPM:

    • добавлена поддержка бизнес-истории;

    • расширили механизм встраивания через iFrame;

    • доработан механизм аутентификации и авторизации для соответствия стандартам Биржи;

    • добавлена поддержка REST API и Swagger;

    • оптимизирована производительность UI.

  • География проекта

    РФ

Комментировать

Комментировать могут только авторизованные пользователи.
Предлагаем Вам в систему или зарегистрироваться.

  • Заказчик

    ПАО Московская Биржа

    ПАО Московская Биржа

  • ИТ-поставщик

    Unitarius

    Unitarius

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