Информационное хранилище и технология анализа данных

В настоящее время весьма актуальной является тема хранилищ данных. Приведем определение, сформулированное в 1992 г. «отцом-основателем» хранилищ данных Биллом Инмоном:

«Хранилище данных – это предметно-ориентированное, привязанное ко времени и неизменяемое собрание данных для поддержки процесса принятия управляющих решений».

Началом истории российского рынка хранилищ данных и средств оперативного анализа принято считать 1996 год, когда в России появилось сразу несколько поставщиков программных продуктов этого класса.

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

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

· OLTP-системы не предназначены для анализа данных;

· данные имеют разнообразную и сложную структуру;

· организация пользовательского доступа представляет собой весьма сложную задачу;

· процесс доступа пользователей замедляет выполнение бизнес-операций.

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

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

К хранилищу могут затем получить доступ пользователи. Эти данные тематически организованы (например, клиенты, продукты, географические регионы), поэтому их легче анализировать по сравнению с данными, сгруппированными «вокруг» приложений.

Задача хранилища – предоставить «сырье» для анализа в одном месте и в простой, понятной структуре.

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

Под хранилищем можно понимать не обязательно гигантское скопление данных – главное, чтобы оно было удобно для анализа. Вообще говоря, для маленьких хранилищ предназначается отдельный термин – Data Marts (киоски данных), но в нашей российской практике его практически не услышишь.

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

Дадим краткое определение вышеприведенным терминам.

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

СУБД (система управления базами данных) –совокупность программных и лингвистических средств общего или специального назначения, обеспечивающих управление созданием и использованием баз данных.

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

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

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

Принципы организации хранилища:

1. Проблемно-предметная ориентация. Данные объединяются в категории и хранятся в соответствии с областями, которые они описывают, а не с приложениями, которые они используют.

2. Интегрированность. Данные объединены так, чтобы они удовлетворяли всем требованиям предприятия в целом, а не единственной функции бизнеса.

3. Некорректируемость. Данные в хранилище данных не создаются: т.е. поступают из внешних источников, не корректируются и не удаляются.

4. Зависимость от времени. Данные в хранилище точны и корректны только в том случае, когда они привязаны к некоторому промежутку или моменту времени.

 

Задачи и содержание оперативного (OLAP) анализа. Признаки OLAP-системы.

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

Извлечение информации сопровождается обработкой её по несложным алгоритмам, например: производится суммаризация, определение процентов от заданных величин, получение относительных показателей, вычисление величин с заданными коэффициентами и другие действия над данными на разных уровнях детализации. Анализ производится с данными, представленными в виде электронных таблиц, над которыми предоставляется возможность оперативно производить различные более сложные вычисления.

Извлечение необходимой информации для построения отчётов производится путём использования ряда процедур. К ним относятся:

· сечение или срез ( slice and dice ) – извлечение данных из факт-таблицы по каким-либо определённым значениям одного или нескольких измерений, например из гиперкуба (факт-таблицы ), содержащей сведения об издержках, в отчёт (раздел отчёта) помещают данные только по какому–либо одному виду или группе издержек;

· поворот, под которым понимают изменение координат, их порядка или добавление измерений; эта процедура обеспечивает замену в готовом отчёте «Издержки», к примеру, аргумента – время на регионы или центры затрат; если рассматривалась взаимозависимость «возраст – семейное положение» то можно в качестве аргумента брать любое из этих измерений и менять их местами;

· свёртка – агрегируются данные по заданным признакам и алгоритмам; можно группировать необходимые данные, содержащиеся в информационном хранилище в детальном виде, так при занесении сведений в операционную БД ежесуточно в информационное хранилище их можно передавать в агрегированном виде – еженедельно или ежемесячно, соответственно агрегированные данные можно помещать в отчёты;

· развёртка или раскрытие – процедура, обратная свёртке, данные детализируются, например группы товаров представляются по конкретным товарам, более крупные временные периоды разбиваются на мелкие и т.д.;

