АНАЛИЗ ДАННЫХ

До начала нынешнего столетия ПО корпорации Microsoft на рынке бизнес-аналитики (Business Intelligence, BI) в основном было представлено клиентскими офисными приложениями, в первую очередь электронными таблицами Excel. Правда, в конце 1990-х гг. компания решила создать специализированный OLAP-клиент - Data Analyzer, но дальше первой версии он, кажется, развития не получил, и акцент затем был сделан на том же Excel. В последние три-четыре года число клиентских BI-приложений пополнилось программами MapPoint (геоинформационная система) и Visio (визуализация структурированных данных).

Однако с выпуском на рубеже веков новой версии MS SQL Server 2000 компания Microsoft приступила к формированию на базе этой СУБД собственных серверных BI-технологий корпоративного уровня. BI-комплекс пополнялся поэтапно, за четыре года после выпуска самой СУБД в его составе появились также службы Analysis Services (службы OLAP для создания предварительно построенных кубов для быстрого интерактивного анализа), Data Transformation Services (инструменты для извлечения, преобразования и загрузки данных между операционными системами и системами бизнес-анализа), Accelerator for BI (система быстрой разработки для построения и развертывания аналитических приложений) и Reporting Services (управление отчетами).

В ноябре прошлого года корпорация выпустила MS SQL Server 2005, в котором комплекс BI-средств называется одним из трех ключевых новшеств этой системы (наряду с развитием собственно ядра СУБД и средств разработки). Именно в этом продукте серверная платформа бизнес-аналитики Microsoft приняла в общем-то законченный вид комплексного решения масштаба предприятия.

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

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

Рис. 1. Платформа управления данными SQL Server 2005

SQL Server 2005 содержит следующие основные компоненты:

- реляционная база данных (Relation Database) - безопасное, надежное, масштабируемое высокодоступное ядро с улучшенной производительностью, позволяющее работать как со структурированными, так и с неструктурированными (XML) данными, а также обеспечивающее поддержку .NET CLR (создание хранимых процедур, функций и триггеров на управляемом коде) и ADO;

- сервисы репликаций (Replication Services) - репликация данных для распределенных и мобильных приложений обработки информации, высокая доступность систем, масштабируемый параллелизм со вторичными хранилищами для отчетных решений предприятия и интеграция с разнородными системами, включая существующие базы данных Oracle;

- сервисы нотификаций (Notification Services) - развитые возможности уведомлений для разработки и внедрения масштабируемых приложений, способных доставлять своевременные персонализированные обновления информации множеству соединенных и мобильных устройств;

- сервисы интеграции (Integration Services) - возможности извлечения, преобразования и загрузки информации для хранилищ данных и интеграции данных в масштабе предприятия;

- аналитические сервисы (Analysis Services) - аналитическая обработка в реальном времени (OLAP) для быстрого и сложного анализа больших и смешанных наборов данных, при которой используется многомерное хранение кубов, и решение задач Data Mining (извлечение знаний);

- сервисы отчетов (Reporting Services) - исчерпывающее решение для управления как традиционными бумажными, так и интерактивными отчетами, основанными на Web-технологиях, а также для их создания и доставки;

- инструменты управления - SQL Server включает средства управления для настройки баз данных и развитого управления ими, обеспечивает тесную интеграцию с такими инструментами, как Microsoft Operations Manager (MOM) и Microsoft Systems Management Server (SMS). Стандартные протоколы доступа к данным существенно уменьшают время, необходимое для интеграции SQL Server с существующими системами. В дополнение встроена поддержка Web-служб для обеспечения взаимодействия с другими приложениями и платформами;

- инструменты разработки - SQL Server предлагает интегрированные инструменты разработки для ядра базы данных, извлечения, трансформации и загрузки данных, извлечения информации, OLAP и отчетности, которые тесно интегрированы с Microsoft Visual Studio для предоставления сквозных возможностей разработки приложений. Каждая главная подсистема SQL Server поставляется со своей собственной объектной моделью и набором API для расширения системы данных в любом направлении, которое уникально для вашего бизнеса.

Средства бизнес-аналитики

Комплекс средств интеллектуальной обработки данных - Integration Services, Analysis Services OLAP, Analysis Services Data Mining и Reporting Services, содержащийся в SQL Server 2005, - значительно изменен и улучшен по сравнению с версией 2000. Кроме того, в SQL Server 2005 добавлены два новых компонента: SQL Server Management Studio и SQL Server Business Intelligence Development Studio, которые на ранних этапах бета-тестирования были известны под названиями SQL Server Workbench и BI Workbench.

Основные задачи бизнеса, решаемые методами добычи данных

