Управления реляционными базами данных и анализа данных

Вид материалаРуководство

Содержание


Интегрированные и расширяемые службы анализа данных
Операции OLAP
Операции свертывания, задаваемые пользователями
Подобный материал:
1   ...   9   10   11   12   13   14   15   16   17

Интегрированные и расширяемые службы анализа данных


Задачей служб анализа данных (ранее называвшихся службами OLAP) в сервере SQL Server 2000 является создание всеобъемлющей, комплексной платформы для анализа данных. К функциям этих служб относится хранение данных в реляционных таблицах, извлечение данных, оптимизация и выполнение запросов OLAP, выявление закономерностей и семантическое моделирование, а также другие операции. Собственные приложения для анализа данных пользователи могут компоновать из различных программных алгоритмов и средств, выпускаемых корпорацией Майкрософт и другими производителями. Следует отметить, что службы анализа данных разрабатываются, прежде всего, для администраторов баз данных и разработчиков приложений, а не для элитной аудитории экспертов в области статистики. Любой специалист, имеющий навыки работы с языками SQL (Structured Query Language) и Visual Basic, сможет понять и использовать возможности служб анализа данных, расширяя их программным образом. Поскольку службы анализа данных являются базовым компонентом сервера SQL Server 2000, они входят (без дополнительной оплаты) в следующие выпуски этого продукта: Enterprise Edition, Standard Edition, Developer Edition и Enterprise Evaluation Edition.

С момента появления служб OLAP в сервере SQL Server 7.0 корпорация Майкрософт стала лидером в области платформ для создания систем бизнес-интеллекта. Выпустив сервер SQL Server 2000, корпорация Майкрософт укрепила свое лидерство в этой сфере, обеспечив новые функциональные возможности служб анализа данных. Помимо основных функций создания хранилищ данных и функций OLAP, которые были в сервере SQL Server 7.0, службы анализа данных сервера SQL Server 2000 обеспечивают интегрированную технологию информационной проходки (см. раздел «Выявление закономерностей и анализ статистики посещений веб-узлов»). Кроме того, предложено новое графическое средство создания и управления данными анализа, а также произведены улучшения в области обеспечения безопасности и работы с измерениями, повышающие гибкость этих служб. С помощью диспетчера Analysis Manager, входящего в состав сервера SQL Server 2000, несколько пользователей могут удобно и эффективно администрировать сервер анализа данных. Кроме того, используя удаленные разделы, можно распределять данные куба между несколькими серверами анализа и управлять таким кубом данных с центрального сервера анализа (сервера, на котором содержатся метаданные). В диспетчере Analysis Manager содержится два новых графических компонента, которые помогают при создании куба данных. Редактор Virtual Cube Editor позволяет вносить изменения в виртуальный куб данных и сходен по своим функциям с редактором Cube Editor. Службы анализа данных предлагают несколько возможностей для гибкого обеспечения безопасности и поддержки новых типов измерений. Стратегию обеспечения безопасности теперь можно определять как на уровне измерений, так и на уровне ячеек. Для управления доступом пользователей к измерениям могут применяться роли. Они ограничивают доступ к отдельным измерениям, уровням и компонентам, обеспечивая возможность выдавать разнообразные разрешения на чтение и запись. Стратегия безопасности на уровне ячеек также может определяться установкой ролей в программе Analysis Manager. Эти роли могут ограничивать доступ к любой комбинации ячеек куба данных. Для служб анализа данных сервера SQL Server 2000 были введены следующие новые типы измерений.
  • Parent-child (родительский-дочерний). Этот тип измерений поддерживает иерархии, основанные на отношениях типа «родительский-дочерний» между компонентами в столбцах исходной таблицы. К примерам таких иерархий можно отнести организационные схемы, технологические карты и спецификации. Эти измерения иногда называют «несбалансированными».
  • Ragged (неровный). Для измерений этого типа характерно, что не у всех его компонентов логический «родитель» расположен непосредственно на следующем над этим компонентом уровне. В качестве примера такого измерения можно взять страну, для которой отсутствует уровень областей или регионов между уровнями стран и городов.
  • Changing (изменяющийся). Этот тип измерений позволяет выполнять большее количество изменений, чем другие измерения, не требуя полной обработки данных куба после осуществления этих изменений. Это повышает доступность кубов данных для клиентских приложений.
  • Write-enabled (разрешенный для записи). Этот тип измерений может обновляться с помощью программы Analysis Manager и любого клиентского приложения, поддерживающего запись в измерения. Для контроля доступа при записи из клиентских приложений используются роли.
  • Virtual (виртуальный). Компоненты этого типа измерений определяются на основе компонентов других измерений.

Операции OLAP


При выполнении анализа данных у конечного пользователя часто возникает необходимость запустить сопутствующие приложения или установить связь с данными. Операции OLAP (OLAP Actions), новая возможность служб анализа данных сервера SQL Server 2000, позволяют конечным пользователям действовать в соответствии с результатами выполненного ими анализа данных для автоматического ведения бизнес-процессов. Каждая операция – это инициируемое конечным пользователем действие над выбранным кубом данных или какой-то его частью. Это действие может запускать приложение с выбранным в качестве параметра элементом или извлекать сведения об этом элементе. Применяя операции, которые легко определяются с помощью мастера создания операций (Action Wizard), разработчики могут превратить клиентские приложения из изощренных средств визуализации данных в составную часть системы управления предприятием, при помощи которой осуществляется обратная связь. С помощью этих операций конечные пользователи могут выйти за рамки обычного анализа данных и использовать решения для выявления проблем и ликвидации дефицита.

В качестве простого примера того, как можно использовать операции OLAP, возьмем покупателя в обувной лавке, который рассматривает куб данных со списком товаров и замечает уменьшение текущего запаса белых туфель. Этот покупатель выбирает операцию «Заказ» для компонента «Белые туфли». Данная операция инициирует новый заказ на поставку дополнительного количества белых туфель с помощью системы ввода заказов.

Операции свертывания, задаваемые пользователями


По умолчанию операции свертывания (rollup) в службах анализа данных аддитивны. Однако разработчики и администраторы баз данных, создающие решения для анализа данных, нуждаются в более гибком подходе. Новые задаваемые пользователями операторы свертывания предлагают простой способ контроля того, как выполняется агрегация значений компонентов к значениям их «родителей». Компоненты помечаются одним из следующих операторов: +, -, *, /, и ~. Каждый из этих операторов выполняет соответствующую ему математическую операцию. Такой задаваемый пользователем оператор свертывания применяется к компоненту при выполнении оценки значения его родительских компонентов. В случаях умножения и деления значение компонента умножается или делится на агрегированное значение предшествующих компонентов, имеющих того же «родителя». Старшинство определяется порядком компонентов, а сами операторы хранятся в отдельном столбце исходной базы данных. Знак тильда (~) означает, что для соответствующего компонента не следует применять операцию свертывания.

Назначаемые пользователями операторы свертывания соотносятся с именем столбца либо в момент их создания в мастере измерений в качестве дополнительной возможности новых измерений типа parent-child (родительский-дочерний), либо при добавлении их к существующим измерениям с помощью редакторов Dimension Editor или Cube Editor. Возможности, предоставляемые операторами свертывания аналогичны тем, которые предоставляют задаваемые пользователями формулы свертывания, хотя и немного упрощенные. Задаваемый пользователем оператор свертывания уникален для каждого компонента уровня, в то время как формула свертывания применима ко всем его компонентам уровня.