SlideShare a Scribd company logo
serge@trinidata.ru
http://trinidata.ru
АрхиГраф.MDM:
управление мастер-данными
при помощи семантических технологий
MDM-система
Система 1 Система 2 Система 3
Сервис
Источник 4 Источник N
Интеграционная шина - ESB
НСИ
и мастер-
данные
Информационная
модель
модель данных
программно
доступна системам
MDM– система является ядром
централизованной архитектуры обмена.
Она хранит:
• Модель данных,
• Нормативно-справочную информацию
(классификаторы и т.п.),
• Мастер-данные
(общие каталоги объектов).
основные данные
программно
доступны системам
Централизованная архитектура обмена
MDM хранит:
• Структуру (схему, модель) данных;
• Нормативно-справочную информацию (НСИ): классификаторы, наборы перечисляемых значений;
• Собственно основные данные (перечни объектов, активов и т.д.).
Структура данных выражается в следующих терминах:
• Типы (классы) объектов (пример: клиент, виды сделок, сотрудники организации и т.п.).
Типы образуют иерархию – например, тип «Компания» может быть вложен в тип «Организация»,
но эту информацию приложениям не обязательно обрабатывать;
• Атрибуты объектов (пример: название, степень важности, ответственный сотрудник и т.п.).
Каждый элемент основных данных описывается:
• Уникальным идентификатором (GUID, абстрактный идентификатор);
• Набором типов, к которым он относится. Каждый элемент может одновременно относиться
к нескольким типам: например, ООО «Альфа» одновременно относится к классам «Компания»
и «Покупатель», и получает перечень возможных атрибутов от обоих типов;
• Значениями атрибутов (пример: название = ООО «Альфа»).
Содержимое MDM-системы
Транспорт сообщений реализуется
средствами корпоративной шины (ESB).
Для преобразования информации из формата
каждого приложения в схему, описанную
в модели, необходимо применить правила
сопоставления, называемые правилами
мэппинга.
В процессе мэппинга происходит
преобразование:
• Типов объектов – из собственных типов данных
приложений в те, которые определены в модели, и наоборот;
• Идентификаторов – из локальных идентификаторов
конкретных систем в глобальные идентификаторы MDM, и обратно;
• Разрешение ссылок на другие объекты.
Содержимое мастер-данных обычно синхронизируется между несколькими
информационными системами: например, каталог активов содержится
сразу в нескольких приложениях. При этом каждое приложение имеет
собственное представление – структуру информации об объектах.
MDM-система принимает запросы приложений на изменение состава
мастер-данных, и уведомляет об этом другие приложения.
Приложение B
Приложение A
Корпоратив-
ная шина
Мастер-
данные
Информационная
модель
Метаданные
Мэппинг
Транспорт
Мэппинг
Транспорт
Можно поменять
местами
Принцип взаимодействия MDM
с приложениями-потребителями
Обмен данными между MDM и приложениями обычно организуется посредством очередей сообщений (MQ),
хотя возможны и другие варианты (SOAP, REST и т.д.)
MQ
вход
MQ
выход
MQ
вход
MQ
выход
Шина обмена данными
MDM
Приложение A
MQ
вход
MQ
выход
Приложение B
Со стороны каждого приложения организуются
две очереди: для входящих и исходящих сообщений.
Приложение помещает сообщения в одну очередь,
и забирает полученные – из другой.
Шина осуществляет маршрутизацию сообщений
между очередями, в соответствии с
настройками маршрутизации.
В обмене MDM с приложениями используются
следующие разные типы сообщений (пакетов)
для выполнения разных операций.
Транспорт
DataModelRequest
Стартовый элемент
(не обязательно)
Схема данных MDM
EntityRequest
Код сущности
Package
Информация
о сущности
ChangeRequest
Информация
о сущности
OperationResults
DataModel
Результат операции
CatalogRequest
Код типа сущностей
Входящий пакет Исходящий пакет
API MDM: типы запросов и ответов
Редактирование структуры данных осуществляется в интерфейсе редактора MDM, хотя при необходимости
может быть предоставлен и программный интерфейс.
MDM хранит перечень типов сущностей, доступных каждой из систем, подключенных к ней.
MDM выдает информацию о доступной каждому приложению части информационной модели
в виде XML-пакета. Пакет содержит фиксированный набор тегов для передачи информации
о типах (классах), атрибутах, и их взаимосвязи.
Пример фрагмента пакета с моделью данных, выгружаемый MDM в приложения посредством шины:
Получение структуры модели от MDM
Приложение, получив модель данных, должно разобрать ее, и сохранить. Затем приложение
предоставляет возможность в интерфейсе настройки выполнить мэппинг (сопоставление)
элементов данных MDM и своего локального хранилища данных.
Для всех элементов локального хранилища данных должно быть добавлено поле «Код MDM»,
которое будет хранить значения GUID для записей.
Мэппинг заключается в выборе для каждого типа объектов MDM соответствующего ему элемента
модели данных приложения. Мэппинг может происходить как на уровне таблиц, так и на уровне
логических объектов (например, для 1С мэппинг осуществляется на сущности типа «Справочник.Клиенты»).
Затем внутри каждого типа данных выполняется мэппинг атрибутов.
В случае, если однозначный мэппинг невозможен, в интерфейсе назначается процедура-обработчик,
которая будет вызываться для преобразования получаемых и отправляемых данных из локального
формата в формат MDM. Может быть создана библиотека типовых процедур такого рода.
Обработка структуры данных со стороны приложений
Данные могут поступать от MDM:
• в случае их изменения;
• по запросу приложения.
В любом случае, MDM отправляет приложению XML-пакет следующего вида:
Всегда передается полный набор атрибутов объекта, т.е. исчезновение атрибута говорит об очистке его значения.
В некоторых случаях атрибуты могут иметь более одного значения для каждого объекта.
Приложение должно быть готово к обработке этой ситуации в случаях, когда его модель данных это позволяет.
Получение данных от MDM
Приложение может иметь право на создание/изменение объектов в MDM. Запрос на изменение данных
помещается в виде XML-пакета в исходящую очередь, откуда передается MDM. Формат запроса аналогичен
показанному выше, с той разницей, что при создании объекта приложение должно передать его локальный
идентификатор. Можно создать несколько объектов одним запросом. Пример пакета выглядит так:
MDM возвращает сообщение с результатом операции, которое содержит в т.ч. сведения для привязки кода MDM:
Передача данных в MDM
Возможность отправлять запросы к MDM предназначена для восстановления после сбоев передачи.
В случае, если приложение получило ссылку на неизвестный ему объект, оно может запросить
информацию об объекте от MDM:
MDM возвращает ответ в виде обычного пакета Package.
Как со стороны MDM, так и со стороны приложения (если у него есть право на редактирование элементов
какого-либо типа), реализуется возможность инициировать полную выгрузку объектов выбранного типа.
Запрос данных из MDM
Графовая база данных
Apache Jena/Fuseki
Высокопроизводительный кэш
Redis
Слой логики приложения
Слой контроля доступа
Слой программного
интерфейса обмена
(MQ, SOAP, REST и др.)
Инструмент редактирования
информационной модели
редактор Onto.pro
Инструмент просмотра
информационной модели
АрхиГраф.СУЗ
Инструмент
администрирования доступа
Стороннее ПО
(open source)
ПО компании
ТриниДата
Компоненты
АрхиГраф.MDM
GUI API
Программная архитектура АрхиГраф.MDM
Замеры производительности проводились на виртуальном сервере следующей конфигурации:
- процессор 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
Продукты для построения
централизованной архитектуры обмена
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

