Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
УМК по СРОД-10-12.doc
Скачиваний:
10
Добавлен:
13.11.2018
Размер:
2.55 Mб
Скачать

6. Хранилище данных

Согласно аналитическим оценкам объем информации в мире удваивается каждые 2-3 года. Этот потоп, цунами данных приходит из науки, бизнеса, Интернета и других источников. Среди самых больших баз данных в 2003г. France Telecom имела базу размером в 30000 миллиардов байт, а Alexa Internet Archive – 500000 миллиардов байт.

Еще в 1989г. 1 мегабайт считался размером для большой базы данных. В настоящее время предвидеться для астрономии иметь во много терабайт, а затем петабайт. (1 терабайт = 1000 миллиардов байт, а 1 петабайт = 1000 терабайт, 1 гигабайт = 1024 мегабайт).

Из-за огромного количества информации очень малая ее часть будет когда-либо увидена человеческим глазом. Надежда – применение Data Mining. Data Mining (называемая Knowledge Discovery In Data) – процесс нахождения (обнаружения) потенциально полезных знаний в базах данных.

Так как поиск является сложной задачей, то появился класс программных систем, призванных облегчить работу людей, выполняющих анализ. Такие системы принято называть системами поддержки принятия решений – СППР (DSS, Decision Support System).

Задачи СППР:

- ввод данных – OLTP (Online transaction processing);

- хранение данных – СУБД и концепция хранилища данных (ХД);

- анализ данных.

Анализ данных может производиться на основе следующих данных:

- ИПС на базе реляционных СУБД и запросов с использованием языка SQL;

- Подсистемы оперативного анализа OLAP (Online analytical processing);

- Подсистема интеллектуального анализа Data Mining (“добыча данных”).

6.1. Концепции хранилища данных

Первые сведения по ХД появились в 1988г. В 1992г. Г.Инмон подробно описал концепцию в своей монографии “Построение хранилищ данных”.

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

Хранилище данных – предметно-ориентированный, интегрированный, неизменчивый, поддерживающий хронологию набор данных, организованный для целей поддержки принятия решений.

В СППР разделение данных происходит в двух направлениях:

1) ОИД – оперативные источники данных (это оперативные БД, файлы, электронные таблицы и т.п.)

2) структуры данных, предназначенных для анализа – это ХД.

Дальнейшее развитие – это использование витрин данных (ВД). ВД – это упрощенный вариант ХД, содержащий только тематические объединенные данные. ВД существенно меньше по объему ХД, является подмножеством данных.

Рис.6.1. Схема системы поддержки принятия решений (СППР)

Все данные в ХД делятся на три категории:

- детальные данные (переносимые непосредственно из ОИД);

- агрегированные ( получают путем суммирования числовых фактических данных по определенным измерениям);

- метаданные (данные о данных).

Большинство СППР работают не с детальными данными, а с агрегированными данными. Перенос данных в ХД называют ETL – процессом (E –extraction, T – transformation, L – loading) – извлечение, преобразование и загрузка.

6.2. Многомерная модель данных

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

Рис.6.2. Многомерная модель хранилища данных

Измерения:

Исполнитель (предприятие – подразделение – отдел – служащий).

Время (Год – квартал – месяц – день).

Мера (measures) – представляет ячейку, которая хранит факты (объемы продаж, остатки на складе, издержки и т.п.).

Срез (Slice) – формирует подмножество многомерного массива данных.

Вращение (Rotate) – изменение расположения измерений.

Консолидация (Drill Up) – агрегирование.

Детализация (Drill Down)

6.3. OLAP – системы

OLAP (On-Line Analytical Processing) – технология оперативной аналитической обработки данных, использующая методы и средства для сбора, хранения и анализа многомерных данных в целях поддержки процесса принятия решений.

18 правил, предъявляемых к OLAP:

- многомерное концептуальное представление данных,

- доступность,

- архитектура “клиент - сервер”,

- прозрачность,

- обработка ненормализованных данных,

- универсальность измерений и т.д.

OLAP система должна обеспечивать выдачу большинства ответов в пределах не более 5 сек.

Архитектура OLAP – систем

Выделяют три основных способа реализации многомерных моделей:

- MOLAP – используют многомерные БД,

- ROLAP – используют реляционные БД,

- HOLAP – используют и многомерные и реляционные БД.

MOLAP – используют для хранения и управления данными - многомерные БД. Данные хранятся в виде многомерных массивов. Такие массивы подразделяются на гиперкубы и поликубы. Физически, данные, представлены в многомерном виде, хранятся в плоских файлах. Куб представляется в виде одной плоской таблицы, в которую построчно вписываются все комбинации членов всех измерений с соответствующими им значениям мер.

Достоинство – быстрый поиск, так как база данных денормализована и содержит агрегированные данные. Недостаток – чувствительность к изменениям. Так при добавлении нового измерения приходится изменять структуру всей БД. Рекомендуется для небольших БД (не более нескольких гигабайт).

ROLAP

Реляционные БД дополняются средствами анализа. Распространены две основные схемы реализации многомерного представления данных с помощью реляционных таблиц: схема “Звезда” и схема “Снежинка”.

Основными составляющими таких схем являются денормализованные таблицы фактов (Fact Table) и массивы таблиц измерений (Dimension Table).

Фактами являются:

- события (телефонный звонок, снятие денег со счета и т.д.),

- “моментальные снимки” – рассматривается состояние объекта (например, банковского счета, объем продаж за день или дневная выручка).

Таблицы измерений содержат неизменяемые, либо редко изменяемые данные.

Рис.6.3. Модель хранилища данных по схеме «звезда»

В снежинке используются иерархические измерения, правда это ведет к усложнению структуры БД. Недостаток ROLAP по сравнению с многомерными СУБД – меньшая производительность.

HOLAP

Используют гибридную архитектуру, объединяющую технологии ROLAP и MOLAP. MOLAP лучше работает с более плотными данными, а ROLAP лучше, когда данные являются довольно разделимыми.