logo search
Диплом(в)-1

3.3 Многомерная модель данных для построения olap-куба по международному научно-техническому сотрудничеству вузов и научных организаций России

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

К тому же требуется, чтобы анализ данных можно было осуществлять по множеству параметров, т.е. должна быть предусмотрена возможность выполнения многомерного анализа данных.

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

Такой анализ данных целесообразно проводить на основе многомерной модели данных, которая лежит в основе построения большинства хранилищ данных.

Многомерная модель данных – это информационное содержимое предметной области в виде N-мерного куба (гиперкуба), где каждая ось соответствует измерению, представлено на рисунке 3.3.1

Измерение – это последовательность значений одного из анализируемых параметров.

На пересечении осей измерений находятся факты (меры), количественно характеризующие события, описываемые значениями измерений.

Рисунок 3.3.1 - Графическое представление многомерной модели данных

Многомерное представление данных позволяет легко выполнять ряд операций.

1. Срез – формирование подмножества данных, соответствующих фиксированному значению одного или нескольких измерений, т.е. построение проекции гиперкуба , представлено на рисунке 3.3.2.

Рисунок 3.3.2 - Операция среза многомерной модели данных

2. Вращение – изменение расположения измерений в представлении данных многомерной модели , представлено на рисунке 3.3.3.

Рисунок 3.3.3 - Операция вращения многомерной модели данных

Операция вращения обычно применяется при отображении многомерных данных в отчете в виде кросс-таблиц или кросс-диаграмм.

Кросс-таблица представляет собой размещение многомерных данных на плоскости в виде сводной таблицы.

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

В качестве агрегирующих функций чаще всего используются: минимум (min), максимум (max), сумма(sum), среднее (average), количество(count).

Кросс-таблица состоит из следующих элементов:

Изобразить геометрическую интерпретацию гиперкуба с размерностью более 3-х не представляется возможным. Но в принципе число используемых измерений может быть любым.

Однако следует помнить, что использование большого числа измерений не рекомендуется, в первую очередь потому, что осмысление и интерпретация результатов аналитиком в этом случае могут быть затруднены.

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

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

Рисунок 3.3.4 - Операция консолидации многомерной модели данных

Рисунок 3.3.5 - Операция детализации многомерной модели данных

По кросс-таблицам, полученным в результате консолидации, строятся кросс-диаграммы, позволяющие анализировать тренд.

Тренд позволяет увидеть тенденции, которые обычно скрыты из-за большого разброса значений, наличия отклонений, не типичных для отображаемого процесса.

Таким образом, представленные операции многомерной модели данных предоставляют конечному пользователю ряд аналитических и навигационных функций:

Легкость проводимых манипуляций с гиперкубом обеспечивает возможность формирования запросов «на лету».

Есть два основных подхода к реализации многомерной модели данных:

Каждый из этих подходов имеет свои плюсы и минусы.

MOLAP использует для хранения и управления данными многомерные базы данных. При этом данные хранятся в виде упорядоченных многомерных массивов.

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

ROLAP использует для хранения и управления данными реляционные базы данных.

В таблице 3.19 представлена сравнительная характеристика ROLAP и MOLAP, из которой видно, что по многим параметрам ROLAP превосходит MOLAP.

Таблица 3.19 - Сравнительные характеристики ROLAP и MOLAP

Характеристики

ROLAP

MOLAP

Производительность

Ниже

Выше

Требуемый объем памяти

Меньший

Больший

Обработка разреженных данных

Лучше

Хуже

Обработка детализированных данных

Лучше

Хуже

Функциональная гибкость

Выше

Ниже

Уровень защиты данных

Выше

Ниже

В связи с тем, что рабочее место аналитика (аналитические возможности) разрабатываются для системы, которая уже реализована средствами реляционной СУБД, то целесообразно выбрать в качестве способа реализации многомерной модели данных модель ROLAP.

В этом случае построение кубов производится «на лету» на основе SQL запросов к имеющейся реляционной БД.

В настоящее время распространены две основные схемы реализации многомерного представления данных с помощью реляционных таблиц: схема «звезда» и схема «снежинка».

Наибольшее распространение получила схема «звезда» ввиду простоты ее реализации и более высокого быстродействия.

