2023/04/11 10:12:54

Максим Солопин, Росбанк: Бизнесу неважно, где хранятся данные, как они доставляются, главное — быстрее их получить

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

Максим
Солопин
Мы сократили затраты на лицензии и оборудование, стали тратить меньше времени на аналитику.

Сколько хранилищ данных работало в Росбанке до появления идеи построения единого КХД? Как они использовались?

Максим Солопин: В банке было три больших корпоративных хранилища данных, пять «песочниц», семь больших BI-серверов, на основе которых несколько лет развивалось озеро данных (Data Lake). Они использовались различными департаментами для реализации задач бизнеса.

Какие технологии/решения использовались при построении озера данных?

Максим Солопин: КХД были реализованы на основе DB2, песочницы — на Microsoft SQL Server, база данных для CRM — на Oracle. Для загрузки использовались SQL Server Integration Service, Informatica, Datastage.

По итогам реализации проекта используемых технологий/продуктов стало меньше?

Максим Солопин: Технологий стало больше, но банк встал на другой путь технологического развития — в ИТ-ландшафте банка появились Greenplum, Hadoop, ClickHouse, HBase.

Какие проблемы наблюдали при эксплуатации старых КХД?

Максим Солопин: Старые КХД создавались с целью подготовки отчётности для ЦБ РФ. Бизнес-отчётность на их основе не делалась, представители бизнеса не могли ими пользоваться. Внутри одной из «песочниц» были десятки баз данных, которые развивали разные департаменты. Каждая из этих СУБД могла загружать данные из источников множество раз, при этом дублировалась информация на разных местах одного сервера.

Были проблемы с качеством данных?

Максим Солопин: Подготавливаемые отчёты не всегда были качественными, данные могли не сходиться. В ходе передачи от подразделения к подразделению данные пропадали, не всегда было понятно, какие данные использовались для подготовки отчёта.

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

Максим Солопин: Во-первых, у такой ИТ-инфраструктуры высокая совокупная стоимость владения. Оборудование, лицензии, зарплата сотрудников — всё это выливалось в большие суммы. Во-вторых, это большая нагрузка на источники данных, то есть внутренние информационные системы, к которым обращались многократно и в разное время дня.

Почему Greenplum и Hadoop были выбраны в качестве базовых платформ для построения единой корпоративной платформы данных?

Максим Солопин: Hadoop позволяет дёшево хранить реплики источников данных. При этом можно не задумываться о том, что мы загружаем, из каких источников, в каком виде размещаются данные. Greenplum выбрали из-за высокой масштабируемости, скорости, умеренной стоимости владения. Важным преимуществом является и совместимость с Hadoop, а также возможность подключения разных источников данных в рамках одной универсальной модели.

Рассматривались другие платформы?

Максим Солопин: На старте проекта, когда западные вендоры ещё работали на российском рынке, мы рассматривали проприетарные платформы DB2, Oracle Exadata, Vertica.

Почему выбрали Arenadata DB?

Максим Солопин: Компания предложила банку хорошие условия. Результаты пилотного проекта всех удовлетворили — мы получили хороший продукт и хорошую техническую поддержку. Arenadata DB — уже зрелое решение, которое полностью готово к промышленной эксплуатации. В нём решено множество проблем, присущих «ванильной» версии Greenplum.

А проводился ли анализ рынка? С какими решениями сравнивали?

Максим Солопин: Сравнивали с упомянутыми выше решениями Vertica, Oracle Exadata, IBM DB2, а также с «ванильным» Greenplum. По совокупному набору критериев остановили выбор на Arenadata DB.

Почему не остановились на собственной сборке Greenplum?

Максим Солопин: Этот вариант нами даже не рассматривался, поскольку внутри банка не было соответствующих компетенций.

Из-за отсутствия компетенций у специалистов банка были проблемы при внедрении Arenadata DB?

