Обзор Master Data Services в SQL Server 2008 R2

Наиболее актуальная версия статьи: Master Data Services для управления НСИ. Ниже приведена статья для SQL Server 2008 R2.

SQL Server Master Data Services – это компонент продукта SQL Server 2008 R2, предназначенный для управления нормативно-справочной информацией.

Проблемы с НСИ

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

Рис. 1. Системы организации и хранилище данных

Можно выделить две основных причины проблем при работе с нормативно-справочной информацией.

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

Например, если клиент сменил место жительства, информация о нем в справочнике клиентов может оперативно обновляться в одной системе, а в остальных – с задержкой по времени.

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

Вторая причина связана с тем, что в организациях нет систем, позволяющих сотрудникам совместно и в соответствии с утвержденным регламентом управлять мета-данными. Нет функций управления измерениями и атрибутами. Нет возможности управления мета-информацией через Интернет с использованием веб-браузера.

В результате полученных несоответствий справочников возникают ошибки при работе в системах и ошибки в отчетах организации.

Процесс управления иерархиями; изменения в BI-решение

База данных Master Data Services используется для хранения нормативно-справочной информации.

Процесс управления иерархиями построен следующим образом.

Рис. 2. Управление метаданными

  1. Администратор системы перед началом ее использования определяет модели, сущности, атрибуты и иерархии.
  2. При необходимости элементы сущностей, атрибуты и иерархии могут быть созданы на основании данных из существующих систем организации. Загрузку можно осуществить, например, с использованием пакета интеграции SQL Server Integration Services.
  3. Пользователи, подключенные к Интернету или интранету, могут вносить изменения в справочники, на которые у них есть права доступа.
  4. В результате созданные измерения загружаются в хранилище данных и используются для формирования аналитических кубов. Загрузка измерений, как правило, производится с использованием Сервисов интеграции SQL Server.
  5. Созданные в системе справочники также могут загружаться в другие системы организации.

Таким образом, сервисы мета-данных SQL Server вносят изменение в структуру BI-решения. Управление измерениями производится в Master Data Services, соответственно, измерения грузятся в хранилище данных из этой системы. Показатели, как и ранее, загружаются в хранилище данных из соответствующих источников данных организации.

Рис. 3. Загрузка показателей и измерений в ХД при использовании MDS

История Microsoft SQL Server 2008 R2 Master Data Services

В июне 2007 года компания Microsoft приобрела вендора MDM под названием Stratature.

Затем в приобретенное решение команда разработки Microsoft:

  • добавила веб-сервис Windows Communication Foundation;
  • оптимизировала код и структуру базы данных;
  • добавила функцию размещения моделей;
  • улучшила систему безопасности;
  • добавила API, покрывающий все функции MDS и поддерживающий как блоковые, так и ориентированные на сообщения функции;
  • переписала пользовательский интерфейс, который сейчас реализован через MDS API (вместо того, чтобы работать напрямую через базу данных и хранимые процедуры).

В августе 2009 года компонент Master Data Services включен в состав SQL Server 2008 R2 в составе CTP2.

Предназначение MDS

Предназначение Master Data Services – приведение в соответствие справочников в системах организации благодаря созданию авторитетного источника – шины мета-данных.

Функционал системы построен таким образом, чтобы уменьшить стоимость управления мета-данными за счет того, что:

  • интерфейс управления через веб-браузер позволяет вовлечь необходимых сотрудников в процесс управления сущностями и иерархиями;
  • программный интерфейс (MDS API) позволяет настроить управление мета-данными из внешних систем;
  • функции управления версиями, нотификации и бизнес-правила позволяют наиболее простым способом настроить гибкий процесс обеспечения корректности мета-данных;
  • функция размещения модели позволяет экспортировать созданную модель из системы разработки и опубликовать ее в эксплуатируемой системе MDS.

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

Базовые понятия MDS

Базовые понятия, которыми оперирует Master Data Services, приведены на рис. 4.

Рис. 4. Базовые понятия, которыми оперирует Master Data Services

 

Модель измерения (Dimension Model) – содержит в себе сущности, атрибуты, элементы сущностей и различные варианты иерархий для экспорта в соответствующие системы.

Сущность (Entity) является контейнером набора элементов. Примером сущности для ритейла является продаваемый «Продукт».

