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

Так для чего же необходимы хранилища данных? Почему компании вкладывают немалые средства в создание и поддержку таких систем?

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

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

Попытаемся выделить основные черты предприятия, для которого проблемы анализа данных будут наиболее актуальны. Скорее всего, это предприятие будет довольно крупным по размерам и объему обрабатываемых данных. Оно имеет разветвленную структуру бизнеса, сеть филиалов. В разных подразделениях используются различные информационные системы. При этом менеджерам высшего звена требуется более точный анализ работы предприятия и выявление тенденций рынка, на котором оно работает. Для поддержки принятия решений необходимы отчеты, составляемые на основе данных из различных информационных систем. На их создание отделу информационных технологий постоянно требуется значительное время. В итоге экономисты и финансовые аналитики выражают недовольство недоступностью информации, необходимой им для анализа. Такая ситуация в англоязычной литературе часто называется «data in jail», или «данные в тюрьме». Иными словами, информация имеется, но она недоступна аналитикам и руководству.

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

Что дают хранилища данных

Комментарии руководителей компаний, уже использующих хранилища данных

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

См. «Хранилище данных для воздушной гавани Северо-Запада». Enterprise Partner №9 (26), 2001.

Финансовая служба Октябрьской железной дороги: «Эксплуатация с 1997 года хранилищ данных позволила существенно сократить время на подготовку отчетов. Мы повысили оперативность и качество принимаемых решений за счет более эффективного анализа финансового состояния дороги».

См. «АИС финансовой службы Октябрьской железной дороги». Enterprise Partner №1, 1999.

Отдел прогнозирования экономического анализа пивоваренной компании «Балтика»: «Внедрение OLAP-технологий позволило планировать затраты на производство при появлении новых сортов продукции».

Накопление исторической информации

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

Объединение данных разнородных источников

Как правило, информационные системы предприятия хранят и представляют аналогичные данные по-разному. Например, одни и те же показатели могут храниться в различных единицах измерения (тонны, штуки и т.д.). Одна и та же продукция или одни и те же клиенты могут именоваться по-разному. Эти проблемы знакомы практически всем предприятиям. С ними постоянно приходится сталкиваться при построении отчетов и анализа данных из нескольких оперативных систем.

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

Очистка данных

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

Универсализация доступа к данным

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

Ускорение получения аналитических отчетов

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

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

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

Практика показывает, что в средней организации построение текущего планового отчета средствами «1С:Предприятие» занимает порядка 20 мин. Тот же отчет на основе той же информации, но загруженной в хранилище данных, будет построен на порядок быстрее - за 2-3 с.

Построение произвольных запросов

Информацию в хранилище данных недостаточно только централизовать и структурировать. Аналитику нужны средства визуализации этой информации, инструмент, с помощью которого легко получать данные, необходимые для принятия своевременных решений. Одно из главных требований любого аналитика - простота формирования отчетов и их наглядность. В случае оперативных систем построение отчетов часто лишено гибкости; чтобы создать новый отчет, приходится задействовать специалистов ИТ-отдела, которые объединяют данные нескольких систем. В случае же использования хранилища данных решение проблемы предоставляет технология OLAP (On-Line Analytical Processing). Эта технология обеспечивает доступ к данным в терминах, привычных для аналитика.

Технология OLAP базируется на концепции многомерного представления данных. Действительно, каждое числовое значение, содержащееся в хранилище данных, имеет до нескольких десятков атрибутов (например, количество продаж определенным менеджером в определенном регионе на определенную дату и т.п.). Таким образом, можно считать, что работа идет с многомерными структурами данных (многомерными кубами), в которых числовые значения расположены на пересечении нескольких измерений. Именно этот подход используется в OLAP-системах. Они предоставляют гибкие средства навигации по многомерным структурам - так называемые OLAP-манипуляции. С их помощью аналитик может получать различные срезы данных, «крутить» данные. Финансовые аналитики, менеджеры получают возможность взглянуть на деловую активность своего предприятия «многомерно»: открыть новые тенденции, выявить аномалии в развитии бизнеса, быстро получить доступ к требуемой информации, повысить оперативность и качество принимаемых решений. Рассмотрим несколько типов отчетов, которые можно строить с использованием OLAP-средств на основе информации хранилища данных буквально «на лету».

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

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

Доставка продукции покупателю. Выбрав регион доставки продукции, можно оценить, какой из видов транспорта оптимален для отправки туда продукции (по стоимости, по времени доставки). Результирующий отчет можно детализировать, изменяя и уточняя другие параметры: наименование товара, компанию-перевозчик и т.п.

Углубленный анализ данных

Углубленный анализ данных, или data mining («добывание данных»), - процесс выявления тенденций, трендов, взаимных корреляций данных, находящихся в хранилище, с использованием средств искусственного интеллекта или статистического анализа. Основная цель data mining - обнаружить скрытые зависимости и тенденции, незаметные на первый взгляд, и обратить на них внимание менеджера или аналитика. Но для выявления тенденций и закономерностей необходимо большое количество информации, на основе которой будут работать алгоритмы метода. Если этой информации будет недостаточно или она будет неточна, обнаруженные зависимости могут оказаться неверными. Информацию, необходимую для data mining, может предоставить только хранилище данных.

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

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

Полина Трофимова - системный аналитик, Microsoft Certified Professional. С ней можно связаться по e-mail ac_polly@digdes.com