Среди нововведений SQL Server 2008 R2 отметим подсистему MDS (Master Data Services). По-русски она чаще всего называется «системой ведения нормативно-справочной информации предприятия». Классическое определение гласит, что под MDS понимается набор дисциплин, приложений и технологий для согласования и управления данными и метаданными, отражающих ключевые сущности бизнес-организации предприятия.
Идея в основе своей проста и логична: стандартизация и унификация данных с переходом от понятий «таблица» или «база данных» к понятиям типа «информация отдела продаж» или «корпоративный номенклатурный справочник», эти прикладные термины рассматриваются как первичные. Впрочем, когда речь заходит об определениях, то существуют тонкости и разночтения, но в целом считается, что реализация MDS должна обеспечивать управление структурой данных, настройку информационных моделей, реализацию подсистем бизнес-правил и рабочих процессов, работу с версионными данными, связи иерархий в ИС, средства безопасности и др.
Подсистема MDS в SQL Server 2008 R2 ведет свое происхождение от двух проектов. Во-первых, это программные средства компании Stratature (в частности, пакет +EDM), уже давно приобретенной Microsoft. Во-вторых, внутренние разработки Microsoft, где к моменту приобретения Stratature развивалось нечто аналогичное (благо, решения и рекомендации по MDM на основе SSIS существовали еще для SQL Server 2005). Результат интеграции проектов получил название «Бульдог» и рассматривался как часть SharePoint, однако на TechEd 2009 было анонсировано появление MDS в составе SQL Server 2008 R2.
Как предполагается (и уже реализовано в предварительных версиях), хранилище обеспечит предоставление информации для многих витрин данных, единые справочники для разных таблиц фактов – в конечном итоге единую систему координат для корпоративного информационного пространства. Мастер-данные извлекаются из разных OLTP-систем, средствами MDS обеспечивается их сопоставление и выявление единых сущностей (на основе анализа атрибутов и правил их комбинирования). Важный момент – работа с версиями данных. Благодаря этой возможности удается обеспечить корректное разрешение коллизий (скажем, если записи справочника были ошибочно отождествлены, их надо разделить) и учета изменений (понятно, что при переходе менеджера по продажам в другой регион его предыдущие продажи должны быть записаны за ним, причем по прошлому месту работы).
Центральная часть MDS – Master Data Services Hub – обеспечивает централизованное хранение сущностей и иерархий, а также управление ими. Он рассматривается как место, где находится «истина в последней инстанции» для всех уровней иерархии, при этом доступ к данным, разумеется, имеют только те, кому «по должности положено». Собственно управлением данными занимаются операторы – эксперты, знающие предметную область (учитывая важность данных, тут требуется известная квалификация), и пользующиеся специализированными инструментами (Master Data Manager).