Обзор Master Data Services в SQL Server 2008 R2Источник: microsoftbi
Открыть в полный размер' href="http://msftbi.files.wordpress.com/2010/01/export.jpg" target=_blank style=color:white;>Открыть в полный размер' href="http://msftbi.files.wordpress.com/2010/01/export.jpg" target=_blank>SQL Server Master Data Services - это компонент продукта SQL Server 2008 R2, предназначенный для управления нормативно-справочной информацией. Проблемы с НСИПроблемы с нормативно-справочной информацией организаций связаны с наличием в этих организациях большого количества систем, в каждой из которых отдельно могут редактироваться общие для этих систем справочники организации. Рис. 1. Системы организации и хранилище данных Можно выделить две основных причины проблем при работе с нормативно-справочной информацией. Первая состоит в том, что нет единого авторитетного источника нормативно-справочной информации, наблюдаются несоответствия справочников в различных системах организации, а некоторые элементы справочников управляются одновременно несколькими сотрудниками без какого-либо согласованного процесса. Например, если клиент сменил место жительства, информация о нем в справочнике клиентов может оперативно обновляться в одной системе, а в остальных - с задержкой по времени. Другой пример, наименования одного и того же продукта в различных филиалах могут отличаться. Вторая причина связана с тем, что в организациях нет систем, позволяющих сотрудникам совместно и в соответствии с утвержденным регламентом управлять мета-данными. Нет функций управления измерениями и атрибутами. Нет возможности управления мета-информацией через Интернет с использованием веб-браузера. В результате полученных несоответствий справочников возникают ошибки при работе в системах и ошибки в отчетах организации. Процесс управления иерархиями; изменения в BI-решениеБаза данных Master Data Services используется для хранения нормативно-справочной информации. Процесс управления иерархиями построен следующим образом. Рис. 2. Управление метаданными
Таким образом, сервисы мета-данных SQL Server вносят изменение в структуру BI-решения. Управление измерениями производится в Master Data Services, соответственно, измерения грузятся в хранилище данных из этой системы. Показатели, как и ранее, загружаются в хранилище данных из соответствующих источников данных организации. Рис. 3. Загрузка показателей и измерений в ХД при использовании MDS История Microsoft SQL Server 2008 R2 Master Data ServicesВ июне 2007 года компания Microsoft приобрела вендора MDM под названием Stratature. Затем в приобретенное решение команда разработки Microsoft:
В августе 2009 года компонент Master Data Services включен в состав SQL Server 2008 R2 в составе CTP2. Предназначение MDSПредназначение Master Data Services - приведение в соответствие справочников в системах организации благодаря созданию авторитетного источника - шины мета-данных. Функционал системы построен таким образом, чтобы уменьшить стоимость управления мета-данными за счет того, что:
В результате использования функций управления атрибутами и иерархиями в организации обеспечивается наличие качественных и непротиворечивых мета-данных, построенных в виде, требуемом для экспорта в соответствующие системы организации. Базовые понятия 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. Процесс управления версиями Сначала администратор копирует версию, чтобы открыть ее для изменений. Пользователи начинают вносить изменения в открытую версию. Затем, когда необходимые изменения внесены, администратор закрывает версию. После этого изменения в версию могут вносить только администратор и пользователи с правами изменения модели. Перед утверждением модели администратор должен добиться выполнения всех бизнес-правил. Когда модель полностью готова для использования в подписанных системах организации, администратор утверждает версию, после чего ее уже нельзя менять, но можно копировать. Затем при необходимости весь цикл может повториться. Для версии также можно задать флаг с целью идентификации различных стадий согласования. Например, это могут быть, "текущая", "черновая" и "основная" версии. Флаг версии может также использоваться для автоматизации загрузки в подписанные системы. Например, можно настроить загрузку версии с флагом "основная". Для версии можно осуществлять ревизию осуществленных с ней транзакций (операций) и анализировать соответствие версии требованиям бизнес-правил. Бизнес-правила и нотификацииБизнес-правила позволяют проверить корректность той или иной версии модели, задать значения по умолчанию, разослать нотификации, если требуется внесение корректировок в мета-информацию. Бизнес-правила содержат критерий оценки - логическое условие проверки. Если это условие не выполняется, система инициирует выполнение соответствующего действия. Действия могут быть четырех типов.
Бизнес-правила применяются после добавления, удаления, перемещения в иерархии элементов справочников, в случае инициации поверки определенного пользователем набора элементов, в случае проверки версии в целом. Интерфейс создания бизнес-правила в веб-приложении Master Data Manager приведен на рис. 8. Рис. 8. Создание бизнес-правила Процесс управленияВ результате совместного использования версий и бизнес-правил можно выстроить сложный процесс управления мета-данными, основанный на событиях. Пример процесcа приведен на рис. 9. Рис. 9. Пример процесса управления мета-данными Процесс управления мета-данными для конкретного элемента может состоять из следующих шагов.
Все изменения элементов справочников и перемещения элементов в иерархиях отражаются в журнале транзакций, который можно также посмотреть в интерфейсе 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:
Видно, что интерфейс позволяет управлять всеми объектами системы, такими как комментарии к записям, бизнес-правила, сущности, подписки, иерархии, модели, элементы модели, права доступа, промежуточная область, версии… Следовательно, функции MDS можно интегрировать в любую систему организации незаметно для пользователей. ЗаключениеШина мета-данныхMaster Data Services - это система управления иерархиями и атрибутами, входящая в комплект поставки SQL Server 2008 R2 (начиная с Enterprise Edition). Она может быть использована как единый авторитетный источник мета-данных организации. Для мета-данных обеспечивается версионность и фиксация всех изменений над мета-данными. Портал управленияУправление мета-данными осуществляется через портал управления, который позволяет осуществлять редактирование объектов системы, таких как модели, сущности, иерархии, атрибуты. В состав административных функций входят построение моделей измерений, создание сущностей, групп атрибутов, иерархий, а также управление бизнес-правилами. В системе есть набор стандартных отчетов, которые позволяют проанализировать модели мета-данных (состав, транзакции, структуру иерархий, сравнение версий) и настройки безопасности для групп и пользователей. Есть функция импорта данных из промежуточной области и экспорта данных во внешние системы путем создания подписок. Процесс управления мета-даннымиПроцесс управления мета-данными, основанный на событиях, настраивается с использованием версий, бизнес-правил и нотификаций. Платформа для управления мета-даннымиMDS является платформой для управления мета-данными, позволяющей описать любую предметную область. Предусмотрена функция размещения модели с экземпляра MDS для разработки на экземпляр MDS, находящийся в действующей эксплуатации. Модель переносится в виде файла специализированного формата. Программный интерфейс MDS позволяет написать код для управления всеми объектами системы. |