Привет, Хабр!

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

Меня зовут Иван Фролов, я ведущий руководитель IT-направления в СберТехе — компании, которая строит Platform V, цифровую платформу Сбера для разработки бизнес-приложений.

Мы развиваем Platform V Dictionaries — продукт для централизованной работы с критичными для бизнеса справочными данными. В статье расскажу, как и зачем мы создали этот инструмент и какие задачи он помогает нам решать.

Что такое MDM-системы и зачем они нужны

Но вначале вспомним, что такое мастер-данные и почему наличие MDM-системы в крупной организации — это важно.

Мастер-данные содержат ключевую информацию о бизнесе: клиентах, продуктах, сотрудниках, технологиях. Чтобы с мастер-данными можно было корректно работать, они должны представлять собой единый источник полной и достоверной справочной информации — так называемую «золотую запись». Желательно, чтобы такие данные находились в централизованном хранилище, где они не дублировались бы и не противоречили друг другу.

Поэтому крупные компании всё чаще прибегают к использованию специальных систем для хранения и управления мастер-данными — MDM-систем (от англ. «Master Data Management»).

MDM-система — важнейший элемент в архитектуре бизнеса, который даёт единое представление о мастер-данных в компании. Такая система помогает собирать, консолидировать и управлять мастер-данными, проверять их качество, контролировать использование и распространение в компании.

Как появился Platform V Dictionaries

Справочные данные — фундамент работы почти каждого бизнес-приложения. Качественные справочные данные позволяют системам разных классов — CRM, ERP, BI и так далее — выполнять свои функции и исключать ошибки.

Естественно, в такой крупной организации, как Сбер, объём мастер-данных и количество систем-потребителей этой информации достаточно большие. К тому же у банка есть особые требования к реализации интеграционных взаимодействий. Плюс в Сбере используется сервис-ориентированная архитектура, а на рынке MDM-решений в основном главенствуют монолиты.

Поэтому для управления справочными данными мы создали собственный продукт — Platform V Dictionaries. Это система класса MDM для совместного использования и централизованной работы с важнейшей справочной и бизнес-информацией. Продукт представлен в виде набора компонентов, которые в полной мере решают задачи по управлению большим объёмом мастер-данных.

Platform V Dictionaries позволяет работать с быстрорастущим объёмом разнообразных данных из информационных систем, снижать расходы на ведение справочников в разных системах и сокращать время на сбор и актуализацию информации.

Продукт может использоваться не только в Сбере: он поставляется на рынок и может применяться для решения аналогичных задач в любых отраслях.

Как работает продукт

Архитектура Platform V Dictionaries состоит из трех компонентов:

Первый компонент — это Сервисы управления. Они позволяют создавать новые и редактировать существующие справочники в runtime. Что имеется в виду под runtime, расскажу дальше в статье.

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

У пользователей есть разграниченный доступ к данным по ролям. Для более быстрой работы с контентом есть возможность экспорта и импорта мастер-данных.

Второй компонент — Сервисы интеграции. Он позволяет выполнять мониторинг и управлять распространением данных. Стандартный маршрут распространения проходит от сервиса управления до сервиса предоставления данных.

В рамках этого маршрута передаются как модели, так и сами данные. Передача модели позволяет создавать и изменять справочники в runtime. Также есть возможность распространять данные в стороннюю БД.

Третий компонент — это Сервисы предоставления. Он предоставляет API на чтение данных с возможностью фильтрации, разграничения доступа на чтение по справочникам.

Это масштабируемый компонент, его можно развернуть на несколько экземпляров, что позволяет распространять разные справочники в разные изолированные блоки. Такая масштабируемость также помогает решать высоконагруженные задачи при большом количестве запросов к сервису предоставления.

Таким образом, совместная работа трех компонентов продукта Platform V Dictionaries функционально закрывает такой сквозной бизнес-процесс, как управление и распространение мастер-данных.

Killer feature: динамическое создание справочников

Начну с реального примера, который встречается во многих организациях.

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

Аналогично дело обстоит и с сервисами предоставления, если они используются в организации.

Получается, что добавление или изменение состава управляемых справочников — сложная трудоёмкая работа, которая влечёт за собой длительный цикл поставки доработок до ПРОМ в организации. А это сказывается на скорости решения задач систем-потребителей и, соответственно, задач бизнеса.

Platform V Dictionaries решает эту проблему. Продукт позволяет без перепоставки мастер-системы создать или изменить модель данных справочника. Информация по модели данных также будет сразу транслироваться в сервис интеграции и далее в сервис предоставления данных.

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

Это важное свойство позволяет командам эксплуатации и сопровождения продукта быстро реагировать на требования потребителей к справочникам и помогать этим системам решать бизнес-задачи наиболее эффективно.

И ещё одна killer feature

А именно — масштабируемый, отдельно выделенный сервис предоставления данных, который позволяет системам-потребителям быстро приступить к использованию продукта.

Допустим, вы строите сервис-ориентированную архитектуру, при этом у многих ваших сервисов нет отдельно выделенного слоя хранения. Наш сервис легко встраивается в такую архитектуру и дает возможность всем сервисам организации получать данные справочников через API и использовать в своих функциях.

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

Большие объёмы TPS будут распределены по необходимому количеству экземпляров. А если системы-потребители находятся в разных сегментах, то отдельно установленные экземпляры повысят надежность, исключив лишние межсетевые взаимодействия.

Заключение

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

Platform V Dictionaries помогает обрабатывать, консолидировать и централизованно хранить корпоративные данные, упрощает процесс формирования отчетности, уменьшает издержки и трудозатраты. А значит, позволяет ускорить бизнес-процессы и повысить продуктивность компании.

Комментарии (2)


  1. Redduck119
    15.06.2023 08:08

    Может я еще не дорос до таких MDM-систем, но ваша статья даже не вызвала у меня желания посмотреть и попробовать.


  1. sinefag
    15.06.2023 08:08

    для крупных предприятий без MDM сложно, появляется много копий одних и тех же данных в разных, часто соседних системах, начинаются проблемы с синхронизацией, дублями, расходится аналитика. Но для Хабра маловато технических деталей, маркетинговая статья вышла:(