Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

АрхиГраф.MDM: управление мастер-данными

3,923 views

Published on

Система управления мастер-данными, реализованная на семантических технологиях.

Published in: Data & Analytics
  • Be the first to comment

АрхиГраф.MDM: управление мастер-данными

  1. 1. serge@trinidata.ru http://trinidata.ru АрхиГраф.MDM: управление мастер-данными при помощи семантических технологий
  2. 2. MDM-система Система 1 Система 2 Система 3 Сервис Источник 4 Источник N Интеграционная шина - ESB НСИ и мастер- данные Информационная модель модель данных программно доступна системам MDM– система является ядром централизованной архитектуры обмена. Она хранит: • Модель данных, • Нормативно-справочную информацию (классификаторы и т.п.), • Мастер-данные (общие каталоги объектов). основные данные программно доступны системам Централизованная архитектура обмена
  3. 3. MDM хранит: • Структуру (схему, модель) данных; • Нормативно-справочную информацию (НСИ): классификаторы, наборы перечисляемых значений; • Собственно основные данные (перечни объектов, активов и т.д.). Структура данных выражается в следующих терминах: • Типы (классы) объектов (пример: клиент, виды сделок, сотрудники организации и т.п.). Типы образуют иерархию – например, тип «Компания» может быть вложен в тип «Организация», но эту информацию приложениям не обязательно обрабатывать; • Атрибуты объектов (пример: название, степень важности, ответственный сотрудник и т.п.). Каждый элемент основных данных описывается: • Уникальным идентификатором (GUID, абстрактный идентификатор); • Набором типов, к которым он относится. Каждый элемент может одновременно относиться к нескольким типам: например, ООО «Альфа» одновременно относится к классам «Компания» и «Покупатель», и получает перечень возможных атрибутов от обоих типов; • Значениями атрибутов (пример: название = ООО «Альфа»). Содержимое MDM-системы
  4. 4. Транспорт сообщений реализуется средствами корпоративной шины (ESB). Для преобразования информации из формата каждого приложения в схему, описанную в модели, необходимо применить правила сопоставления, называемые правилами мэппинга. В процессе мэппинга происходит преобразование: • Типов объектов – из собственных типов данных приложений в те, которые определены в модели, и наоборот; • Идентификаторов – из локальных идентификаторов конкретных систем в глобальные идентификаторы MDM, и обратно; • Разрешение ссылок на другие объекты. Содержимое мастер-данных обычно синхронизируется между несколькими информационными системами: например, каталог активов содержится сразу в нескольких приложениях. При этом каждое приложение имеет собственное представление – структуру информации об объектах. MDM-система принимает запросы приложений на изменение состава мастер-данных, и уведомляет об этом другие приложения. Приложение B Приложение A Корпоратив- ная шина Мастер- данные Информационная модель Метаданные Мэппинг Транспорт Мэппинг Транспорт Можно поменять местами Принцип взаимодействия MDM с приложениями-потребителями
  5. 5. Обмен данными между MDM и приложениями обычно организуется посредством очередей сообщений (MQ), хотя возможны и другие варианты (SOAP, REST и т.д.) MQ вход MQ выход MQ вход MQ выход Шина обмена данными MDM Приложение A MQ вход MQ выход Приложение B Со стороны каждого приложения организуются две очереди: для входящих и исходящих сообщений. Приложение помещает сообщения в одну очередь, и забирает полученные – из другой. Шина осуществляет маршрутизацию сообщений между очередями, в соответствии с настройками маршрутизации. В обмене MDM с приложениями используются следующие разные типы сообщений (пакетов) для выполнения разных операций. Транспорт
  6. 6. DataModelRequest Стартовый элемент (не обязательно) Схема данных MDM EntityRequest Код сущности Package Информация о сущности ChangeRequest Информация о сущности OperationResults DataModel Результат операции CatalogRequest Код типа сущностей Входящий пакет Исходящий пакет API MDM: типы запросов и ответов
  7. 7. Редактирование структуры данных осуществляется в интерфейсе редактора MDM, хотя при необходимости может быть предоставлен и программный интерфейс. MDM хранит перечень типов сущностей, доступных каждой из систем, подключенных к ней. MDM выдает информацию о доступной каждому приложению части информационной модели в виде XML-пакета. Пакет содержит фиксированный набор тегов для передачи информации о типах (классах), атрибутах, и их взаимосвязи. Пример фрагмента пакета с моделью данных, выгружаемый MDM в приложения посредством шины: Получение структуры модели от MDM
  8. 8. Приложение, получив модель данных, должно разобрать ее, и сохранить. Затем приложение предоставляет возможность в интерфейсе настройки выполнить мэппинг (сопоставление) элементов данных MDM и своего локального хранилища данных. Для всех элементов локального хранилища данных должно быть добавлено поле «Код MDM», которое будет хранить значения GUID для записей. Мэппинг заключается в выборе для каждого типа объектов MDM соответствующего ему элемента модели данных приложения. Мэппинг может происходить как на уровне таблиц, так и на уровне логических объектов (например, для 1С мэппинг осуществляется на сущности типа «Справочник.Клиенты»). Затем внутри каждого типа данных выполняется мэппинг атрибутов. В случае, если однозначный мэппинг невозможен, в интерфейсе назначается процедура-обработчик, которая будет вызываться для преобразования получаемых и отправляемых данных из локального формата в формат MDM. Может быть создана библиотека типовых процедур такого рода. Обработка структуры данных со стороны приложений
  9. 9. Данные могут поступать от MDM: • в случае их изменения; • по запросу приложения. В любом случае, MDM отправляет приложению XML-пакет следующего вида: Всегда передается полный набор атрибутов объекта, т.е. исчезновение атрибута говорит об очистке его значения. В некоторых случаях атрибуты могут иметь более одного значения для каждого объекта. Приложение должно быть готово к обработке этой ситуации в случаях, когда его модель данных это позволяет. Получение данных от MDM
  10. 10. Приложение может иметь право на создание/изменение объектов в MDM. Запрос на изменение данных помещается в виде XML-пакета в исходящую очередь, откуда передается MDM. Формат запроса аналогичен показанному выше, с той разницей, что при создании объекта приложение должно передать его локальный идентификатор. Можно создать несколько объектов одним запросом. Пример пакета выглядит так: MDM возвращает сообщение с результатом операции, которое содержит в т.ч. сведения для привязки кода MDM: Передача данных в MDM
  11. 11. Возможность отправлять запросы к MDM предназначена для восстановления после сбоев передачи. В случае, если приложение получило ссылку на неизвестный ему объект, оно может запросить информацию об объекте от MDM: MDM возвращает ответ в виде обычного пакета Package. Как со стороны MDM, так и со стороны приложения (если у него есть право на редактирование элементов какого-либо типа), реализуется возможность инициировать полную выгрузку объектов выбранного типа. Запрос данных из MDM
  12. 12. Графовая база данных Apache Jena/Fuseki Высокопроизводительный кэш Redis Слой логики приложения Слой контроля доступа Слой программного интерфейса обмена (MQ, SOAP, REST и др.) Инструмент редактирования информационной модели редактор Onto.pro Инструмент просмотра информационной модели АрхиГраф.СУЗ Инструмент администрирования доступа Стороннее ПО (open source) ПО компании ТриниДата Компоненты АрхиГраф.MDM GUI API Программная архитектура АрхиГраф.MDM
  13. 13. Замеры производительности проводились на виртуальном сервере следующей конфигурации: - процессор 4 ядра, 1600 МГц, - память – 16 Гб, - ОС: CentOS 7 x64, хранилище данных – Apache Jena/Fuseki. Параметры тестового набора данных: - 10 различных классов (типов) объектов, - не менее 50 свойств, включая связи (в т.ч. у одного из типов - не менее 20 свойств), - не менее 1 100 000 индивидуальных объектов, из которых 1 000 000 относятся к одному из типов ("главному"), который имеет не менее 10 свойств. Свойства заполнены для всех объектов случайными значениями. Не менее 10% объектов относятся более чем к одному типу одновременно. Итог: > 14 млн триплетов, ~ 3 Гб данных. Усредненные результаты тестов: Вид теста Результат, сек Извлечение одного случайно выбранного объекта 0,00368 Одновременное извлечение 1 тыс. объектов 0,54* Одновременное извлечение 80 тыс. объектов 132,67 Одновременное извлечение 1 млн. объектов 569,36 Обновление (редактирование) одного объекта 0,07 * без отбора по свойствам Быстродействие АрхиГраф.MDM
  14. 14. Продукты для построения централизованной архитектуры обмена 1. Хранилище информационной модели 2. Редактор информационной модели 3. Система управления мастер-данными (MDM), НСИ 4. Шина обмена информацией Onto.pro АрхиГраф.MDM Бизнес Семантика, Apache Synapse Apache Jena и др. Мы предлагаем полный стек программного обеспечения для построения централизованных архитектур обмена информацией. Используется только ПО российских производителей, или ПО с открытым кодом. Спасибо за внимание! http://trinidata.ru http://serge-gorshkov.ru +7 (343) 2-110-256 serge@trinidata.ru

×