Максим Солопин: Сложности, связанные с дефицитом знаний по продуктам Arenadata, были решены обучением на вендорских курсах, а также созданием собственной data-школы, в рамках которой проводятся вебинары, публикуются курсы.

Вернёмся к проекту создания единой КХД. Когда стартовал проект? Сколько длился? На какой стадии находится сейчас?

Максим Солопин: Проект стартовал в начале 2021 года. Полгода ушло на выбор дистрибутива и закупку оборудования. К началу 2022 года мы уже разложили по модели десятки источников данных, закрыли первую бизнес-задачу — подготовили миграцию базы данных по мотивации сотрудников розничной сети. Эта миграция прошла успешна, бизнес увидел и оценил результаты. Уже в марте сотрудникам были выплачены первые премии на основе расчётов в Greenplum. Таким образом, пилотный проект был успешно завершён, сейчас продолжается развитие инфраструктуры данных в этом направлении. У нас появилось больше бизнес-заказчиков, команд разработчиков в Greenplum. Сейчас мы делаем отчёты, добавляем новые источники данных, продолжаем заниматься миграцией. Как я уже сказал, в рамках пилотного проекта была осуществлена миграция одного хранилища — того, которое отвечало за мотивацию сотрудников, работающих в розничной сети и с малым бизнесом. Сейчас мигрируем часть, связанную с финансовой отчётностью для регулятора, которая была реализована на DB2. Также в процессе миграции сейчас находятся аналитические хранилища двух филиалов нашего банка —«Росбанк Дом» (ипотечное кредитование) и «Росбанк Авто» (кредитование под покупку автомобиля).

Сколько специалистов работало в команде проекта на старте?

Максим Солопин: На момент старта пилотного проекта в команде было порядка 10 человек, но не все из них занимались только новым хранилищем, многие регулярно отвлекались на поддержку и развитие старых систем. Собственно хранилищем Greenplum занимались четыре человека. После завершения пилотной стадии проекта разработчиков стало намного больше, сейчас их около семидесяти. От подрядчиков и представителей бизнес-подразделений в проекте никто не участвовал.

А Arenadata помогала?

Максим Солопин: Да, вендор был включён в процесс. Прежде всего на уровне технической поддержки. Коллеги помогли нам разобраться с большим количеством кейсов. Также Arenadata предложила нам провести технический аудит кластера ADB. Это довольно большой и сложный проект, который также оказался нам очень полезен.

В чём цель этого аудита?

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

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

Максим Солопин: Порядка 2 тыс. человек — в основном это сотрудники розничной сети, получающие зарплату на основании расчётов с использованием данных, которые теперь хранятся и обрабатываются в Greenplum. Количество выгодоприобретателей от нового хранилища и дальше будет расти, поскольку сейчас, как я уже сказал выше, мы переносим на Greenplum финансовую отчётность, создаём аналитические хранилища для двух банков группы, а в перспективе планируем создать центральное хранилище, закрыв все «песочницы».

С какими тремя основными сложностями столкнулись в ходе проекта? Как их преодолели?

Максим Солопин: Разнообразие и сложность инфраструктурного ландшафта, большое количество старых монолитных систем, и всё это хозяйство нужно было разложить по моделям, — в этом была самая большая сложность. Например, у нас есть старые АБС, где ключ счёта клиента уникален лишь в рамках одного дня, поэтому им нельзя пользоваться, нужно найти выход, придумать что-то новое, усложняя логику. Мы очень много времени потратили на это. Вторая проблема была связана с тем, что мы использовали Hadoop как озеро данных и самописный инструмент для загрузки данных из различных источников. Оказалось, что наш инструмент сыроват: медленно работает, долго и с ошибками загружает данные. Здесь мы тоже потратили очень много времени, чтобы наладить его работу, подключить и загрузить данные из множества источников. Потребовалось пройти много согласований, в частности — с ИБ-подразделением. Третья проблема связана с ошибками в исходном коде Greenplum, которые обнаружились после установки. Например, порой не проходила вставка данных в таблицы, ключи работали с пропусками, другие проблемы, на решение которых мы тоже потратили время, совместно со специалистами Arenadata.

