Слайд 1Многомерные
базы
данных
Информационные технологии в экономике
Лекция 06
Слайд 2Простейшая Многомерная таблица
Заголовки строк – города,
Заголовки столбцов – годы,
Содержимое (значения)
таблицы – число зачисленных абитуриентов в том или ином городе
в тот или иной год
Слайд 3Трехмерная таблица
Заголовки первой оси – города,
Заголовки второй оси – годы,
Заголовки
третьей оси (слои) – специальности,
Содержимое (значения) таблицы – число зачисленных
абитуриентов в тот или иной год в том или ином городе на некоторую специальность
Слайд 4Основные определения
Куб: многомерная структура данных (многомерный массив, содержащий данные)
Слайд 5Основные определения
Измерение: одна из координат куба; параметр, по которому строится
один из индексов многомерного массива.
Слайд 6Основные определения
Мера: конкретное значение, находящееся в ячейке куба.
Слайд 7Основные определения
Пример:
Куб: база, описывающая контингент;
Измерения: год, город, специальность,
Мера: количество зачисленных.
Слайд 8факты
Факт: событие, которое надо проанализировать.
Факты определяются комбинацией значений измерений.
Факт существует, когда ячейка, соответствующая сочетанию измерений, не пуста.
Слайд 9факты
Виды фактов:
События (events): модель события реального мира; примеры: продажи, щелчки
мышью, движение товара на складе.
Слайд 10факты
Виды фактов:
Мгновенные снимки (snapshots): состояние объекта в данный момент; примеры:
количество товара на складе, число пользователей сайта.
Слайд 11факты
Виды фактов:
Совокупные мгновенные снимки (cumulative snapshots): состояние объекта на протяжении
времени; примеры: совокупный объем продаж.
Слайд 12параметры
Параметры:
Численная характеристика факта (например, цена)
Формула (например, агрегатная функция)
Слайд 13параметры
Три вида параметров:
Аддитивные (могут комбинироваться в любом измерении)
Полуаддитивные (не могут
комбинироваться в некоторых измерениях)
Неаддитивные (не комбинируются)
Слайд 14Как реализовать многомерную Базу данных
1. Определение измерений:
Город (код города, город)
Год
(код года, год)
Специальность(код специальности, специальность)
Слайд 15Как реализовать многомерную Базу данных
2. Определение мер и получение куба:
Контингент
(код города, код года, код специальности, количество зачисленных)
Слайд 16Схема как результат
Схема «Звезда»
Слайд 17Схема «звезда»
Одна таблица фактов (fact table), которая сильно денормализована.
Несколько
денормализованных таблиц измерений (dimensional table).
Таблица фактов и таблицы размерности
связаны идентифицирующими связями, при этом первичные ключи таблицы размерности мигрируют в таблицу фактов в качестве внешних ключей. Первичный ключ таблицы факта целиком состоит из первичных ключей всех таблиц размерности.
Агрегированные данные хранятся совместно с исходными.
Слайд 18Схема «звезда»
Преимущества
Благодаря денормализации таблиц измерений упрощается восприятие структуры данных пользователем
и формулировка запросов, уменьшается количество операций соединения таблиц при обработке
запросов. Некоторые промышленные СУБД и инструменты класса OLAP / Reporting умеют использовать преимущества схемы "звезда" для сокращения времени выполнения запросов.
Слайд 19Схема «звезда»
Недостатки
Денормализация таблиц измерений вносит избыточность данных, возрастает требуемый для
их хранения объем памяти. Если агрегаты хранятся совместно с исходными
данными, то в измерениях необходимо использовать дополнительный параметр - уровень иерархии.
Слайд 20Схема как результат
Схема «Снежинка»: измерения сами являются многомерными
Пример: тема –
объемы продаж.
Измерения:
Тип Продукта (кодТ, тип)
Продукт (кодП, продукт, кодТ)
Страна (кодС,
страна)
Город (кодГ, город, кодС)
Год (кодГД, год)
Месяц (код М, месяц, код ГД)
Слайд 21Схема как результат
Схема «Снежинка»: измерения сами являются многомерными
Пример: тема –
объемы продаж.
Меры и куб:
Продажа (кодП, кодГ, кодМ, объем)
Слайд 22Схема как результат
Схема «Снежинка»
Слайд 23Схема «снежинка»
Одна таблица фактов (fact table), которая сильно денормализована.
Несколько
таблиц измерений (dimensional table), которые нормализованы в отличие от схемы
"звезда".
Таблица фактов и таблицы размерности связаны идентифицирующими связями, при этом первичные ключи таблицы размерности мигрируют в таблицу фактов в качестве внешних ключей. Первичный ключ таблицы факта целиком состоит из первичных ключей всех таблиц размерности.
В схеме "снежинка" агрегированные данные могут храниться отдельно от исходных.
Слайд 24Схема «снежинка»
Преимущества
Нормализация таблиц измерений в отличие от схемы "звезда" позволяет
минимизировать избыточность данных и более эффективно выполнять запросы, связанные со
структурой значений измерений.
Недостатки
За нормализацию таблиц измерений иногда приходится платить временем выполнения запросов.
Слайд 25запросы
Запросы:
Slice-and-dice – сужают куб.
Drill-down и Roll-up – используют иерархию измерений
и параметры для агрегирования.
Drill-across – комбинируют кубы с общими измерениями.
Ranking
– возвращают верх или низ упорядоченных списков.
Rotating – вращение куба, показ данных, сгруппированных по разным измерениям.
Слайд 26OLAP
{Эдгар Кодд, 1993} OLAP (англ. online analytical processing, аналитическая обработка
в реальном времени) — технология обработки данных, заключающаяся в подготовке
суммарной (агрегированной) информации на основе больших массивов данных, структурированных по многомерному принципу.
Слайд 2712 признаков olap-данных
Многомерная концепция данных. OLAP оперирует CUBE данными, которые
являются многомерными массивами данных. Число измерений OLAP кубов не ограничено.
Прозрачность.
OLAP системы должны опираться на открытые системы, поддерживающие гетерогенные источники данных.
Доступность. OLAP системы должны представлять пользователю единую логическую схему данных.
Слайд 2812 признаков olap-данных
Постоянная скорость выполнения запросов. Производительность не должна падать
при росте числа измерений.
Клиент\сервер архитектура. Системы должны базироваться на открытых,
модульных системах.
Различное число измерений. Системы не должны ограничиваться 3-х мерной моделью представления данных. Причем измерения должны быть эквивалентны по применению любых функций.
Слайд 2912 признаков olap-данных
Динамическое представление разреженных матриц. Идея относится к «нулям»
в реляционных базах данных и сжатию больших файлов, «разреженная матрица»
- матрица, не каждая ячейка которой содержит данные. OLAP системы должны содержать средства хранении и обработки больших объемов данных.
Многопользовательская поддержка. OLAP системы должны поддерживать многопользовательский режим работы.
Неограниченные многомерные операции. Аналогично, требованию о различном числе измерений : все измерения считаются равными и многомерные операции не должны накладывать ограничений на отношения между ячейками.
Слайд 3012 признаков olap-данных
Интуитивно понятные инструменты манипулирование данными. В идеале, пользователи
не должны пользоваться различными усложненными меню и прочим, чтобы сформулировать
многоуровневые запросы.
Гибкая настройка конечных отчетов. Пользователи должны иметь возможность видеть только то, что им необходимо, причем все изменения данных должны немедленно отображаться в отчетах.
Отсутствие ограничений на количество измерений и уровней агрегации данных.
Слайд 31Тест fasmi
{Найджел Пендс, 2005}
OLAP-система должна быть:
Fast — быстрой, обеспечивать
почти мгновенный отклик на большинство запросов;
Shared — многопользовательской, должен
существовать механизм контроля доступа к данным, а также возможность одновременной работы многих пользователей;
Multidimensional — многомерной, данные должны представляться в виде многомерных кубов;
Informational — данные должны быть полны с точки зрения аналитика, т.е. содержать всю необходимую информацию.
Слайд 323 типа olap
многомерная OLAP (Multidimensional OLAP — MOLAP); MOLAP —
это классическая форма OLAP, так что её часто называют просто
OLAP. Она использует суммирующую БД, специальный вариант процессора пространственных БД и создаёт требуемую пространственную схему данных с сохранением как базовых данных, так и агрегатов.
реляционная OLAP (Relational OLAP — ROLAP); ROLAP работает напрямую с реляционным хранилищем, факты и таблицы с измерениями хранятся в реляционных таблицах, и для хранения агрегатов создаются дополнительные реляционные таблицы.
гибридная OLAP (Hybrid OLAP — HOLAP). HOLAP использует реляционные таблицы для хранения базовых данных и многомерные таблицы для агрегатов.
Слайд 333 типа olap
Преимущества MOLAP.
Высокая производительность. Поиск и выборка данных осуществляется
значительно быстрее, чем при многомерном концептуальном взгляде на реляционную базу
данных.
Структура и интерфейсы наилучшим образом соответствуют структуре аналитических запросов.
Многомерные СУБД легко справляются с задачами включения в информационную модель разнообразных встроенных функций.
Слайд 343 типа olap
Недостатки MOLAP.
MOLAP могут работать только со своими собственными
многомерными БД и основываются на патентованных технологиях для многомерных СУБД,
поэтому являются наиболее дорогими. Эти системы обеспечивают полный цикл OLAP-обработки и либо включают в себя, помимо серверного компонента, собственный интегрированный клиентский интерфейс, либо используют для связи с пользователем внешние программы работы с электронными таблицами.
По сравнению с реляционными, очень неэффективно используют внешнюю память, обладают худшими по сравнению с реляционными БД механизмами транзакций.
Отсутствуют единые стандарты на интерфейс, языки описания и манипулирования данными.
Не поддерживают репликацию данных, часто используемую в качестве механизма загрузки.
Слайд 353 типа olap
Преимущества ROLAP.
Реляционные СУБД имеют реальный опыт работы с
очень большими БД и развитые средства администрирования. При использовании ROLAP
размер хранилища не является таким критичным параметром, как в случае MOLAP.
При оперативной аналитической обработке содержимого хранилища данных инструменты ROLAP позволяют производить анализ непосредственно над хранилищем (потому что в подавляющем большинстве случаев корпоративные хранилища данных реализуются средствами реляционных СУБД).
Слайд 363 типа olap
Преимущества ROLAP.
В случае переменной размерности задачи, когда изменения
в структуру измерений приходится вносить достаточно часто, ROLAP системы с
динамическим представлением размерности являются оптимальным решением, так как в них такие модификации не требуют физической реорганизации БД, как в случае MOLAP.
Системы ROLAP могут функционировать на гораздо менее мощных клиентских станциях, чем системы MOLAP, поскольку основная вычислительная нагрузка в них ложится на сервер, где выполняются сложные аналитические SQL-запросы, формируемые системой.
Реляционные СУБД обеспечивают значительно более высокий уровень защиты данных и хорошие возможности разграничения прав доступа.
Слайд 373 типа olap
Недостатки ROLAP.
Ограниченные возможности с точки зрения расчета значений
функционального типа.
Меньшая производительность, чем у MOLAP. Для обеспечения сравнимой с
MOLAP производительности реляционные системы требуют тщательной проработки схемы БД и специальной настройки индексов. Но в результате этих операций производительность хорошо настроенных реляционных систем при использовании схемы "звезда" сравнима с производительностью систем на основе многомерных БД.
Слайд 38Применение olap
Продажи
Закупки
Цены
Маркетинг
Склад
Движение денежных средств
Бюджет
Бухгалтерские счета
Финансовая отчетность
Посещаемость сайта
Результаты выборов
Слайд 39Применение olap
Результаты социологических опросов
Объемы производства
Потребление электроэнергии
Потребление расходных материалов
Использование помещений
Заработная плата
Текучесть
кадров
Метеорология
Уровень жизни населения
Пассажирские перевозки
Грузовые перевозки
Простои транспорта
Слайд 40Применение olap
Автомобильный трафик
Заболеваемость персонала
Многомерный хит-парад
Выбор недвижимости
Урожайность агрикультур
Использование автотранспорта
Слайд 41Программные средства OLAP
ESSBASE – Extended spread sheet database
Oracle Express
Microsoft Analysis
Services
Mondrian
PALO
Часто включаются в состав ERP-систем (как, например, SAP)
Слайд 42Где почитать еще?
http://ru.wikipedia.org/wiki/Сравнение_OLAP_серверов