Всем привет! На связи Александр Киваев, руководитель отдела управления справочной информацией группы управления данными Ростелекома .
Если в вашей компании внедрена и эффективно эксплуатируется MDM-система, то считайте, что вы сорвали куш, ведь это существенно облегчит процесс внедрения новых информационных систем в ИТ-инфраструктуру компании, упростит и удешевит интеграцию существующих систем, а также упростит и удешевит интеграцию существующих систем.
позволяют создавать качественную аналитическую и управленческую отчетность, сокращая при этом время на обработку, обновление и проверку данных.
Именно эти преимущества мотивируют крупные компании внедрять MDM-решения.
В этой статье мы хотим рассказать об опыте внедрения системы управления мастер-данными Ростелекома, с какими трудностями мы столкнулись и как нам удалось их решить.
МДМ «из коробки»
Мы выбрали Microsoft в качестве основного решения для построения системы управления мастер-данными.Службы основных данных (МДС).
MDS доступен предприятиям, использующим Microsoft SQL Server Enterprise Edition, начиная с версии 2014. MDS включен в пакет и не требует дополнительных затрат на лицензирование, что стало одним из определяющих факторов при выборе этого продукта.
Но наряду с получением расширенного функционала из коробки мы столкнулись с концептуальным ограничением.
Дело в том, что специализированные MDM-решения построены на философии, согласно которой система автоматизирует все аспекты процесса управления данными и является «авторитетным» источником основных данных для всех систем масштаба предприятия.
При этом ситуация, когда МДМ-система является единственным источником основных данных, все изменения вносятся в МДМ-систему и только потом передаются в системы-потребители, это идеальная ситуация и в реальной жизни встречается крайне редко.
Проблемы.
Системы.
У «Ростелекома» множество информационных систем и каждая из них решает свою конкретную задачу.
Это могут быть биллинги, ERP, CRM или очень специфические решения.
Ситуация усугубляется тем, что информационные системы разрабатывались разными людьми в разное время и каждая решала локальную специфическую проблему, основываясь только на своем понимании эффективного решения.
В результате «Ростелеком» получил разрозненные информационные системы, порой несовместимые друг с другом.
Кроме того, бизнес-процессы компании построены таким образом, что сами операционные системы зачастую являются источниками мастер-данных, а архитектура этих систем не позволяет перейти в другой режим работы без существенного ухудшения процессов продаж и обслуживания клиентов.
Перед нами стояла задача как-то извлечь данные из всего этого разнообразия ИТ-систем, привести их к единому виду и дать возможность эффективно строить аналитическую отчетность, и при этом не ухудшать производительность операционных процессов компании.
Требования к системе управления основными данными
Для решения наших задач нам нужна была система, которая бы предоставляла инструменты для управления каталогами, полученными из всех доступных информационных систем, и в то же время позволяла бы привести все каталоги к единому формату.После такой обработки можно будет использовать унифицированные средства интерпретации и анализа данных.
- Мы увидели следующий сценарий использования системы MDM:
- Подготовьте стандартные корпоративные каталоги.
- Получайте справочные данные из информационных систем предприятия, которые в данном случае называются исходными системами.
Для этого вы можете использовать любой инструмент из Extract Transform Load (ETL).
Помещаем полученные данные в слой, который назовем Посадка .
- Преобразуйте данные в общий формат. Для этого выполняем преобразование типов в типы данных, принятые в системе MDM. Помещаем полученный результат в слой, который назовем Постановка .
- Перевести данные со слоя Постановка в слой готовых справочников.
- Установите соответствие между записями, полученными из исходных систем, и записями ссылочного каталога.
Это действие называется картографированием.
- Обеспечить потребительские системы средствами получения данных из справочников и картографий.
Ограничения Microsoft MDS
Microsoft MDS не имеет той же функциональности, что и описанный выше сценарий.По своей сути MDS хоть и удобен, но лишь средство ведения каталогов.
Производитель предполагает, что специалисты корпоративных справочников создадут справочные справочники и наполнят их смыслами.
После этого они будут использоваться любой другой корпоративной информационной системой.
На основании вышеизложенного получается, что система Службы основных данных решает только два пункта из приведенного выше сценария:
- Ведение справочных справочников.
- Предоставление средств потребительским системам для получения каталогов.
При этом мы дополнили его недостающими функциями, чтобы получить решение, полностью соответствующее типичному сценарию MDM.
Обновление MDS до полной версии MDM
По условиям лицензионного соглашения пользователю запрещено вносить какие-либо изменения в программный продукт MDS, но всегда есть технический способ дополнить функции стандартного решения, не затрагивая его самого, что мы и сделали.Доработка сводилась к последовательности действий:
- Была создана отдельная база данных, которая служила слоем Посадка .
Используя стандартный ETL, мы поместили данные каталогов, полученные из исходных систем, в таблицы этой базы данных.
Для каждого каталога каждого источника была подготовлена своя таблица.
- В этой базе данных мы создали хранимые процедуры, которые запускаются после получения каталогов от исходных систем.
Хранимые процедуры извлекают приращение и помещают его за пределы слоя.
Посадка на стандартный слой Постановка MDS (в базе данных MDS это схема данных стг ).
Кроме того, хранимая процедура может автоматически сопоставлять новые или измененные записи из исходной системы с ссылочным каталогом.
- Далее в хранимой процедуре мы реализовали вызов исходной хранимой процедуры MDS, которая передает все данные со слоя.
Постановка в каталог MDS.
В результате этих простых действий мы получили функционал полноценной MDM-системы, полностью соответствующий типовому сценарию.
Как мы это сделали
Схема взаимодействия MDS с информационными системами компании Для наглядности предлагаем общую картину потоков информации между исходными системами и MDS, между MDS и системами-потребителями:На данной схеме:
- Исходные системы — все информационные системы, из которых данные передаются в MDS;
- Нормативно-справочная информация – система MDS;
- Потребительские системы — это все информационные системы, которые получают данные от MDS.
MDS-каталоги
Каталог, который мы считаем эталонным, представляет собой обычный каталог MDS, с которым работают пользователи, добавляя или изменяя записи.Директорию, полученную от исходной системы, мы также считаем обычной, но с одним отличием — она имеет так называемое отображение на эталонную директорию, то есть ссылку на запись в другом каталоге.
В MDS ссылка указывается в свойствах атрибута каталога — следует указать каталог, который мы считаем ссылкой.
Для этого атрибут должен иметь тип «На основе домена».
Следует отметить, что мы разрешили пользователям изменять только один атрибут в исходном каталоге — ссылочный атрибут. У этого ограничения есть важная причина: мы должны быть уверены, что записи каталога в источнике и его копии в MDS идентичны.
ЭMDS тап, где задана атрибутивная ссылка на ссылочный каталог:
Таблицы базы данных посадочного слоя
Слой Посадка не предназначен для хранения, его функция промежуточная — получать данные из исходной системы и затем выделять приращение относительно того, что уже есть в каталоге.Предположим, что у нас есть справочный каталог «Сервисы», сущность называется Услуга .
И у нас есть служебный каталог, полученный от исходной системы, пусть эта сущность будет называться SERVICE_000085. Затем в слое Посадка мы создаем два объекта базы данных:
- Таблица lnd.SERVICE_000085;
- Хранимая процедура lnd.Load_SERVICE_000085.
Теги: #Хранение данных #Администрирование баз данных #sql #данные компании #управление данными в Ростелекоме #Microsoft SQL Server #каталогиCREATE TABLE lnd.SERVICE_000085(
-
Алгебра Выражений
19 Oct, 24 -
История Мела, Настоящего Программиста
19 Oct, 24 -
Дополненная Реальность Вам В Помощь!
19 Oct, 24