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

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

По Биллу Инмону (Bill Inmon), который за активное продвижение идеи хранилищ данных удостоен почетного титула "отца — основателя хранилищ данных":

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

В приведенном выше определении Инмона указанные характеристики данных понимаются следующим образом:

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

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

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

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

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

При успешной реализации хранилища данных в организации могут быть достигнуты следующие преимущества:

Потенциально высокая отдача от инвестиций. В случае применения данной технологии организации потребуется инвестировать значительные средства для того, чтобы гарантировать успешную реализацию проек­та. В зависимости от используемых технических решений необходимая сумма инве­стиций может варьироваться от 50 000 до 10 000 000 фунтов стерлингов. Однако по данным фирмы International Data Corporation (IDC) в 1999 году усредненная за 3 го­да прибыль на инвестированный капитал (ROI-прибыль — Return On Investment) в сфере хранилищ данных составила 401%, причем более 90% фирм, охваченных дан­ных исследованием, имели ROI-прибыль свыше 40%, половина фирм — свыше 160%, а четверть фирм — свыше 600% (IDC, 1996).

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

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

СУБД, созданная для поддержки оперативной обработки транзакций (OLTP системы) обычно рассматривается как непригодная для организации хранилищ данных, поскольку к этим двум типам систем предъявляются совершенно разные требования. Например, OLTP-системы проектируются с целью обеспечения максимально интенсивной обработки фиксированных транзакций, тогда как хранилища данных прежде всего для обработки единичных произвольных запросов.

В таблице 1.1 сравниваются основные характеристики типичных OLTP-систем и хранилищ данных.

Таблица 1.1.

OLTP-система Хранилище данных
Содержит текущие данные Содержит исторические данные
Хранит подробные сведения Хранит подробные сведения, а также частично и значи­тельно обобщенные данные
Данные являются динамическими Данные в основном являются статическими
Повторяющийся способ обработки данных Нерегламентированный, неструктурированный и эвристический способ обработки данных
Высокая интенсивность обработки транзакций Средняя и низкая интенсивность обработки транзакций
Предсказуемый способ использования данных Непредсказуемый способ использования данных
Предназначена для обработки транзакций Предназначена для проведения анализа
Ориентирована на прикладные области Ориентирована на предметные области
Поддержка принятия повседневных решений Поддержка принятия стратегических решений
Обслуживает большое количество работников Обслуживает относительно малое количество работников исполнительного звена руководящего звена

Проблемы, возникающие при разработке и сопровождении хранилищ данных:

Недооценка ресурсов, необходимых для загрузки данных. Многие разработчики склонны недооценивать время, необходимое для извлечения, очистки и загрузки данных в хранилище. На выполнение этого процесса может потребоваться по данным источников до 80% общего времени разработки, хотя эту долю можно существенно сократить при использовании более совершенных инструментов очистки и сопровождения данных.

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

Например, при вводе данных о новом объекте недвижимости некоторые поля могут остаться незапол­ненными (NULL) в результате того, что сотрудник в свое время ввел в базу данных не­полные сведения об этом объекте, невзирая на то, что они имелись в наличии.

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

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

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

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

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

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

Долговременный характер проектов. Хранилище данных представляет собой единый информационный ресурс органи­зации. Однако для его создания может потребоваться несколько лет (бывает до 2-3), а потому многие организации строят также свои собственные магазины данных (будут рассмотрены ниже). Магази­ны данных (data marts) предназначены для поддержки работы только какого-то од­ного подразделения организации или одной ее прикладной области, а потому создать их можно гораздо быстрее.