Элемент (Member) – это лист, консолидированный элемент или элемент коллекции. Примеры элементов для сущности «Продукт»: велосипеды, горные велосипеды, модель горного велосипеда…

Атрибут – это характеристика элемента. Например, все элементы модели «Продукт» имеют атрибут «Цвет», а конкретный велосипед может иметь значение атрибута – синий. Атрибуты могут быть основаны на определенной ранее сущности (domain based), произвольными (free-form), в виде файла (file). Можно настраивать отображение атрибутов на разных закладках с именами (attribute groups).

Иерархия (Hierarchy) – это структура, представляющая элементы сущности с помощью консолидированных элементов и уровней для обеспечения удобства анализа данных. Иерархию могут формировать сущности, сформированные по уровням (например, категория продуктов, подкатегория продуктов, модель продукта). Иерархию также можно построить на основании связей типа «родитель-потомок» (или Parent-child).

Создание модели

Для работы с MDS необходимо сначала создать соответствующие модели, затем создаться сущности, определить необходимые атрибуты для сущностей, определить структуру измерений и так далее. Эти действия производятся администратором или редактором соответствующей модели в административной части веб-приложения «Master Data Manager».

Импорт

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

Рис. 5. Импорт данных из источников данных в базу MDS

Сначала данные из источника необходимо загрузить в промежуточную область базы MDS. Преобразование данных из источника к виду таблиц промежуточной области можно осуществить с использованием скрипта T-SQL или пакета SQL Server Integration Services. Когда записи из источника загружены в промежуточную область, из интерфейса Master Data Manager необходимо запустить команду загрузки в определенную модель определенной версии.

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

Редактирование иерархий

После того, как импорт осуществлен, пользователи могут редактировать загруженные в систему элементы и менять вид иерархий (рис. 6).

Рис. 6. Изменение структуры иерархий

Демонстрация: Импорт мета-информации, редактирование справочника и иерархии

Управление версиями и задание бизнес-правил

Рассмотрим объекты MDS, позволяющие настраивать сложный процесс управления мета-информацией, основанный на событиях.

Одним из этих объектов являются версии моделей, которые содержат в себе определенную версию всех объектов модели (элементов, значений атрибутов, элементов иерархий, коллекций). Другим объектом являются бизнес-правила, которые применяются ко всем открытым версиям.

Процесс управления версиями

Процесс управления версиями изображен на рис. 7.

Рис. 7. Процесс управления версиями

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

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

Для версии можно осуществлять ревизию осуществленных с ней транзакций (операций) и анализировать соответствие версии требованиям бизнес-правил.

Бизнес-правила и нотификации

Бизнес-правила позволяют проверить корректность той или иной версии модели, задать значения по умолчанию, разослать нотификации, если требуется внесение корректировок в мета-информацию.

Бизнес-правила содержат критерий оценки – логическое условие проверки. Если это условие не выполняется, система инициирует выполнение соответствующего действия.

Действия могут быть четырех типов.

  1. «Default value»задают значение того или иного атрибута по умолчанию (при создании элемента справочника).
  2. «Change value» — устанавливают определенное значение по результатам проверки.
  3. «Validation» — в случае невыполнения условия рассылают сообщение адресатам, имеющим права на элемент, для которого задано бизнес-правило.
  4. «External action» — запускают бизнес-процессSharePoint.

Бизнес-правила применяются после добавления, удаления, перемещения в иерархии элементов справочников, в случае инициации поверки определенного пользователем набора элементов, в случае проверки версии в целом.

Интерфейс создания бизнес-правила в веб-приложении Master Data Manager приведен на рис. 8.

Рис. 8. Создание бизнес-правила

Процесс управления

В результате совместного использования версий и бизнес-правил можно выстроить сложный процесс управления мета-данными, основанный на событиях. Пример процесcа приведен на рис. 9.

Рис. 9. Пример процесса управления мета-данными

Процесс управления мета-данными для конкретного элемента может состоять из следующих шагов.

  1. Сначала элементы создаются путем импорта из внешних систем, либо пользователи создают новые элементы.
  2. Затем в результате проверок задаются значения по умолчанию, а также рассылаются нотификации пользователям, которые ответственны за создание и обеспечение корректности значений тех или иных атрибутов.
  3. После того, как требуемые значения атрибутов заполнены в результате выполнения соответствующего бизнес-правила, соответствующему сотруднику высылается запрос на утверждение элемента.
  4. После выполнения всех бизнес-правил элемент можно загружать во внешнюю систему с использованием пакета интеграции.