More Related Content

What's hot

тема 4 2
тема 4 2тема 4 2
тема 4 2asheg
 
основные понятия баз данных
основные понятия баз данныхосновные понятия баз данных
основные понятия баз данных23padopi
 
Необходимые условия качества данных: MDM, Шина, Хранилище данных
Необходимые условия качества данных: MDM, Шина, Хранилище данныхНеобходимые условия качества данных: MDM, Шина, Хранилище данных
Необходимые условия качества данных: MDM, Шина, Хранилище данных
КРОК
 
тема 5 2
тема 5 2тема 5 2
тема 5 2asheg
 
Концепция применения онтологических структур в ERP-системах
Концепция применения онтологических структур в ERP-системахКонцепция применения онтологических структур в ERP-системах
Концепция применения онтологических структур в ERP-системах
Anatoly Simkin
 
Технологии анализа и обработки данных
Технологии анализа и обработки данныхТехнологии анализа и обработки данных
Технологии анализа и обработки данных
Кристина Обломова
 
Роль MDM в информатизации бизнеса
Роль MDM в информатизации бизнесаРоль MDM в информатизации бизнеса
Роль MDM в информатизации бизнеса
КРОК
 
Подход КРОК к построению MDM-решения
Подход КРОК к построению MDM-решенияПодход КРОК к построению MDM-решения
Подход КРОК к построению MDM-решения
КРОК
 
