Оперативная аналитическая обработка (OLAP)

Инструменты класса OLAP (On-Line Analytical Processing, традиционный русский перевод – «оперативная аналитическая обработка») на сегодняшний день являются популярными аналитическими средствами, без которых практически невозможно представить информационно-аналитическую систему. Сам термин OLAP был введен в 1993 году Коддом, который рассмотрел недостатки реляционной модели с точки зрения корпоративных аналитиков. Средством, которое должно было исправить эти недостатки, и стала концепция OLAP. Справедливости ради нужно сказать, что подход, аналогичный OLAP (а именно, многомерное представление данных) использовался и до введения этого термина, но толчком к повсеместному распространению технологии и внедрению ее во множество аналитических продуктов, стала статья Кодда.

Среди недостатков реляционной модели и реляционных СУБД применительно к задачам анализа Кодд отметил следующие. Во-первых, аналитические запросы достаточно сложны, и связаны с выполнением большого количества относительно медленных реляционных операций соединения. Во-вторых, составление запросов к реляционным базам данных недоступно корпоративным аналитикам (в дальнейшем будем называть их «лицами, принимающими решение», или ЛПР). Второй недостаток обусловливает достаточно длинный цикл получения нужных сведений ЛПР – необходимо, к примеру, обратиться в информационную службу, где подготовят форму отчета с соответствующей информацией, а затем уже использовать отчеты этой формы. Решение этих проблем Кодд видел в аналитическом инструменте, поддерживающим многомерную модель, как понятную ЛПР. То есть, выделяется несколько измерений, в контексте которых рассматриваются различные показатели деятельности предприятия. Такая модель, в силу своей наглядности и интуитивности, должна позволить ЛПР самому обращаться к необходимой информации. С другой стороны, ответы на запросы должны генерироваться достаточно быстро (это требование и обусловливает часть «On-Line» акронима OLAP).

Кодд также сформулировал 12 правил, которым должна удовлетворять OLAP-система. Позднее, эти правила были переработаны в 18 свойств, разбитых на 4 группы. Данный набор правил не пользуется успехом. Возможно, в силу того, что в отличие от широко известного манифеста Кодда 1970 года, описывающего реляционную модель данных, статья 1993 года содержала гораздо меньше фундаментальных обоснований, и была менее выверена теоретически. Кроме того, она публиковалась под эгидой одного солидного поставщика аналитических систем и правила, сформулированные в ней, могут не быть универсальными, а учитывать специфику продуктов этого поставщика. Так или иначе, большей популярностью пользуется так называемый тест FASMI, который и можно принять за определение OLAP. FASMI является аббревиатурой, которая расшифровывается следующим образом:

Fast (быстрый) – время отклика системы должно измеряться секундами. Как показывают независимые исследования, время ожидания пользователем ответа от компьютера около 20 секунд. По истечении этого периода, у пользователя появляется чувство дискомфорта. Бесспорно, добиться выполнения любых запросов к большим массивам информации за секунды является сложной задачей для производителей OLAP инструментов. Собственно, это одно из основных направлений развития в этой области. Однако, как показывают некоторые опросы, неудовлетворительная скорость работы до сих пор является одной из главных претензий пользователей к инструментам этого класса.

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

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

Multidimensional (многомерный) – данные должны быть представлены в многомерной форме. Это главная часть определения OLAP.

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

Тест FASMI, как и правила Кодда, устанавливает некоторый эталон - «идеальный инструмент OLAP». В действительности, различные продукты можно сравнивать по тому, насколько удовлетворяют этим положениям. Продуктов, которые бы полностью им удовлетворяли, на данный момент не существует.

Связь OLAP и ХД

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

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

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