Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
1 / Иллюстрации к лекции 13 по БД и СУБД.doc
Скачиваний:
31
Добавлен:
25.05.2014
Размер:
394.75 Кб
Скачать

36

Лекция 13. Olap и oltp технологии

ПЛАН

13.1 Основы olap

13.2 Oltp-системы

13.1 Основы olap

www.olap.ru

On-Line Analitical Processing - оперативная аналитическая обработка данных.

E.F. Codd, S.B. Codd, and C.T.Salley, Providing OLAP (on-line analytical processing) to user-analysts: An IT mandate. Technical report, 1993

OLAP - обобщенный термин, характеризующий принципы построения систем поддержки принятия решений (Decision Support System - DSS), хранилищ данных (Data Warehouse), систем интеллектуального анализа данных (Data Mining).

Такие системы характеризуются следующими признаками:

  • Добавление в систему новых данных происходит относительно редко крупными блоками (например, раз в квартал загружаются данные по итогам квартальных продаж из OLTP-приложения).

  • Данные, добавленные в систему, обычно никогда не удаляются.

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

  • Запросы к системе являются нерегламентированными и, как правило, достаточно сложными. Очень часто новый запрос формулируется аналитиком для уточнения результата, полученного в результате предыдущего запроса.

  • Скорость выполнения запросов важна, но не критична.

Физически гиперкуб может быть построен на основе специальной многомерной модели данных (MOLAP - Multidimensional OLAP) или построен средствами реляционной модели данных (ROLAP - Relational OLAP).

Многомерные кубы

Рис. 1. Трехмерный набор агрегатных данных

Некоторые термины и понятия

Наряду с суммами в ячейках OLAP-куба могут содержаться результаты выполнения иных агрегатных функций языка SQL, таких как MIN, MAX, AVG, COUNT.

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

для обозначения исходных данных, на основе которых они вычисляются, — термин measure,

для обозначения параметров запросов — термин dimension,

значения, откладываемые на осях, называются членами измерений (members).

Значения, наносимые на оси, могут иметь различные уровни детализации. Поскольку в рассмотренном примере в общем случае в каждой стране может быть несколько городов, а в городе — несколько клиентов, можно говорить об иерархиях значений в измерениях. В этом случае на первом уровне иерархии располагаются страны, на втором — города, а на третьем — клиенты рис. 2.

Рис. 2. Иерархия в измерении, связанном с географическим положением клиентов

Отметим, что иерархии могут быть сбалансированными (balanced, рис. 2), несбалансированными (unbalanced, рис. 3) и неровными (ragged, рис.4).

Рис. 3. Несбалансированная иерархия

Рис. 5. "Неровная" иерархия

Несбалансированные и "неровные" иерархии поддерживаются далеко не всеми OLAP-средствами. Например, в Microsoft Analysis Services 2000 поддерживаются оба типа иерархии, а в Microsoft OLAP Services 7.0 — только сбалансированные. Различным в разных OLAP-средствах может быть и число уровней иерархии, и максимально допустимое число членов одного уровня, и максимально возможное число самих измерений.