Для решения BI-задач в SQL Server 2000 использовалось несколько автономных инструментов, имевших непохожие пользовательские интерфейсы и не полностью соответствующих современным стандартам разработки ПО. Поэтому в версии 2005 они заменены на два новых инструмента, построенных на базе интегрированной среды Visual Studio 2005 IDE.

Пакету BI Development Studio (рис. 2) отводится основная роль в создании BI-решений, он полностью реализует функциональность Analysis Manager 2000, добавляя к ней возможности загрузки и преобразования информации, управления отчетами и извлечения знаний. В его среде можно создавать и другие проекты Visual Studio (с использованием Visual C#, Visual Basic NET и т. д.), что позволит разработчикам создавать действительно сквозные приложения.

Рис. 2. Управление аналитическими службами в среде SQL Server 2005 Business Intelligence Development Studio

Визуальный инструмент управления базами данных SQL Server Management Studio соединил функциональность Enterprise Manager, Query Analyzer, Analysis Manager и некоторых средств администрирования, имевшихся в версии 2000, добавив новые возможности Reporting Services, Notification Services, XML и SQL Server 2005 Mobile Edition. Повышение производительности, масштабируемости и доступности достигается с помощью таких новых технологий, как Snapshot Isolation, Database Mirroring, Database Snapshots, Service Broker. Для хранения конфиденциальной информации применяются средства шифрования баз данных.

В общем-то все основные компоненты BI-платформы Microsoft в том или ином виде появились еще в составе SQL Server 2000. Хронологически самым последним из них стал набор служб управления отчетами - это произошло в начале 2004 г. (описание версии 2000 см. в PC Week/RE, N 7/2004, с. 35). Фактически уже тогда он создавался с прицелом на версию SQL Server 2005 и поэтому в новом варианте в целом претерпел наименьшие изменения, в основном касающиеся более высокой интеграции с другими BI-службами, расширения возможностей пользователей и повышения интерактивности. Кроме того, нужно подчеркнуть, что Reporting Services имеют более высокий уровень автономности по сравнению с другими компонентами СУБД: эти службы могут работать с данными из различных источников, включая интерфейсы ODBC и OLE DB, и таким образом быть совместимыми практически с любой ИТ-архитектурой, а также бесшовно встраиваться в приложения. Именно поэтому MS SQL Server Reporting Services часто распространяется и применяется как отдельный продукт.

Собственно аналитические сервисы SQL Server 2005 представлены двумя основными дополняющими друг друга функциональными частями - On-Line Analytical Processing (OLAP) и Data Mining. Основные новшества OLAP-сервисов мы уже рассматривали на примере бета-версии продукта (см. PC Week/RE, N 30/2004, с. 22). Поэтому теперь более подробно расскажем только о двух других BI-компонентах СУБД.

Сервисы интеграции

Integration Services хотя и являются преемником DTS (Data Transformation Services) в SQL Server 2000, все же вполне могут считаться нововведением в SQL Server 2005. Integration Services были полностью переработаны по сравнению с DTS, чтобы стать реальной ETL-платформой предприятия (Extract, Transformation, and Loading - извлечение, преобразование и загрузка данных).

Архитектура Integration Services совмещает в себе как ориентированный на операции механизм потока задач (task-flow), так и масштабируемый и производительный механизм потока данных (data-flow). Такое сочетание потоков задач и потоков данных позволяет эффективно использовать Integration Services в проектах с традиционными системами ETL и в проектах по созданию хранилищ данных, а также в более сложных проектах, например по внедрению центров данных.

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

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

В целом такая архитектура позволяет использовать Integration Services во многих проектах по интеграции данных, начиная от традиционных ETL-систем для хранилищ данных и заканчивая нетрадиционными технологиями интеграции информации, и при этом обеспечивать возможность работы не только с большими наборами данных, но и со сложными их потоками. Службы интеграции могут извлекать (а также выгружать) данные из различных источников, включая OLE DB, управляемые источники (ADO. NET), ODBC, плоские файлы, Excel и XML, с помощью специального набора компонентов, которые называются адаптерами (adapters).

Помимо этих основных преобразований для хранилищ данных имеется поддержка таких расширенных хранилищ, как Slowly Changing Dimensions (SCD - редко обновляемые размерности). Мастер SCD поможет пользователям определить, какие измерения являются редко обновляемыми, и на основе этой информации создаст полностью готовый к использованию поток данных с несколькими преобразованиями, реализующими загрузку медленно изменяющихся измерений.

Одной из ключевых особенностей Integration Services является их способность интегрировать не только данные, но и методы их обработки. Такой подход позволяет включить в него средства очистки информации, основанные на методах нечеткой логики (fuzzy logic). В сочетании с технологией Data Mining в процессе передачи информации можно обнаружить аномальные данные, а также автоматически исправить их и заменить на лучшие значения.

Добыча данных

Службы SQL Server 2005 Data Mining представляют собой технологию интеллектуальной обработки данных, которая помогает создавать сложные аналитические модели и интегрировать их в бизнес-процессы (см. таблицу). Они поставляются с самыми популярными алгоритмами добычи данных, состав которых может быть расширен за счет встраивания алгоритмов независимых разработчиков.

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

Алгоритм Naive Bayes быстро строит модели добычи данных, которые могут использоваться для классификации и прогнозирования. Он рассчитывает вероятность, с которой каждое возможное состояние входного атрибута приводит к каждому состоянию прогнозируемого атрибута. Алгоритм поддерживает только дискретные атрибуты и считает, что все входные атрибуты влияют на прогнозируемый атрибут независимо друг от друга.

Кластеризация (Clustering) использует итеративный процесс для группировки строк из набора данных в кластеры, содержащие строки с одинаковыми характеристиками. Метод применяется для поиска взаимосвязей и выполнения прогнозов.

Поиск ассоциаций (Association) основан на алгоритме a priori и обеспечивает эффективный метод нахождения корреляций в больших наборах данных. Алгоритм, например, позволяет двигаться в цикле по транзакциям в базе данных для поиска товаров, которые с наибольшей вероятностью появятся вместе с транзакциями одного покупателя. Он в основном используется для анализа набора приобретаемых товаров (market basket analysis).

Последовательная кластеризация (Sequence Clustering) сочетает анализ последовательности операций с кластеризацией для исследования данных и прогнозирования. Такая модель чувствительна к последовательности возникновения событий. Алгоритм может применяться для анализа маршрута перемещения пользователя по страницам при анализе трафика Web-сайта, а также для определения того, какие страницы сайта больше всего связаны с продажей какого-либо товара и какие следующие страницы сайта будут посещены (прогноз).

Временные ряды (Time Series) создают модели, которые могут использоваться для прогнозирования одной или нескольких постоянно изменяющихся переменных, например цены акции. Алгоритм прогнозирования основывается исключительно на трендах, полученных из обучающих данных при создании модели. Он использует методику AutoRegression Trees, очень прост в применении и генерирует модели с высокой точностью прогнозирования.

Нейронная сеть (Neural Net), как и алгоритмы деревьев принятия решений и Naive Bayes, в основном используется для исследования данных, классификации и прогнозирования. Это методика искусственного интеллекта, которая исследует все возможные взаимосвязи между данными. Поскольку этот алгоритм исследует данные тщательнее других, он является самым медленным из трех алгоритмов классификации.

Что ждет впереди

Используя SQL Server 2005 в качестве серверной BI-платформы, Microsoft намерена существенно повысить и роль в этом направлении своих офисных продуктов, на которые возлагается в основном задача доставки необходимой бизнес-информации до конкретных рабочих мест. Именно эти функции будут предметом развития новой версии MS Office 12, она должна появиться на рынке до конца текущего года. Ключевая же роль в деле интеграции клиентских рабочих мест с SQL Server 2005 отводится Excel и SharePoint.

В Excel 12 будут усилены средства взаимодействия между электронными таблицами и внешними источниками данных, а также улучшены возможности детализированного анализа исходных данных: модернизированы средства сортировки и фильтрации информации, включен расширенный состав методов визуализации данных, реализованы более широкие возможности обобщенного анализа с помощью средств PivotTables и PivotCharts. Наиболее любопытным новшеством должно стать создание серверного варианта функционала Excel под названием Excel Services, доступ к которому может быть получен через Web-браузер.

На продукты и технологии SharePoint возлагаются функции реализации портала для доступа ко всем BI-данным, в том числе службам SQL Server Reporting Services и Excel Services. Новое поколение SharePoint будет строиться на более широком применении персональной настройки пользовательского интерфейса с помощью технологии DashBoards (приборная панель управления) без необходимости написания кода.

Но Office 12 - это еще только планы. А вот более конкретным шагом в направлении развития бизнес-средств является выпуск прошлой осенью нового серверного решения в составе офисного семейства - Microsoft Office Business Scorecard Manager (MOBSM) 2005 (рис. 3). Этот продукт позволяет лицам, принимающим решения, лучше оценивать эффективность работы своих информационных и деловых систем с точки зрения общего бизнеса компании, используя методы таблицы кадров (scorecards, получение последовательных "снимков" состояния системы) и анализа ключевых параметров производительности (KPI, key performance indicators).      

Рис. 3. Business Scorecard Manager 2005 пополнил арсенал средств бизнес-анализа Microsoft