Статья

MS SQL Server 2012 раскладывает данные "по полочкам"

Бизнес Интеграция Системное ПО Тендеры
мобильная версия

Любой бизнес опирается на информацию. Данные о заказчиках и контрагентах, собственных сотрудниках, продажах и поставках — все это содержится в десятках и сотнях таблиц баз данных, без которых сегодня немыслима успешная деловая деятельность. База данных (БД) является виртуальным аналогом вместительного шкафа с документами — это единое место для хранения, упорядочения и доступа ко всей информации предприятия.

Но всегда ли бизнес эффективно хранит и использует эту информацию?

Традиционно система управления базой данных (СУБД) считается лишь хранилищем информации для определенного программного приложения. Причем последнее обычно поддерживает работу с различными СУБД от нескольких производителей. Например, "1С: Предприятие 8.2" работает с разными версиями SQL Server, PostgreSQL, IBM DB2, Oracle Database и т. д.

По этой причине многие заказчики, как правило, не задумываются о том, какую СУБД приобрести для своих бизнес-приложений. Основным критерием для них остаётся тот факт, что она должна удовлетворять системным требованиям бизнес-приложения и предлагаться по доступной цене (а в некоторых случаях – и бесплатно). Немногие задумывается над тем, что СУБД может обладать дополнительным и очень полезным функционалом. В то же время бизнес часто ставит перед ИТ-системами новые задачи, которые уже не в состоянии решить стандартные хранилища данных. Речь идет, прежде всего, о производительности: сегодня количество данных в компаниях увеличивается настолько быстрыми темпами, что старые технологии по хранению и обработке информации уже не позволяют обеспечить приемлемые показатели. Соответственно, решение этой задачи является актуальной проблемой, доставляющей немало хлопот современным предприятиям.


Довольно часто бизнесу приходится работать с данными из различных источников

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

И, наконец, третья задача связана с обработкой, "очисткой" данных, поступающих из разных источников, для хранения их в некой унифицированной форме. На языке экспертов этот процесс обозначают термины MDM (Master Data Management) и DQS (Data Quality Service). Вышеуказанную задачу легко пояснить на примере сортировки писем в почтовом отделении. Сортировщик группирует письма исходя из адреса доставки, однако люди часто пишут его по-разному. Так, если город назначения – Москва, то одни его пишут как г. Москва, другие – просто Москва, третьи — гор. Москва, иностранцы могут написать Moscow или Moskva, встречается также ошибочное написание, например Масква или Moskwa. Но когда сортировщик на почте просматривает эти адреса, он понимает, что это все вариации в написании одного и того же адреса. В то же время, для компьютера г. Москва и гор. Москва — это разные адреса, и чтобы заставить его обрабатывать как один адрес, данные должны предварительно пройти "очистку" и унификацию.

Для решения трех вышеописанных задач производители СУБД предлагают дополнительные решения. За отдельную плату. Например, для решения задач бизнес-аналитики компания Oracle предлагает систему Oracle Business Intelligence (BI). Это обширный комплекс технологий и приложений, обеспечивающих представление внутренней организации бизнеса и включающих BI-приложения, технологические BI-платформы и хранилища данных. В свою очередь, IBM, разработчик известной СУБД DB2, поставляет своим заказчикам аналитическую систему IBM Cognos Business Intelligence.

Для подготовки данных в соответствии со стандартами НСИ (нормативно-справочной информации) IBM предлагает решение класса MDM/DQS: IBM WebSphere Product Center

Впрочем, всегда ли необходимо приобретать дополнительные возможности за дополнительные деньги? Новый SQL Server 2012 обладает широким и разносторонним функционалом, значительно выходящим за рамки стандартной СУБД. Более того, уже традиционно Microsoft включает в состав своего ПО модули, которые у других производителей поставляются как отдельные платные продукты. Как решаются в новой СУБД MS SQL Server все три вышеописанные задачи?

Многообразие технологий

SQL Server 2012 содержит большой набор технологий, отвечающих за управление данными предприятия (EIM, Enterprise Information Management) и позволяющих решать ряд проблем, с которыми сталкивается компания, работающая с большим количеством номенклатурной, учетной и справочной информации. Функциональность EIM в SQL Server 2012 реализуется такими сервисами, как Data Quality Services (DQS), Master Data Services (MDS) и SQL Server Integration Services (SSIS). Но если механизмы MDS, отвечающие за создание и поддержание мастер-данных, и механизмы SSIS, ведающие процессами ETL, были значительно обновлены и улучшены в новой версии, то механизм DQS является нововведением, появившимся только в SQL 2012.

Функции MDM и DQS

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

Термин MDM (Master Data Management) на русский язык переводится как "служба управления нормативно-справочной информацией". Фактически, это система управления мастер-данными, которая направлена на то, чтобы привести их единому стандарту (так сказать, к "общему знаменателю"). Мы уже упоминали выше про суть MDM на примере сортировки писем в почтовых отделениях. А вот пример, более приближенный к реальному бизнесу. Крупный розничный магазин, торгующий канцелярскими товарами, заключил контракты с множеством поставщиков, которые поставляют ему белую бумагу для принтеров и копиров. При этом один контрагент указывает в счет-фактуре для оплаты бумаги свой товар как "Бумага белая копировальная", другой — "бумага для принтера", третий — "бумага Xerox". И хотя на самом деле это одна и та же бумага, в ERP-системе предприятия она занесена под разными названиям. В результате, работа с подобными "сырыми" данными приводит к значительным сложностям при сбыте и учете.

Чтобы решить проблему подобного "разнобоя", используется мастер-справочник: поступающая информация сопоставляется с мастер-данными в справочнике.

Впервые функция MDM появилась еще в SQL Server 2008 R2, однако возможности MDM были значительно ограничены. В 2012-й версии функционал MDM улучшен и доработан.

Прежде всего, появилась возможность выполнять групповые операции над записями. В старой версии SQL Server эта функция отсутствовала. Кроме того, раньше требовалась довольно сложная работа по преобразованию данных в такой формат, который "понятен" MDM-функции. Теперь работа с MDM стала гораздо проще, поскольку можно предоставлять данные в своем "родном" формате.

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

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

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

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

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

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

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