· создание кросс-таблиц – то есть совмещение данных из разных таблиц по заданным признакам; например, создаётся отчёт, в котором сводятся данные об издержках и выручке по одним и тем же изделиям и временным периодам;

· проекция – конструирование отчётов, являющихся подмножествами из множества единичных реквизитов или атрибутов, содержащихся в операционных базах или в информационных хранилищах;

· построение трендов – зависимость числовых или качественных значений показателя от тех или иных параметров, времени, технологии и т.д.

Инструменты OLAP-систем обеспечивают возможность сортировки и выборки данных по заданным условиям. Могут задаваться различные качественные и количественные условия.

Термин «OLAP» неразрывно связан с термином «хранилище данных». Централизация и удобное структурирование – это далеко не все, что нужно аналитику. Ему ведь еще требуется инструмент для просмотра, визуализации информации. Традиционные отчеты, даже построенные на основе единого хранилища, лишены одного – гибкости. Их нельзя «покрутить», «развернуть» или «свернуть», чтобы получить желаемое представление данных. В качестве такого инструмента и выступает OLAP.

Многомерность в OLAP-системах может быть разделена на три уровня:

· Многомерное представление данных – средства конечного пользователя, обеспечивающие многомерную визуализацию и манипулирование данными; слой многомерного представления абстрагирован от физической структуры данных и воспринимает данные как многомерные.

· Многомерная обработка – средство (язык) формулирования многомерных запросов (традиционный реляционный язык SQL здесь оказывается непригодным) и процессор, умеющий обработать и выполнить такой запрос.

· Многомерное хранение – средства физической организации данных, обеспечивающие эффективное выполнение многомерных запросов.

Первые два уровня в обязательном порядке присутствуют во всех OLAP-средствах. Третий уровень, хотя и является широко распространенным, не обязателен, так как данные для многомерного представления могут извлекаться и из обычных реляционных структур; процессор многомерных запросов в этом случае транслирует многомерные запросы в SQL-запросы, которые выполняются реляционной СУБД.

Все ИАС, сертифицированные как OLAP –системы, имеют в своём составе соответствующие программные модули. Реализация их направлена на максимальное упрощение действий пользователя в процессе анализа. В процессе оперативного создания отчётов затруднительно по времени использование языковых средств. По этой причине широко используются упрощающие такую работу и сокращающие трудозатраты средства графического конструирования.

Основной принцип действия – сборка из элементов, представленных в графическом виде структур отчётов. Представленная общая структура базы данных в виде схемы с условно отображёнными атрибутами (реквизитами) и классами, являющаяся по существу заранее заготовленной витриной данных. Из неё простым перетаскиванием на отведённую часть экрана компонуется отчёт. Отпадает необходимость написания SQL–запроса. В некоторых инструментах в процессе графического конструирования автоматически формируется соответствующий SQL–запрос. Конструирование отчётов может быть организовано и на основе электронных таблиц. Для реализации такого подхода созданы специальные программные модули, реализующие систему диалоговых меню, шаблоны, графические конструкторы. Сценарий анализа формируется с использованием технологии drag & drop (перенести и оставить), а также выбором из предложенных в диалоговом окне альтернатив, нажатием курсором соответствующих кнопок, определяющих те или иные режимы, настройкой иерархического дерева атрибутов и т.д. С помощью перечисленных методов и соответствующих средств выбирается нужная база данных, соответствующие поля и записи, определяются подлежащие анализу показатели, задаются режимы фильтрации, взаиморасположение функций и параметров (повороты, срезы и другие процедуры OLAP-анализа).

Результаты анализа представляются в виде напечатанных отчётов или презентаций, которые состоят из следующих компонентов: страница, таблица, график. Для окончательного оформления с учётом эстетических и психофизиологических требований используют собственные средства ИАС или полученные результаты анализа в составе перечисленных компонентов переносят в другие среды, в которых могут быть добавлены различные дополнительные компоненты в виде рисунков, кино, фото, аудио, видеоматериалов. Экспорт данных может быть осуществлён и в Web–среду. Возможен и обратный вариант: все перечисленные дополнительные компоненты импортируются в качестве внедряемых OLE-объектов.