Как Microsoft Power BI меняет процесс принятия управленческих решений?
Как Microsoft Power BI меняет процесс принятия управленческих решений?Как Microsoft Power BI меняет процесс принятия управленческих решений?
Как Microsoft Power BI меняет процесс принятия управленческих решений?
FTS Russia
 
Новая жизнь Ваших даных с PowerBI
Новая жизнь Ваших даных с PowerBI Новая жизнь Ваших даных с PowerBI
Новая жизнь Ваших даных с PowerBI
Marina Payvina
 
13 расширенные возможности корпоративных приложений, основы субд
13 расширенные возможности корпоративных приложений, основы субд13 расширенные возможности корпоративных приложений, основы субд
13 расширенные возможности корпоративных приложений, основы субд
KewpaN
 
Александр Ефанов, IBS. Преобразование Big Data в Smart Data
Александр Ефанов, IBS. Преобразование Big Data в Smart DataАлександр Ефанов, IBS. Преобразование Big Data в Smart Data
Александр Ефанов, IBS. Преобразование Big Data в Smart Data
IBS
 
Реверс-инжиниринг требований в проекте по миграции КИС. Алексей Смирнов
Реверс-инжиниринг требований в проекте по миграции КИС.  Алексей СмирновРеверс-инжиниринг требований в проекте по миграции КИС.  Алексей Смирнов
Реверс-инжиниринг требований в проекте по миграции КИС. Алексей СмирновAlexander Baikin
 
тема 4
тема 4тема 4
тема 4asheg
 
тема 5
тема 5тема 5
тема 5asheg
 
раздел 2 модели и типы данных
раздел 2  модели и типы данныхраздел 2  модели и типы данных
раздел 2 модели и типы данныхtatianabtt
 
Подход КРОК к построению MDM
Подход КРОК к построению MDMПодход КРОК к построению MDM
Подход КРОК к построению MDM
КРОК
 
ATK_BiView - инструмент эффективной интеграции 1С и Qlik
ATK_BiView - инструмент эффективной интеграции 1С и QlikATK_BiView - инструмент эффективной интеграции 1С и Qlik
ATK_BiView - инструмент эффективной интеграции 1С и Qlik
Marina Payvina
 

What's hot (20)

тема 4 2
тема 4 2тема 4 2
тема 4 2
 
основные понятия баз данных
основные понятия баз данныхосновные понятия баз данных
основные понятия баз данных
 
Необходимые условия качества данных: MDM, Шина, Хранилище данных
Необходимые условия качества данных: MDM, Шина, Хранилище данныхНеобходимые условия качества данных: MDM, Шина, Хранилище данных
Необходимые условия качества данных: MDM, Шина, Хранилище данных
 
тема 5 2
тема 5 2тема 5 2
тема 5 2
 
Концепция применения онтологических структур в ERP-системах
Концепция применения онтологических структур в ERP-системахКонцепция применения онтологических структур в ERP-системах
Концепция применения онтологических структур в ERP-системах
 
Технологии анализа и обработки данных
Технологии анализа и обработки данныхТехнологии анализа и обработки данных
Технологии анализа и обработки данных
 
Роль MDM в информатизации бизнеса
Роль MDM в информатизации бизнесаРоль MDM в информатизации бизнеса
Роль MDM в информатизации бизнеса
 