На рисунке 3.3.6 изображена схема, в центре которой располагаются факты и агрегатные данные, а «лучами» являются измерения. Каждая звезда описывает определенное действие (процесс), например, финансирование.

Рисунок 3.3.6 - Пример схемы «звезда»

Схема «звезда» предполагает выделение таблиц фактов и таблиц измерений. Каждая таблица фактов содержит детальные данные и внешние ключи на таблицы измерений.

Таблица фактов содержит уникальный составной ключ, объединяющий первичные ключи таблиц измерений.

Таблицы измерений содержат неизменяемые либо редко изменяемые данные. Обычно для однозначной идентификации члена измерения используется суррогатный ключ и как минимум одно описательное поле (обычно имя члена измерения).

Каждая таблица измерений должна находиться в отношении «один-ко-многим» с таблицей фактов.

При реализация многомерного представления данных в дипломном проекте также используется схема «снежинка». Как и в схеме «звезды», схема «снежинки» представлена централизованнойтаблицей фактов, соединенной стаблицами измерений. Отличием является то, что здесь таблицы измерений нормализованы с рядом других связанных измерительных таблиц, — в то время как в схеме звезды таблицы измерений полностью денормализованы, с каждым измерением представленным в виде единой таблицы, без соединений на связанные таблицы в схеме «снежинки». Чем больше степень нормализации таблиц измерений, тем сложнее выглядит структура схемы «снежинки». Создаваемый «эффект снежинки» затрагивает только таблицы измерений, и не применим к таблицам фактов. Пример схемы «снежинка» приведен на рисунке 3.3.7.

Рисунок 3.3.7 - Пример схемы «снежинка»

На основании вышесказанного для предварительной подготовки данных с целью их оптимизации были разработаны многомерные модели данных в виде схем «звезда» и «снежинка».

Схема реализации многомерного представления данных для формирования гиперкуба «сводные данные по исполнителям» представлена на рисунке 3.3.8.

Рисунок 3.3.8 - Многомерная модель данных для гиперкуба «Сводные данные по исполнителям»

В представленной на рисунке 3.3.8 схеме основными таблицами измерений являются таблицы «Общий фонд по каждому договору», «Участники научного исследования », «Заказчики научного исследования», «Научное исследование». Таблица «Распределение средств» является таблицей фактов, связанной с таблицами измерений отношениями «один-ко-многим».

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

Схема реализации многомерного представления данных для формирования гиперкуба «сводные данные по регионам мира» представлена на рисунке 3.3.9.

Рисунок 3.3.9 - Многомерная модель данных для гиперкуба «Сводные данные по регионам мира»

В схеме представленной на рисунке 3.3.9 таблицами измерений являются таблицы «Классификатор исполнителей», «Заказчик», «Исполнитель», «Специализация исполнителей».

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

Схема реализации многомерного представления данных для формирования гиперкуба «Российская статистика довузовского обучения» представлена на рисунке 3.3.10.

Рисунок 3.3.10 - Многомерная модель данных для гиперкуба «Российская статистика довузовского обучения»

Схема реализации многомерного представления данных для формирования гиперкуба «Российская статистика послевузовского обучения» представлена на рисунке 3.3.11.

Рисунок 3.3.11 - Многомерная модель данных для гиперкуба «Российская статистика послевузовского обучения»

Схема реализации многомерного представления данных для формирования гиперкуба «Российская статистика вузовского обучения» представлена на рисунке 3.3.12.

Рисунок 3.3.12 - Многомерная модель данных для гиперкуба «Российская статистика вузовского обучения»

Схема реализации многомерного представления данных для формирования гиперкуба «Зарубежная статистика послевузовского обучения» представлена на рисунке 3.3.13.

Рисунок 3.3.13 - Многомерная модель данных для гиперкуба «Зарубежная статистика послевузовского обучения»

Схема реализации многомерного представления данных для формирования гиперкуба «Зарубежная статистика сотрудников вузов» представлена на рисунке 3.3.14.

Рисунок 3.3.14 - Многомерная модель данных для гиперкуба «Зарубежная статистика сотрудников вузов»

Схема реализации многомерного представления данных для формирования гиперкуба «Зарубежная статистика вузовского обучения» представлена на рисунке 3.3.15.

Рисунок 3.3.15 - Многомерная модель данных для гиперкуба «Зарубежная статистика вузовского обучения»