Организация хранилища данных (WareHouse)
При организации хранилища данных основными идеями являются:
- Хранение всех данных в специальном месте.
- Объектная ориентированность данных.
- Избыточное хранение данных.
Почему стали хранить избыточные данные? Ответ очень прост - сокращение времени доступа к данным. Это достигается в два этапа. Первый этап - отказ от нормализации более чем "третья нормальная форма". Нормализация подобна операции архивирования, основной задачей которой является обеспечение как можно более компактного размещения информации на носителе, тогда как отказ от нормальности приводит к существенному росту объема сохраненных данных. Основным мотивом отказа от нормальности данных стало то, что при анализе данных требуются ненормализованные данные. При избыточном хранении данных сокращается время доступа к ненормализованным данным. Второй этап - сохранение агрегированных данных. При увеличении размера таблиц, операции объединения становятся все более неэффективными и требуют все больше ресурсов (повышенная загрузка процессора, увеличение времени на объединение, требуются высококлассные программисты и т.д.) на обработку данных. Для снижения нагрузки на оборудование и вычислительные ресурсы агрегированные данные, так же как и прочие данные, стали сохранять в хранилище, что сократило время получения агрегированных данных для анализа.
Для организации многомерной БД в основном используют схему звезда или схему снежинка. Схема снежинка получается добавлением консольных таблиц к схеме звезда. Пример схемы представлен на рисунке:
Рассмотрим схему звезда. Основная часть состоит в размещении «таблицы фактов» в центре звезды, а таблицы измерений находятся по краям. Таблица фактов и таблицы измерений связаны идентифицирующими связями, при этом первичные ключи таблицы измерений мигрируют в таблицу фактов в качестве внешних ключей. При организации связи таблиц измерений и консольных последняя является родительской, а таблица измерений является дочерней.
При создании таблиц со схемой звезда необходимо проанализировать бизнес-правила предметной области с целью выяснения центрального вопроса. Моделирование должно начинаться с центрального вопроса. Данные необходимые для ответа на этот вопрос должны помещаться в центральную таблицу факта. В таблицу фактов не выгодно помещать повторяемые текстовые данные, так как это приведет к значительному росту размера таблицы. Текстовые данные помещают обычно в таблицы измерений.
Таблицы измерений содержат редко изменяемые данные (справочники), которые содержат как минимум одно описательное поле и могут содержать поля указывающего на родителя данной таблицы (консольные таблицы).
Схема снежинка более тяготеет к нормальности данных. При использовании схемы снежинка снижается производительность и понимание функционирования многомерной БД.
Выделяют несколько технологий реализации хранилищ:
- Виртуальное хранилище данных.
- Концепция общего хранилища (CIF).
- Концепция WH Bus (распределенное хранилище).
- Гибридная концепция.
Кратко рассмотрим виды хранилищ и их схемы. Урок по проектированию хранилища данных можно посмотреть тут (ссылка).
Виртуальное хранилище
Виртуальное хранилище представляет собой витрину данных, которая собирает данные из разных источников.
Основные преимущества:
- Быстрота работы с текущими данными.
- Минимизация объема памяти на носителе.
Недостатки:
- Требуется постоянная доступность всех источников данных.
- Различное представление данных у разных источников. (кодировки, числовой формат и т.д.).
- Ограничение периода хранения данных у источников. Это приводит и к ограниченному набору данных в самой DM.
Борьба за доступность к хранилищу и увеличение периода времени привели к появлению других концепций для хранения данных.
Общее хранилище
Общее хранилище представляет собой хранилище, куда копируются все виды данных.
Преимущества:
- Централизованное реляционное хранилище 3 нормальной формы необходимых данных (атомарных).
- Единая загрузка данных из источников.
- Возможность сохранять большие объемы данных.
- Непротиворечивость данных.
- Высокая скорость работы с данными.
Недостатки:
- Сложность организации такого хранилища.
- Ограничение по объему хранилища данных.
- Дублирование данных.
Распределенное хранилище
Распределенное хранилище представлено на схеме.
Преимущества:
- Распределенное реляционное хранилище 3 нормальной формы необходимых данных (атомарных).
- Единая загрузка данных из источников.
- Возможность сохранять очень большие объемы данных.
- Непротиворечивость данных.
Недостатки:
- Сложность организации такого хранилища.
- Более низкая скорость работы, чем общее хранилище.
Гибридное хранилище
Гибридное хранилище представляет 3 уровневую систему хранения данных.
- Уровень - мощный SQL сервер, который хранит все атомарные данные.
- Уровень - организация витрин.
- Уровень - обработка данных клиентом.
Преимущества:
- Единая загрузка данных из источников.
- Возможность сохранять очень большие объемы данных.
- Непротиворечивость данных.
Недостатки:
- Высокая сложность организации хранилища.
- Более низкая скорость работы, чем общее хранилище.
Ссылки на материалы:
- Подробности
- Опубликовано: 22 Май 2013
- Просмотров: 7975