Подход КРОК к построению MDM-решения
Подход КРОК к построению MDM-решенияПодход КРОК к построению MDM-решения
Подход КРОК к построению MDM-решения
 
Как Microsoft Power BI меняет процесс принятия управленческих решений?
Как Microsoft Power BI меняет процесс принятия управленческих решений?Как Microsoft Power BI меняет процесс принятия управленческих решений?
Как Microsoft Power BI меняет процесс принятия управленческих решений?
 
Новая жизнь Ваших даных с PowerBI
Новая жизнь Ваших даных с PowerBI Новая жизнь Ваших даных с PowerBI
Новая жизнь Ваших даных с PowerBI
 
13 расширенные возможности корпоративных приложений, основы субд
13 расширенные возможности корпоративных приложений, основы субд13 расширенные возможности корпоративных приложений, основы субд
13 расширенные возможности корпоративных приложений, основы субд
 
Александр Ефанов, IBS. Преобразование Big Data в Smart Data
Александр Ефанов, IBS. Преобразование Big Data в Smart DataАлександр Ефанов, IBS. Преобразование Big Data в Smart Data
Александр Ефанов, IBS. Преобразование Big Data в Smart Data
 
Oracle WebContent Suite
Oracle WebContent SuiteOracle WebContent Suite
Oracle WebContent Suite
 
лекция № 6
лекция № 6лекция № 6
лекция № 6
 
Реверс-инжиниринг требований в проекте по миграции КИС. Алексей Смирнов
Реверс-инжиниринг требований в проекте по миграции КИС.  Алексей СмирновРеверс-инжиниринг требований в проекте по миграции КИС.  Алексей Смирнов
Реверс-инжиниринг требований в проекте по миграции КИС. Алексей Смирнов
 
тема 4
тема 4тема 4
тема 4
 
тема 5
тема 5тема 5
тема 5
 
раздел 2 модели и типы данных
раздел 2  модели и типы данныхраздел 2  модели и типы данных
раздел 2 модели и типы данных
 
Подход КРОК к построению MDM
Подход КРОК к построению MDMПодход КРОК к построению MDM
Подход КРОК к построению MDM
 
ATK_BiView - инструмент эффективной интеграции 1С и Qlik
ATK_BiView - инструмент эффективной интеграции 1С и QlikATK_BiView - инструмент эффективной интеграции 1С и Qlik
ATK_BiView - инструмент эффективной интеграции 1С и Qlik
 

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

Внедрение единого профиля клиента банка на базе MDM-системы IBM InfoSphere Se...
Внедрение единого профиля клиента банка на базе MDM-системы IBM InfoSphere Se...Внедрение единого профиля клиента банка на базе MDM-системы IBM InfoSphere Se...
Внедрение единого профиля клиента банка на базе MDM-системы IBM InfoSphere Se...
КРОК
 
Konspekt
KonspektKonspekt
KonspektArtem
 
Модуль ведения нормативно-справочной информации Единой Медицинской Информацио...
Модуль ведения нормативно-справочной информации Единой Медицинской Информацио...Модуль ведения нормативно-справочной информации Единой Медицинской Информацио...
Модуль ведения нормативно-справочной информации Единой Медицинской Информацио...
КРОК
 
презентация8
презентация8презентация8
презентация8student_kai
 
001
001001
001JIuc
 
Проектируем облачный веб-сервис "по-взрослому" (Сергей Рыжиков)
Проектируем облачный веб-сервис "по-взрослому" (Сергей Рыжиков)Проектируем облачный веб-сервис "по-взрослому" (Сергей Рыжиков)
Проектируем облачный веб-сервис "по-взрослому" (Сергей Рыжиков)Ontico
 
Sql Server Data Services
Sql Server Data ServicesSql Server Data Services
Sql Server Data ServicesMedia Gorod
 
ФАС - внедрение КРОК-НСИ
ФАС - внедрение КРОК-НСИФАС - внедрение КРОК-НСИ
ФАС - внедрение КРОК-НСИ
КРОК
 
