Интеграция

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

Импорт основных данных

Вместо ручного ввода данных в диспетчере основных данных их можно импортировать из существующих источников путем подготовки данных в базе данных MDS. Подготовить данные можно с помощью мастера импорта и экспорта SQL Server или SQL Server Integration Services. После подготовки следует использовать диспетчер основных данных для пакетной обработки данных. MDS переносит допустимые данные из подготовительных таблиц в таблицы основных данных в базе данных MDS и помечает все неправильные записи для исправления и повторной подготовки.

Для загрузки данных в подготовительные таблицы можно использовать любой метод. Самая важная часть этого процесса — гарантировать правильность данных в источнике и правильное задание значений в столбцах со сведениями об основных данных для MDS. Например, в каждой записи следует указать модель, куда загружаются основные данные. При подготовке данных используются следующие таблицы базы данных MDS:

  • tblSTGMember Используется для подготовки листовых элементов, консолидированных элементов и коллекций. Здесь указывается только имя и код элемента.
  • tblSTGMemberAttribute Используется для подготовки значений атрибутов элементов (по строке на атрибут). Также сюда включается код элемента для соотнесения атрибутов с элементами.
  • tblSTGRelationship Используется для подготовки родительских или одноранговых отношений элементов иерархии или коллекции.

Примечание Дополнительные сведения о столбцах таблиц и допустимых значениях обязательных столбцов см. в статье «База данных Master Data Services (службы Master Data Services)» справки SQL Server 2008 R2 по адресу https://msdn.microsoft.com/ru-ru/library/ee633808(SQL.105).aspx.

Следующий шаг — создание пакета в диспетчере основных данных. Для этого в пакете следует указать модель и версию, где будут храниться основные данные. Версия должна быть открыта или заблокирована для импорта данных из подготовительной таблицы. После начала обработки пакета службы MDS пытаются найти в подготовительных таблицах записи, соответствующие указанной модели, и загружают их в таблицы, соответствующие указанной версии модели. После завершения обработки пакета можно узнать состояние пакета в журнале подготовки, доступном в диспетчере основных данных (рис. 7-11).

Рисунок 7-11. Журнал пакета.

Если в журнале указаны ошибки при обработке пакета, можно выбрать пакет и открыть страницу ошибок, чтобы увидеть описание всех ошибок в записях, которые не удалось загрузить в базу данных MDS. В подготовительной таблице также можно проверить столбец Status_ID, по которому можно различать успешно обработанные и ошибочные записи (значения 1 и 2 соответственно). На этом этапе следует вернуться в исходную систему и изменить проблемные записи, чтобы устранить ошибки. Далее следует удалить из подготовительной таблицы все записи и повторно загрузить в нее измененные записи. Здесь можно создать новый пакет подготовки и повторять процесс до тех пор, пока все записи не будут загружены.

Экспорт основных данных

Безусловно, службы MDS не являются конечной точкой использования основных данных. Они могут выступать в роли входной системы или системы хранения для приложений, используемых в повседневной деятельности организации, например ERP-системы, CRM-системы или хранилища данных. После фиксации версии модели основные данные становятся доступны внешним приложениям через представления подписки в базе данных MDS. Любая система, способная брать данные из SQL Server, может использовать эти представления для доступа к актуальным основным данным.

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

Совет Можно упростить администрирование представления подписки, связав его с флагом версии, а не с конкретной версией. По мере изменения версий записей со временем флаг версии можно снять. Если не использовать флаги, изменение версии ведет к необходимости изменения всех представлений, связанных с версией, а их может быть весьма немало.

Далее следует выбрать сущность или производную иерархию в качестве основания для представления, а также задать его формат. Например, при выборе сущности в представлении можно использовать листовые элементы, консолидированные элементы или элементы коллекций и значения связанных атрибутов. При сохранении представления оно сразу становится доступно в базе данных MDS всем пользователям и приложениям, которым предоставлено разрешение на чтение из базы. Например, после создания представления подписки Product в диспетчере основных данных (это основанное на сущности представление листовых элементов) можно открыть новое представление в SQL Server Management Studio, как показано на рис. 7-12.

Рисунок 7-12. Представление подписки.