Какова архитектура решения?

Максим Солопин: Есть озёро данных на основе Hadoop, куда мы выгружаем при помощи самописного инструмента данные из всех источников в банке (Kafka, Excel и др.), оркестратор тоже самописный. И далее данные попадают на Greenplum, где раскладываются по нужной модели. Сейчас мы переделываем архитектуру загрузки данных. Сырые данные лежали на Hadoop, обработанные — в Greenplum. Сейчас сырой слой Hadoop мы будем раскладывать в Data Vault — этот проект пилотируется. И ещё мы завершаем миграцию со сборки Hadoop от Hortonworks на Arenadata Hadoop.

Основные результаты проекта на сегодня?

Максим Солопин: Первый проект по миграции на Greenplum (прим. ред. Arenadata DB) признан успешным, он завершён, но работа в данном направлении не остановилась. У нас большая команда, которая развивает это направление, причём не только в рамках нашего департамента, подключаем и другие, чтобы они могли на основе наших данных делать отчёты, получать аналитику, активно пользоваться хранилищем. Команды занимаются миграцией, подключают источники, загружают данные. В плане экономического эффекта мы сократили затраты на лицензии и оборудование, стали тратить меньше времени на аналитику.

Продолжает ли функционировать прежняя инфраструктура хранения данных?

Максим Солопин: Пока прежняя инфраструктура функционирует. На данном этапе мы приостановили только одно хранилище — то, по которому делали пилотный проект. Точнее, хранилище продолжает использоваться, но ограниченно — для построения отчётов, источником данных для которых служит Greenplum.

Что последует дальше, в плане развития новой концепции хранения данных?

Максим Солопин: Будем расширяться инфраструктурно. Мы закупили оборудование, будем расширять кластер, разработчики будут перемещаться на другие сервера. Кроме того, мы формируем для каждого бизнеса команды по работе с данными в качестве центров компетенции. Они будут отвечать за загрузку данных, формирование переиспользуемых слоёв хранилища.

С точки зрения сложности, масштаба проекта Вам приходилось заниматься чем-то подобным?

Максим Солопин: На момент старта проекта у меня был опыт создания хранилища на Microsoft SQL. Суть была та же самая, но масштаб поменьше, поэтому проще.

Какие советы Вы могли бы дать тем, кто приступает к подобному проекту? Что точно нужно сделать, а чего точно делать не следует?

Максим Солопин: Спешить точно не следует. Наш проект был реализован в очень сжатые сроки. Было бы больше времени, можно было бы лучше продумать модель данных, протестировать больше вариантов. Сейчас кое-что приходится менять на ходу, а это и сложнее, и дольше. Ещё было бы правильнее сразу заморозить старые ресурсы и более их не поддерживать, не развивать.

А в плане команды проекта, начали бы так же, с небольшого числа людей?

Максим Солопин: Десять человек вполне хватило бы для старта проекта. Но в нашем случае люди занимались не только этим проектом. И вот это можно было бы подкорректировать, чтобы человеческий ресурс не размывался на другие задачи.

Как бизнес реагировал на изменения в работе с данными?

Максим Солопин: Миграция — процесс небыстрый, и это вызывало, конечно, определённое недовольство со стороны представителей бизнес-подразделений. Это можно понять, ведь бизнесу неважно, где хранятся данные, как они доставляются, главное — быстрее их получить, желательно «уже вчера». На старте проекта бизнес не готов к владению данными и сопротивление сильное. Упомянутые мной команды по работе с данными как центры компетенции как раз и призваны решать эту проблему. Во главе каждой будет CDO (Chief Data Officer), который будет руководить в том числе просветительской работой в среде бизнеса.