OLAP - online analytical processing, технология работы с многомерными данными, применяемая чаще всего при составлении разнообразных отчётов.
Когда вы работаете с базами данных, вы просто не можете не столкнуться рано или поздно с такой вещью, как OLAP. Новички нередко боятся этой аббревиатуры, и, в общем-то, нельзя сказать, чтобы совсем уж необоснованно. Тем не менее, в самом понятии OLAP ничего особенно сложного нет.
Расшифровывается аббревиатура OLAP на английском языке как "online analytical processing", что на русский можно перевести следующим образом: "аналитическая обработка в реальном времени". Обработка, конечно же, данных. Фактически, сегодня под OLAP понимают работу с многомерными данными, чаще всего используемыми при генерации каких-либо отчётов.
Именно для отражения этой многомерности часто используют представление данных в виде куба, которое нашло своё отражение в названии многих решений для OLAP. Куб здесь понимается в самом широком смысле, т.е. он многомерен, а его оси - это те параметры, значения которых требуется отобразить при OLAP-анализе.
Чтобы это всё звучало не слишком абстрактно, приведу вам пример использования OLAP-куба для работы с базой данных, содержащей сведения о заказах для транспортной компании. Чтобы пример не был слишком большим, обойдёмся без кодов SQL-запросов. Итак, у нас есть некоторая база данных, в которой размещаются записи о каждом заказе, выполненном компанией. В качестве одномерного набора данных в этом случае могут выступать данные, полученные в ответ на запрос о том, какие перевозки компанией были совершены в течение определённого периода времени. Другой одномерный набор - это данные о том, какие марки грузовиков (МАЗ, КАМАЗ, Volvo...) использовались для этих перевозок. Ну и, наконец, в качестве третьего одномерного набора могут выступать данные о том, по заказу какой фирмы или государственной организации осуществлена эта перевозка. Вот исходя из всех этих данных мы и можем сформировать трёхмерный куб, по осям которого будут располагаться, соответственно, даты осуществления перевозок, марки грузовиков и заказчики. Каждая из ячеек этого куба будет содержать информацию о том, сколько перевозок и грузовиками какой марки было совершено по желанию каждого заказчика. Стоит отметить, что такая структура куба сравнительно проста, поскольку OLAP-кубы бывают не только трёхмерными, и могут содержать в себе не только простые значения, получаемые из базы данных и не подвергающиеся дополнительной обработке.
Если вы заинтересовались темой OLAP, то могу порекомендовать вам отличный русскоязычный сайт, посвящённый целиком и полностью только ей. Он располагается по адресу www.olap.ru, и там вы найдёте массу материалов, рассчитанных как на новичков в области OLAP, так и на профессионалов.
Вадим СТАНКЕВИЧ
Горячие темы