Требования к OLAP-средствам
Аббревиатура OLAP была впервые введена Коддом (E.F.Kodd), известным ученым в области реляционных БД, создателем широко распространенной реляционной модели. В своей работе, инициированной компанией Arbor Software (сегодня это Hyperion Solutions) "Providing OLAP to User Analysis: AN IT MAN-DATE"(Обеспечение OLAP (оперативной аналитической обработки) для пользователей – аналитиков) в 1993 г ., он определил:
основной недостаток реляционной модели как невозможность «объединять, просматривать и анализировать данные с точки зрения множественности измерений, то есть самым понятным для корпоративных аналитиков способом»
общие требования к системам OLAP, расширяющим функциональность реляционных СУБД и включающим многомерный анализ как одну из своих характеристик.
Кодд сформулировал концепцию комплексного многомерного анализа данных, накопленных в хранилище, в виде 12 основных правил, которым должны удовлетворять OLAP-системы, как продукты, предоставляющие возможность выполнения оперативной аналитической обработки. В 1995 году к ним были добавлены еще шесть (которые известны в значительно меньшей степени). Все эти правила разделены на четыре группы и названы «характеристиками» (features, особенности). Ниже дано краткое описание этих особенностей, однако сегодня они редко цитируются и мало используются:
Основные характеристики OLAP:
многомерность модели данных (оригинальное правило 1). Эта особенность - сердцевина OLAP;
прозрачность (оригинальное правило 2),
доступность данных, пакетное извлечение данных (оригинальное правило 3),
архитектура «клиент-сервер» (оригинальное правило 5),
многопользовательская работа (оригинальное правило 8),
интуитивные механизмы манипулирования данными (оригинальное правило 10),
пакетное извлечение против интерпретации (новое). Это правило требует, чтобы продукт в равной степени эффективно обеспечивал доступ как к собственному хранилищу данных, так и к внешним данным. К большому сожалению лишь небольшая часть OLAP продуктов должным образом соответствует ей, и среди них редкие делают это легко или автоматически. Сегодня это соответствует определению гибридных OLAP, которые, в самом деле, становятся наиболее популярной архитектурой
модели анализа OLAP (новое). OLAP-продукты должны поддерживать четыре модели анализа (Категориальный, Толковательный, Умозрительный и Стереотипный) которые можно определить как формирование параметрически настраиваемых отчетов, формирование разрезов и группировок с обращением, анализом в стиле "что, если" и моделями поиска целей, соответственно.
Специальные характеристики:
Обработка ненормализованных данных (новое)
Указывает на необходимость интеграции между OLAP-машиной и ненормализованными источниками данных. Не должны допускаться изменения данных, которые обычно расцениваются как расчетные ячейки в пределах БД OLAP.,
Хранение результатов отдельно от исходных данных (новое)
В действительности это боле относится к реализации, чем к сущности продукта. OLAP приложения, работающие в режиме чтения/записи не должны воздействовать напрямую на обрабатываемые данные, и данные, модифицированные в OLAP, должны сохраняться отдельно от данных транзакций. Например, метод обратной записи данных, использованный в Microsoft OLAP Services, является лучшей реализацией этого, поскольку позволяет сохранять данные, измененные в среде OLAP, отдельно от основных данных.
Выделение пропущенных данных (новое)
Пропущенные данные (Missing Data, Missing Value) – это особый элемент данных, который сигнализирует о том, что в данной ячейке данные отсутствуют и/или не определены. Это может быть как вследствие того, что рассматриваемая комбинация элементов не имеет смысла (например, снегоходы не могут продаваться в экваториальных странах), так и того, что данные не были введены. Термин "Пропущенные данные" по своему значению близок к термину "Пустое значение данных", однако, это не то же самое, что "Нулевое значение". В действительности это интересно только с точки зрения компактности хранения данных, некоторые OLAP инструменты игнорируют это правило без больших потерь в функциональности.
Обработка отсутствующих значений (новое)
Все отсутствующие значения будут игнорироваться OLAP анализатором без учета их источника. Эта особенность связана с предыдущей и является почти неизбежным следствием того, как OLAP-машина обрабатывает все данные.
Характеристики построения отчетов:
стабильная производительность при построении отчетов (оригинальное правило 4),
автоматическая настройка физического уровня(замена оригинального правила 7),
гибкое построение отчетов (оригинальное правило 11).
Управление размерностью:
общая функциональность - универсальность измерений (оригинальное правило 6),
неограниченные операции между данными различных измерений (оригинальное правило 9)
неограниченное число измерений и уровней агрегирования (оригинальное правило 12).
Работа с OLAP-системами может быть построена на основе из двух схем:
OLAP-средства, встроенные в настольные приложения
Такие средства, как правило, имеют множество ограничений: на количество измерений, на допустимые иерархии и так далее.
Двухступенчатую схему "клиент-сервер"
Сервер обеспечивает непосредственно извлечение информации из СУБД и все прочее, необходимое для создания кубов. Специализированное же приложение-клиент предназначено для удобного (а главное -эффективного) просмотра кубов и выявления тех самых аналитических закономерностей, с которых мы начинали наш экскурс.
| 12 основных правил OLAP- систем по Кодду
Концептуальное многомерное представление (Multi-Dimensional Conceptual View)
Многомерная концептуальная схема или пользовательское представление облегчают моделирование и анализ так же, впрочем, как и вычисления. Концептуальное представление модели данных должно позволять аналитикам выполнять интуитивные операции анализа «вдоль и поперек» (slice and dice), вращения (rotate) и размещения (pivot) направлений консолидации.
Прозрачность (Transparency)
Пользователь не должен знать о том, какие средства используются для хранения и обработки данных, как данные организованы и откуда берутся. Вне зависимости от того, является OLAP-продукт частью средств пользователя или нет, факт должен быть прозрачен пользователю.
Доступность (Accessibility)
Пользователь-аналитик OLAP должен иметь возможность выполнять анализ, базирующийся на общей концептуальной схеме, содержащей данные всего предприятия в реляционной БД, также как и данные из старых наследуемых БД, на общих методах доступа и на общей аналитической модели. Это значит, что OLAP должен предоставлять свою собственную логическую схему для доступа в гетерогенной среде БД и выполнять соответствующие преобразования, требующиеся для обеспечения единого, согласованного и целостного взгляда пользователя на информацию.
Постоянная производительность при разработке отчетов (Consistent Reporting Performance)
Устойчивая производительность необходима для поддержания простоты использования и свободы от усложнений, требуемых для доведения OLAP до конечного пользователя, Для которого критичной является постоянная производительность, и поддержание легкости в использовании и ограничения сложности OLAP
Клиент-серверная архитектура (Client-Server Architecture)
OLAP-продукты должны работать в среде клиент-сервер. Поэтому представляется необходимым, чтобы серверный компонент аналитического инструмента был настолько "интеллектуальным" и обладал способностью строить общую концептуальную схему на основе обобщения и консолидации различных логических и физических схем корпоративных БД для обеспечения эффекта прозрачности Также необходимо чтобы различные клиенты могли присоединяться к серверу с минимальными затруднениями и интеграционным программированием.
Общая многомерность
Каждое измерение должно применяться безотносительно своей структуры и операционных способностей. Дополнительные операционные способности могут предоставляться выбранным измерениям, и, поскольку измерения симметричны, отдельно взятая функция может быть предоставлена любому измерению. Базовые структуры данных, формулы и форматы отчетов не должны смещаться в сторону какого-либо измерения.
Динамическое управление разреженными матрицами (Dynamic Sparse Matrix Handling)
Физическая схема OLAP-инструмента должна полностью адаптироваться к специфической аналитической модели для оптимального управления разреженными матрицами. Для любой взятой разреженной матрицы существует одна и только одна оптимальная физическая схема. Эта схема предоставляет максимальную эффективность по памяти и операбельность матрицы, если, конечно, весь набор данных помещается в памяти.
Многопользовательская поддержка (Multi-User Support)
OLAP-инструмент должен предоставлять возможности совместного доступа (запроса и дополнения), целостности и безопасности.
Неограниченные перекрестные операции (Unrestricted Cross-dimensional Operations)
Вычисления и манипуляция данными по любому числу измерений не должны запрещать или ограничивать любые отношения между ячейками данных.
Интуитивная манипуляция данными (Intuitive Data Manipulation)
Переориентация путей консолидации, детализация данных в колонках и строках, укрупнение и другие манипуляции, регламентируемые путями консолидации, должны применяться через отдельное воздействие на ячейки аналитической модели, и не должны требовать использования системы меню или иных действий с интерфейсом.
Гибкие возможности генерации отчето в (Flexible Reporting)
Должны поддерживаться различные способы визуализации данных. Средства формирования отчетов должны представлять собой синтезируемые данные или информацию, следующую из модели данных в ее любой возможной ориентации. Это означает, что строки, столбцы или страницы должны показывать одновременно от 0 до N измерений, где N - число измерений всей аналитической модели. В дополнение к этому, каждое измерение содержимого, показанное в одной записи, колонке или странице, должно также быть способно показать любое подмножество элементов (значений), содержащихся в измерении, причем в любом порядке.
Неограниченная размерность и число уровней агрегации (Unlimited Dimensions and Aggregation Levels)
Исследование о возможном числе необходимых измерений, требующихся в аналитической модели, показало, что одновременно может использоваться до 19 измерений. Отсюда вытекает настоятельная рекомендация, чтобы аналитический инструмент был способен одновременно предоставить как минимум 15 измерений, а предпочтительнее 20. Более того, каждое из общих измерений не должно быть ограничено по числу определяемых пользователем-аналитиком уровней агрегации и путей консолидации.
Эти правила можно считать теоретическим базисом оперативной аналитической обработки.
| FASMI Пендса и Крита
Позднее Пендс (Nigel Pendse) и Крит (Richard Creeth), считая, что правила Кодда не достаточны для удовлетворительного определения именно OLAP-систем, переработали их в так называемый тест FASMI (Fast Analysis of Shared Multidimensional Information - быстрый анализ разделяемой многомерной информации), который более полно перечисляет требования к продуктам OLAP.
FASMI - это аббревиатура от названия каждого пункта теста: Fast - означает, что система должна обеспечивать выдачу большинства ответов пользователям в пределах приблизительно пяти секунд. При этом самые простые запросы обрабатываются в течение од-ной секунды и очень немногие - более 20-ти секунд. Analysis - означает, что система может справляться с любым логическим и статистическим анализом, характерным для данного приложения, и обеспечивает его сохранение в виде, доступном для конечного пользователя. Хотя некоторое "предварительное программирование" может быть необходимо, вряд ли стоит считать, что это приемлемый подход, когда все прикладные определения должны быть выполнены профессионалом на соответствующем языке.
Shared (Разделяемый доступ)
Shared - означает, что система осуществляет все требования защиты конфиденциальности (возможно до уровня ячейки) и, если множественный доступ для записи необходим, обеспечивает блокировку модификаций на соответствующем уровне. Не во всех приложениях есть необходимость обратной записи данных. Однако количество таких приложений растет, и система должна быть способна обработать множественные модификации своевременным, безопасным способом;
Multidimensional (Многомерность)
Ключевое требование. Система должна обеспечить многомерное концептуальное представление данных, включая полную поддержку для иерархий и множественных иерархий, поскольку это определенно наиболее логичный способ анализировать бизнес и организации. Минимальное число измерений, которые должны быть обработаны, не устанавливается, поскольку оно также зависит от приложения, и большинство продуктов OLAP имеет достаточное количество измерений для тех рынков, на которые они нацелены; Information - возможность обращаться к любой нужной информации независимо от ее объема и места хранения. Необходимая информация должна быть получена там, где она необходима. Однако многое зависит от приложения.
Учитывая эти требования к OLAP они должны обеспечивать возможность получать нужную информацию, в каком бы электронном ХД она не находилась. OLAP-cистемы позволяют формировать вместо традиционных запросов к БД «сколько, где, когда» запросы типа: «почему, как и т.п.». Например:
почему хорошо зарекомендовавшая себя система защиты от НСД в корпоративной сети неэффективна;
какие негативные последствия возможны при сверхурочной работе пользователя;
что следует из совместного появления ряда событий и т.п.
Когда человек задает вопросы, он налагает ограничения, формулируя вопросы во многих измерениях, поэтому процесс анализа в многомерной модели приближен к реальности человеческого мышления. В таблице приведена сравнительная характеристика статического и динамического видов анализа данных.
Характеристика
| Статический анализ
| Динамический анализ
| Типы вопросов
| Сколько? Как? Когда?
| Почему? Что будет, если?
| Время отклика
| Не регламентируется
| Секунды
| Типичные операции
| Регламентированный отчет, таблица, диаграмм
| Последовательность интерактивных отчетов, диаграмм, экранных форм. Динамическое изменение уровней агрегации и сре- зов данных.
| Уровень аналитических требований
| Средний
| Высокий
| Тип экранных форм
| В основном, определенный заранее, регламентированный
| Определяемый пользователем
| Уровень агрегации данных
| Детализированные и суммарные
| В основном, суммарные
| Возраст данных
| Текущие и прогнозируемые
| Исторические, текущие и прогнозируемые
| Типы запросов
| В основном, предсказуемые
| Непредсказуемые, от случаю к случаю
| Назначение
| Регламентированная аналитическая обработка
| Многопроходный анализ, моделирование и построение прогнозов
|
| |