9946
99469946
9946
nreferat
 
Моделирование для NoSQL БД
Моделирование для NoSQL БДМоделирование для NoSQL БД
Моделирование для NoSQL БД
Andrew Sovtsov
 
JavaScript Базовый. Занятие 01.
JavaScript Базовый. Занятие 01.JavaScript Базовый. Занятие 01.
JavaScript Базовый. Занятие 01.
Igor Shkulipa
 
Inroducing SAP ABAP - Presentation with basics SAP ABAP
Inroducing SAP ABAP - Presentation with basics SAP ABAPInroducing SAP ABAP - Presentation with basics SAP ABAP
Inroducing SAP ABAP - Presentation with basics SAP ABAP
mikhailshurgulaya
 
дипломная презентация по автоматизированным информационным системам
дипломная презентация по автоматизированным информационным системамдипломная презентация по автоматизированным информационным системам
дипломная презентация по автоматизированным информационным системам
Ivan Simanov
 
Росстат - внедрение КРОК-НСИ
Росстат - внедрение КРОК-НСИРосстат - внедрение КРОК-НСИ
Росстат - внедрение КРОК-НСИ
КРОК
 
DATA CLUSTER
 DATA CLUSTER DATA CLUSTER
DATA CLUSTER
soft-point
 
ОРГАНИЗАЦИЯ СЕТЕВОГО ВЗАИМОДЕЙСТВИЯ УЗЛОВ РАСПРЕДЕЛЕННОЙ СИСТЕМЫ ХРАНЕНИЯ ДАННЫХ
ОРГАНИЗАЦИЯ СЕТЕВОГО ВЗАИМОДЕЙСТВИЯ УЗЛОВ РАСПРЕДЕЛЕННОЙ СИСТЕМЫ ХРАНЕНИЯ ДАННЫХОРГАНИЗАЦИЯ СЕТЕВОГО ВЗАИМОДЕЙСТВИЯ УЗЛОВ РАСПРЕДЕЛЕННОЙ СИСТЕМЫ ХРАНЕНИЯ ДАННЫХ
ОРГАНИЗАЦИЯ СЕТЕВОГО ВЗАИМОДЕЙСТВИЯ УЗЛОВ РАСПРЕДЕЛЕННОЙ СИСТЕМЫ ХРАНЕНИЯ ДАННЫХ
ITMO University
 
Инфраструктура Big data - от источников до быстрых витрин - версия для МИСиС
Инфраструктура Big data - от источников до быстрых витрин - версия для МИСиСИнфраструктура Big data - от источников до быстрых витрин - версия для МИСиС
Инфраструктура Big data - от источников до быстрых витрин - версия для МИСиС
Yury Petrov
 
Презентация Microsoft PowerPoint
Презентация Microsoft PowerPointПрезентация Microsoft PowerPoint
Презентация Microsoft PowerPointwebhostingguy
 

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

Внедрение единого профиля клиента банка на базе MDM-системы IBM InfoSphere Se...
Внедрение единого профиля клиента банка на базе MDM-системы IBM InfoSphere Se...Внедрение единого профиля клиента банка на базе MDM-системы IBM InfoSphere Se...
Внедрение единого профиля клиента банка на базе MDM-системы IBM InfoSphere Se...
 
Konspekt
KonspektKonspekt
Konspekt
 
презентация8
презентация8презентация8
презентация8
 
Модуль ведения нормативно-справочной информации Единой Медицинской Информацио...
Модуль ведения нормативно-справочной информации Единой Медицинской Информацио...Модуль ведения нормативно-справочной информации Единой Медицинской Информацио...
Модуль ведения нормативно-справочной информации Единой Медицинской Информацио...
 
презентация8
презентация8презентация8
презентация8
 
001
001001
001
 
Проектируем облачный веб-сервис "по-взрослому" (Сергей Рыжиков)
Проектируем облачный веб-сервис "по-взрослому" (Сергей Рыжиков)Проектируем облачный веб-сервис "по-взрослому" (Сергей Рыжиков)
Проектируем облачный веб-сервис "по-взрослому" (Сергей Рыжиков)
 
