Понятие хранилища данных (ХД). Отличия ХД от БД.
Хранилище данных - предметно-ориентированный, интегрированный, зависимый от времени набор данных, предназначенный для поддержки принятия решений различными группами пользователей.
Так как хранилище носит предметно-ориентированный характер, его организация нацелена на содержательный анализ информации, а не на автоматизацию бизнес-процессов. Это свойство определяет архитектуру построения хранилища и принципы проектирования модели данных, отличные от тех, что применяются в оперативных системах.
ХД строится на базе клиент-серверной архитектуры, реляционной СУБД и утилит поддержки принятия решений.
К хранилищу присоединяются сторонние программные продукты, которые делают модели, основанные на интеллектуальном, а не статистическом анализе данных и получают скрытые закономерности. Но включают они генетические алгоритмы, нейронные сети, нелинейная динамика, кластеризация, гибридные системы - достаточно большое количество технологий для построения моделей в хранилище. Это необходимо тогда, когда когда количество данных таково, что прямой поиск и статистические методы анализа результата не дают.
Основные составляющие Хранилища данных:
1.Предметная ориентированность
Локальные базы данных содержат мегабайты информации, абсолютно не нужной для анализа (адреса, почтовые индексы, идентификаторы записей и др.). Подобная информация не заносится в хранилище, что ограничивает спектр рассматриваемых данных при принятии решения до минимума.
Для принятия решений требуется некоторая строго определенная совокупность данных, которая и вытаскивается из БД в ХД, второстепенные ненужные атрибуты отсеиваются.
2.Интегрированность (целостность и внутренняя взаимосвязь)
Несмотря на то что данные погружаются из различных источников, но они объединены едиными законами именования, способами измерения атрибутов и др. Это имеет большое значение для корпоративных организаций, в которых одновременно могут эксплуатироваться различные по своей архитектуре вычислительные системы, представляющие одинаковые данные по-разному. Например, могут использоваться несколько различных форматов представления дат или один и тот же показатель может называться по-разному. В процессе погружения подобные несоответствия устраняются автоматически. Это самая трудоемкая часть создания ХД.
3.Временная привязка
Оперативные системы охватывают небольшой интервал времени, что достигается за счет периодического архивирования данных. ХД, напротив, содержит данные, накопленные за большой интервал времени (от пяти-семи до десятков лет).
4.Неразрушаемая совокупность данных.
Модификация данных не производится, поскольку может привести к нарушению их целостности.
Отличия:
Если БД невелика, узкоспециализироана и имеется квалифицированный программист, способный писать нестандартные запросы, собирающие данные в массив и анализирующие эти данные, то вместо ХД можно использовать обычную БД. Хранилище же предназначено не для программиста - им должен суметь воспользоваться аналитик, руководитель, человек, не владеющий навыками написания сложных запросов.
Недостатки использования БД в поддержке принятия решений:
·недостоверность данных;
·низкая производительность при нестандартных запросах;
·невозможность преобразования разнородных данных, так как они часто не имеют меток времени;
·Проблемы при подготовке отчетов возникают из-за того, что:
- трудно понять, где находятся данные, необходимые для анализа и принятия решения;
- большинство БД ориентировано только на стандартные запросы;
- требуется привлекать программистов для выполнения нестандартных запросов.
Особенности хранилищ данных:
- Хранилища данных содержат информацию, собранную из нескольких оперативных баз данных.
- Хранилища, как правило, на порядок больше оперативных баз, зачастую имея объем от сотен гигабайт до нескольких терабайт.
- Как правило, хранилище данных поддерживается независимо от оперативных баз данных организации, поскольку требования к функциональности и производительности аналитических приложений отличаются от требований к транзакционным системам.
- Хранилища данных создаются специально для приложений поддержки принятия решений и предоставляют накопленные за определенное время, сводные и консолидированные данные, которые более приемлемы для анализа, чем детальные индивидуальные записи.
- Рабочая нагрузка состоит из нестандартных, сложных запросов, которые обращаются к миллионам записей и выполняют огромное количество операций сканирования, соединения и агрегирования. Время ответа на запрос в данном случае важнее, чем пропускная способность.