Определение хранилища данных

После проведенного выше обсуждения причин и факторов, повлиявших на рождение концепции ХД, подведем итоги и дадим определения.

Концепция ХД была предложена в начале 90-х годов прошлого столетия как основа методологии организации данных в системах поддержки и принятия решений. Согласно классическому определению Б. Инмона, хранилище данных [2] есть предметно-ориентированная, интегрированная, неизменяемая и поддерживающая хронологию электронная коллекция данных для обеспечения процесса принятия решений.

Предметная ориентированность. Информация в ХД организована в соответствии с основными аспектами деятельности предприятия (заказчики, продажи, склад и т.п.), т.е. бизнес-процессами. Это является принципиальным отличием ХД от оперативной БД, где данные организованы в соответствии с операциями (выписка счетов, отгрузка товара и т.п.), т.е. бизнес-операциями. Предметная организация данных в ХД способствует как значительному упрощению анализа, так и повышению скорости выполнения аналитических запросов. Выражается она, в частности, в использовании иных, чем в операционных системах, схемах организации данных.

Интегрированность. Исходные данные извлекаются из операционных БД, проверяются, очищаются, приводятся к единому виду, в нужной степени агрегируются (то есть вычисляются суммарные показатели) и загружаются в ХД. Такие интегрированные данные намного проще анализировать.

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

Неизменяемость. Попав в определенный исторический слой ХД, данные уже никогда не будут изменены. Это также отличает ХД от операционных БД, в которой данные все время меняются и один и тот же запрос, выполненный дважды с интервалом в 10 минут, может дать разные результаты. Стабильность данных также облегчает их анализ.

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

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

Использование термина "поддержка и принятие решений" в качестве сферы применения ХД существенно сужает как определение, так и возможность применения концепции в других сферах. Если в определении в качестве области применения оставить лишь анализ и воспроизводство новых данных (как элемент обработки информации в научных, технологических и экологических системах), круг использования данной концепции может быть значительно расширен. Таким образом, можно дать и такое определение [11]:

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

Очень важен основной принцип действия ХД: единожды занесенные в ХД данные затем многократно извлекаются из него и используются для анализа. Отсюда вытекает одно из основных преимуществ использования этой технологии: контроль информации, полученной из различных источников, предварительно согласованной и размещенной в ХД. Отметим, что отсюда следует и наиболее уязвимое место ХД — корректность его данных, полученных из разных источников. Данные перед загрузкой должны быть либо "очищены от шума", либо обработаны методами нечеткой логики, допускающей наличие противоречивых фактов, чтобы противоречия в данных были по возможности устранены. Заметим также, что интеграция в определении ХД понимается не только как интеграция информации по всем источникам, но и в смысле согласованного представления данных из разных источников по их типу, размерности и содержательному описанию.

С точки зрения применения концепции в бизнесе, производстве и технологиях следует придерживаться следующего определения [12]:

ХД — структурно расширяемая вычислительная среда, спроектированная для анализа неизменяемых во времени данных, которые логически и физически преобразованы из различных источников, соответствующая направлениям бизнеса, обновляемая и поддерживаемая длительный период времени, выраженная в простых бизнес-терминах и обобщенная (суммированная) для быстрого анализа.

На практике для реализации ХД используются СУБД, поддерживающие определенную модель данных. Поэтому с точки зрения реализации ХД следует считать БД специальной структуры. Предметом настоящей книги является изучение вопросов, связанных с проектированием реляционных ХД.

Типы хранилищ данных

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

Потом стало очевидным, что ХД обладают определенной внутренней структурой. Они содержат базовые данные, которые образуют единый источник для обработки данных во всех системах поддержки принятия решений (DSS). С помощью ХД можно выполнить согласование данных, несмотря на разногласие данных-источников. А элементарные данные, присутствующие в ХД, могут быть представлены в различной форме, отвечая не только известным требованиям, но и еще неизвестным.

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

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

Несмотря на то, что указанные выше характеристики являются общими для всех ХД, в настоящее время довольно трудно типизировать и классифицировать всевозможные ХД. Можно предложить некоторую классификацию ХД в зависимости от характеристик предметной области, которые придают ХД индивидуальные особенности. Классификация архитектурных программно-аппаратных решений будет дана в следующей лекции.

Далее будут кратко описаны типы ХД по Б. Инмону. В основу его классификации положен отраслевой принцип применения ХД.