Sql Server Data Services
Sql Server Data ServicesSql Server Data Services
Sql Server Data Services
 
ФАС - внедрение КРОК-НСИ
ФАС - внедрение КРОК-НСИФАС - внедрение КРОК-НСИ
ФАС - внедрение КРОК-НСИ
 
9946
99469946
9946
 
Моделирование для NoSQL БД
Моделирование для NoSQL БДМоделирование для NoSQL БД
Моделирование для NoSQL БД
 
JavaScript Базовый. Занятие 01.
JavaScript Базовый. Занятие 01.JavaScript Базовый. Занятие 01.
JavaScript Базовый. Занятие 01.
 
Inroducing SAP ABAP - Presentation with basics SAP ABAP
Inroducing SAP ABAP - Presentation with basics SAP ABAPInroducing SAP ABAP - Presentation with basics SAP ABAP
Inroducing SAP ABAP - Presentation with basics SAP ABAP
 
дипломная презентация по автоматизированным информационным системам
дипломная презентация по автоматизированным информационным системамдипломная презентация по автоматизированным информационным системам
дипломная презентация по автоматизированным информационным системам
 
Projectarch
ProjectarchProjectarch
Projectarch
 
Росстат - внедрение КРОК-НСИ
Росстат - внедрение КРОК-НСИРосстат - внедрение КРОК-НСИ
Росстат - внедрение КРОК-НСИ
 
DATA CLUSTER
 DATA CLUSTER DATA CLUSTER
DATA CLUSTER
 
ОРГАНИЗАЦИЯ СЕТЕВОГО ВЗАИМОДЕЙСТВИЯ УЗЛОВ РАСПРЕДЕЛЕННОЙ СИСТЕМЫ ХРАНЕНИЯ ДАННЫХ
ОРГАНИЗАЦИЯ СЕТЕВОГО ВЗАИМОДЕЙСТВИЯ УЗЛОВ РАСПРЕДЕЛЕННОЙ СИСТЕМЫ ХРАНЕНИЯ ДАННЫХОРГАНИЗАЦИЯ СЕТЕВОГО ВЗАИМОДЕЙСТВИЯ УЗЛОВ РАСПРЕДЕЛЕННОЙ СИСТЕМЫ ХРАНЕНИЯ ДАННЫХ
ОРГАНИЗАЦИЯ СЕТЕВОГО ВЗАИМОДЕЙСТВИЯ УЗЛОВ РАСПРЕДЕЛЕННОЙ СИСТЕМЫ ХРАНЕНИЯ ДАННЫХ
 
Инфраструктура Big data - от источников до быстрых витрин - версия для МИСиС
Инфраструктура Big data - от источников до быстрых витрин - версия для МИСиСИнфраструктура Big data - от источников до быстрых витрин - версия для МИСиС
Инфраструктура Big data - от источников до быстрых витрин - версия для МИСиС
 
Презентация Microsoft PowerPoint
Презентация Microsoft PowerPointПрезентация Microsoft PowerPoint
Презентация Microsoft PowerPoint
 

More from Sergey Gorshkov

База знаний службы техподдержки
База знаний службы техподдержкиБаза знаний службы техподдержки
База знаний службы техподдержки
Sergey Gorshkov
 
Логическая витрина для доступа к большим данным
Логическая витрина для доступа к большим даннымЛогическая витрина для доступа к большим данным
Логическая витрина для доступа к большим данным
Sergey Gorshkov
 
Система оценки производственного потенциала
Система оценки производственного потенциалаСистема оценки производственного потенциала
Система оценки производственного потенциала
Sergey Gorshkov
 
Trinidata team
Trinidata teamTrinidata team
Trinidata team
Sergey Gorshkov
 
Команда компании ТриниДата
Команда компании ТриниДатаКоманда компании ТриниДата
Команда компании ТриниДата
Sergey Gorshkov
 
Система поддержки принятия решений
Система поддержки принятия решенийСистема поддержки принятия решений
Система поддержки принятия решений
Sergey Gorshkov
 