Все изменения элементов справочников и перемещения элементов в иерархиях отражаются в журнале транзакций, который можно также посмотреть в интерфейсе Master Data Manager (рис. 10).

Рис. 10. Просмотр журнала изменений мета-данных

Демонстрация: создание бизнес-правила, изменение статуса версии, просмотр журнала

Экспорт мета-данных из базы MDS во внешние системы

Для экспорта мета-данных из базы MDS во внешние системы необходимо создать так называемую подписку, в результате чего в базе данных MDS будет создано представление (или View) SQL Server, выдающее в результате выполнения соответствующий список элементов. Далее экспорт данных из этого представления можно производить стандартным способом с использованием SQL Server Integrations Services.

Рис. 11. Экспорт мета-данных из базы MDS во внешние системы

Демонстрация: Создание подписки для экспорта мета-данных во внешнюю систему

Безопасность

Для предоставления доступа к веб-приложению «Master Data Manager» в нем необходимо добавить существующие группы или пользователей, которые могут быть из домена Active Directory. В программе можно создавать доменные группы и добавлять к ним пользователей. Затем в веб-приложении «Master Data Manager» можно задать права для групп и пользователей.

Когда пользователь открывает «Master Data Manager» в веб-браузере, он автоматически входит под своей учетной записью в Active Directory.

Права можно раздавать на следующие объекты:

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

Классы для веб-сервисов

В MDS также реализован программный интерфейс, позволяющий управлять всеми объектами решения. Ниже приведены некоторые методы интерфейса IService:

  • AnnotationsDelete/Update
  • BusinessRulesClone/Create/Delete/Get/PaletteSet/Publish/Update
  • EntityMembersCopy/Create/Delete/Get/Merge/Update
  • ExportViewCreate/Delete/ListGet/Update
  • HierarchyMembersGet
  • MetadataClone/Create/Delete/Get/Update
  • ModelMembersBulkDelete/BulkMerge/BulkUpdate/Get
  • SecurityPrivilegesClone/Create/Delete/Get
  • StagingClear/Get/Process
  • ValidationGet/Process
  • VersionCopy

Видно, что интерфейс позволяет управлять всеми объектами системы, такими как комментарии к записям, бизнес-правила, сущности, подписки, иерархии, модели, элементы модели, права доступа, промежуточная область, версии…

Следовательно, функции MDS можно интегрировать в любую систему организации незаметно для пользователей.

Заключение

Шина мета-данных

Master Data Services – это система управления иерархиями и атрибутами, входящая в комплект поставки SQL Server 2008 R2 (начиная с Enterprise Edition).

Она может быть использована как единый авторитетный источник мета-данных организации.

Для мета-данных обеспечивается версионность и фиксация всех изменений над мета-данными.

Портал управления

Управление мета-данными осуществляется через портал управления, который позволяет осуществлять редактирование объектов системы, таких как модели, сущности, иерархии, атрибуты.

В состав административных функций входят построение моделей измерений, создание сущностей, групп атрибутов, иерархий, а также управление бизнес-правилами.

В системе есть набор стандартных отчетов, которые позволяют проанализировать модели мета-данных (состав, транзакции, структуру иерархий, сравнение версий) и настройки безопасности для групп и пользователей.

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

Процесс управления мета-данными

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

Платформа для управления мета-данными

MDS является платформой для управления мета-данными, позволяющей описать любую предметную область.

Предусмотрена функция размещения модели с экземпляра MDS для разработки на экземпляр MDS, находящийся в действующей эксплуатации. Модель переносится в виде файла специализированного формата.

Программный интерфейс MDS позволяет написать код для управления всеми объектами системы.

Ресурсы

Добавить комментарий

Заполните поля или щелкните по значку, чтобы оставить свой комментарий:

Логотип WordPress.com

Для комментария используется ваша учётная запись WordPress.com. Выход / Изменить )

Фотография Twitter

Для комментария используется ваша учётная запись Twitter. Выход / Изменить )

Фотография Facebook

Для комментария используется ваша учётная запись Facebook. Выход / Изменить )

Google+ photo

Для комментария используется ваша учётная запись Google+. Выход / Изменить )

Connecting to %s

%d такие блоггеры, как: