Инвестиционный бизнес — это сложнейшее направление в банковском мире. Здесь есть не только кредиты, займы и депозиты, но и ценные бумаги, валюта, товары, деривативы. Инвестиционный бизнес «Альфа-Банка» — это 300 000 сделок в сутки, 3000 котировок и 5 000 исполнений ордеров в секунду. Данные поступают с большого количества разных торговых площадок, и все клиенты должны видеть свои позиции в реальном времени.
Исторически направления инвестиционного бизнеса в банке развивали независимо. Как следствие, был зоопарк технологий, кодовая база систем порядком устарела. Системы дублировали функции друг друга, у каждой из них была своя модель данных, хотя они оперировали одинаковыми понятиями. Иногда это сказывалось на производительности: аналитические запросы выполнялись полчаса, данные теряли актуальность, система «трещала» при нагрузке 5 000 сделок в день.
Бизнес пришел к пониманию, что нужна технологическая трансформация: главная задача — собрать все данные в одном быстром хранилище. Команда проекта сформировала список условий и требований к решению.
В «Альфа-Банке» развернули решение для инвестиционного банкинга на основе Tarantool Data Grid. Сердце системы — кластер из 40+ инстансов Tarantool, развернутых в трех дата-центрах. Каждый инстанс кластера имеет определенную роль.
У каждой системы инвестиционного бизнеса была своя модель данных. Поэтому понадобилось преобразование данных к эталону. Если данные не проходят преобразование, то они сохраняются в ремонтной очереди, у которой есть интерфейс и оповещения. В результате банк контролирует преобразование и не теряет данные.
Бизнес-заказчикам часто нужны дополнительные расчеты для решений. Поэтому команда реализовала вычисляемые поля. Например, привязали к полю функцию, которая считает среднюю цену котировки. При этом внешний потребитель, который запрашивает данные, даже не знает, что это поле вычисляемое.
Для сложных отчетов, которые нужно строить раз в сутки, в неделю, в месяц, команда сделала планировщика и исполнителей. Сами задачи хранятся там же, где и бизнес-данные. В нужное время планировщик передает задачу исполнителю, последний ее считает и сохраняет результат.
В итоге IB-Core хранит в себе все агрегированные данные. Система очищает их от избыточности и преобразовывает в эталонную модель. Она никогда не удаляет объект и никогда не перезаписывает старые данные новыми значениями.
IB-Core в продакшене с 2018 года. После запуска система:
в тестировании спокойно выдерживает двукратную нагрузку
приводит данные к канонической модели (более 5000 строк модели данных)
пропускает данные через 30 000+ строк бизнес-кода, написанного внутри банка, чтобы породить агрегаты и оперативные отчеты в режиме near real-time (секундные задержки)
подсчитывает и выдает ценовые параметры для сделок и сложных финансовых инструментов
хранит все версии данных в горячем хранилище от нескольких месяцев до нескольких лет
позволяет разобрать любые инциденты с данными
Специалисты Tarantool свяжутся с вами по оставленным контактам