Система управления знаниями для анализа продаж
Система управления знаниями для анализа продажСистема управления знаниями для анализа продаж
Система управления знаниями для анализа продаж
Sergey Gorshkov
 

More from Sergey Gorshkov (7)

База знаний службы техподдержки
База знаний службы техподдержкиБаза знаний службы техподдержки
База знаний службы техподдержки
 
Логическая витрина для доступа к большим данным
Логическая витрина для доступа к большим даннымЛогическая витрина для доступа к большим данным
Логическая витрина для доступа к большим данным
 
Система оценки производственного потенциала
Система оценки производственного потенциалаСистема оценки производственного потенциала
Система оценки производственного потенциала
 
Trinidata team
Trinidata teamTrinidata team
Trinidata team
 
Команда компании ТриниДата
Команда компании ТриниДатаКоманда компании ТриниДата
Команда компании ТриниДата
 
Система поддержки принятия решений
Система поддержки принятия решенийСистема поддержки принятия решений
Система поддержки принятия решений
 
Система управления знаниями для анализа продаж
Система управления знаниями для анализа продажСистема управления знаниями для анализа продаж
Система управления знаниями для анализа продаж
 

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

  • 2. MDM-система Система 1 Система 2 Система 3 Сервис Источник 4 Источник N Интеграционная шина - ESB НСИ и мастер- данные Информационная модель модель данных программно доступна системам MDM– система является ядром централизованной архитектуры обмена. Она хранит: • Модель данных, • Нормативно-справочную информацию (классификаторы и т.п.), • Мастер-данные (общие каталоги объектов). основные данные программно доступны системам Централизованная архитектура обмена
  • 3. MDM хранит: • Структуру (схему, модель) данных; • Нормативно-справочную информацию (НСИ): классификаторы, наборы перечисляемых значений; • Собственно основные данные (перечни объектов, активов и т.д.). Структура данных выражается в следующих терминах: • Типы (классы) объектов (пример: клиент, виды сделок, сотрудники организации и т.п.). Типы образуют иерархию – например, тип «Компания» может быть вложен в тип «Организация», но эту информацию приложениям не обязательно обрабатывать; • Атрибуты объектов (пример: название, степень важности, ответственный сотрудник и т.п.). Каждый элемент основных данных описывается: • Уникальным идентификатором (GUID, абстрактный идентификатор); • Набором типов, к которым он относится. Каждый элемент может одновременно относиться к нескольким типам: например, ООО «Альфа» одновременно относится к классам «Компания» и «Покупатель», и получает перечень возможных атрибутов от обоих типов; • Значениями атрибутов (пример: название = ООО «Альфа»). Содержимое MDM-системы
  • 4. Транспорт сообщений реализуется средствами корпоративной шины (ESB). Для преобразования информации из формата каждого приложения в схему, описанную в модели, необходимо применить правила сопоставления, называемые правилами мэппинга. В процессе мэппинга происходит преобразование: • Типов объектов – из собственных типов данных приложений в те, которые определены в модели, и наоборот; • Идентификаторов – из локальных идентификаторов конкретных систем в глобальные идентификаторы MDM, и обратно; • Разрешение ссылок на другие объекты. Содержимое мастер-данных обычно синхронизируется между несколькими информационными системами: например, каталог активов содержится сразу в нескольких приложениях. При этом каждое приложение имеет собственное представление – структуру информации об объектах. MDM-система принимает запросы приложений на изменение состава мастер-данных, и уведомляет об этом другие приложения. Приложение B Приложение A Корпоратив- ная шина Мастер- данные Информационная модель Метаданные Мэппинг Транспорт Мэппинг Транспорт Можно поменять местами Принцип взаимодействия MDM с приложениями-потребителями
  • 5. Обмен данными между MDM и приложениями обычно организуется посредством очередей сообщений (MQ), хотя возможны и другие варианты (SOAP, REST и т.д.) MQ вход MQ выход MQ вход MQ выход Шина обмена данными MDM Приложение A MQ вход MQ выход Приложение B Со стороны каждого приложения организуются две очереди: для входящих и исходящих сообщений. Приложение помещает сообщения в одну очередь, и забирает полученные – из другой. Шина осуществляет маршрутизацию сообщений между очередями, в соответствии с настройками маршрутизации. В обмене MDM с приложениями используются следующие разные типы сообщений (пакетов) для выполнения разных операций. Транспорт
  • 6. DataModelRequest Стартовый элемент (не обязательно) Схема данных MDM EntityRequest Код сущности Package Информация о сущности ChangeRequest Информация о сущности OperationResults DataModel Результат операции CatalogRequest Код типа сущностей Входящий пакет Исходящий пакет API MDM: типы запросов и ответов
  • 7. Редактирование структуры данных осуществляется в интерфейсе редактора MDM, хотя при необходимости может быть предоставлен и программный интерфейс. MDM хранит перечень типов сущностей, доступных каждой из систем, подключенных к ней. MDM выдает информацию о доступной каждому приложению части информационной модели в виде XML-пакета. Пакет содержит фиксированный набор тегов для передачи информации о типах (классах), атрибутах, и их взаимосвязи. Пример фрагмента пакета с моделью данных, выгружаемый MDM в приложения посредством шины: Получение структуры модели от MDM
  • 8. Приложение, получив модель данных, должно разобрать ее, и сохранить. Затем приложение предоставляет возможность в интерфейсе настройки выполнить мэппинг (сопоставление) элементов данных MDM и своего локального хранилища данных. Для всех элементов локального хранилища данных должно быть добавлено поле «Код MDM», которое будет хранить значения GUID для записей. Мэппинг заключается в выборе для каждого типа объектов MDM соответствующего ему элемента модели данных приложения. Мэппинг может происходить как на уровне таблиц, так и на уровне логических объектов (например, для 1С мэппинг осуществляется на сущности типа «Справочник.Клиенты»). Затем внутри каждого типа данных выполняется мэппинг атрибутов. В случае, если однозначный мэппинг невозможен, в интерфейсе назначается процедура-обработчик, которая будет вызываться для преобразования получаемых и отправляемых данных из локального формата в формат MDM. Может быть создана библиотека типовых процедур такого рода. Обработка структуры данных со стороны приложений
  • 9. Данные могут поступать от MDM: • в случае их изменения; • по запросу приложения. В любом случае, MDM отправляет приложению XML-пакет следующего вида: Всегда передается полный набор атрибутов объекта, т.е. исчезновение атрибута говорит об очистке его значения. В некоторых случаях атрибуты могут иметь более одного значения для каждого объекта. Приложение должно быть готово к обработке этой ситуации в случаях, когда его модель данных это позволяет. Получение данных от MDM
  • 10. Приложение может иметь право на создание/изменение объектов в MDM. Запрос на изменение данных помещается в виде XML-пакета в исходящую очередь, откуда передается MDM. Формат запроса аналогичен показанному выше, с той разницей, что при создании объекта приложение должно передать его локальный идентификатор. Можно создать несколько объектов одним запросом. Пример пакета выглядит так: MDM возвращает сообщение с результатом операции, которое содержит в т.ч. сведения для привязки кода MDM: Передача данных в MDM
  • 11. Возможность отправлять запросы к MDM предназначена для восстановления после сбоев передачи. В случае, если приложение получило ссылку на неизвестный ему объект, оно может запросить информацию об объекте от MDM: MDM возвращает ответ в виде обычного пакета Package. Как со стороны MDM, так и со стороны приложения (если у него есть право на редактирование элементов какого-либо типа), реализуется возможность инициировать полную выгрузку объектов выбранного типа. Запрос данных из MDM
  • 12. Графовая база данных Apache Jena/Fuseki Высокопроизводительный кэш Redis Слой логики приложения Слой контроля доступа Слой программного интерфейса обмена (MQ, SOAP, REST и др.) Инструмент редактирования информационной модели редактор Onto.pro Инструмент просмотра информационной модели АрхиГраф.СУЗ Инструмент администрирования доступа Стороннее ПО (open source) ПО компании ТриниДата Компоненты АрхиГраф.MDM GUI API Программная архитектура АрхиГраф.MDM
  • 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. Продукты для построения централизованной архитектуры обмена 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