OLAP
OLAP (OnLine Analytical Processing) — оперативная аналитическая обработка данных или анализ данных в реальном времени.
Термин впервые использовал создатель теории реляционных баз данных Эдгар Кодд в 1993 г. в статье «OLAP для пользователей-аналитиков: каким он должен быть».
Суть технологии
Бизнес-данные разной формы собирают из множества источников. При этом их объем настолько большой, что без применения автоматических систем его не проанализировать. Тогда на помощь приходят аналитические системы OLAP. Они обрабатывают огромные массивы данных с учетом множества критериев и максимально быстро предоставляют нужную информацию из разнородных хранилищ. Благодаря этому удается оперативно принимать важные бизнес-решения.
Технология объединяет хранилища данных, сервер, управляющий массивами данных, а также программное обеспечение для визуализации аналитической информации и составления отчетов. Сервер группирует данные в многомерную иерархию, которая позволяет ему эффективно и быстро получать в наглядном виде необходимые сведения — с помощью динамической обработки сложных запросов.
Как работают OLAP-системы
OLAP состоит из нескольких компонентов:
- Хранилище данных.
- Средства ETL.
- Сервер.
- Аналитические инструменты.
Хранение данных
Данные появляются вне аналитической системы и имеют самую разную форму и представление. А для оперативной обработки структура данных должна быть оптимизирована под ее особые требования. Решение этой проблемы — специальные хранилища, где данные заранее импортированы из различных источников, а затем очищены, преобразованы в нужный формат и упорядочены по заданному принципу — в многомерные или классические реляционные базы данных.
Многомерные хранилища
Такая система называется MOLAP.
Для хранения строится OLAP-куб — многомерный массив данных, упорядоченный по измерениям или категориям.
С помощью последних создаются информативные сводные таблицы. В центре куба расположена двумерная таблица фактов, которые характеризуют взаимодействие элементов из разных измерений.
MOLAP — cамый быстрый вид аналитических систем: сервер напрямую извлекает из куба меры, которые соответствуют поступающим запросам.
Однако такая база данных может очень сильно разрастаться и занимать значительный объем диска и оперативной памяти, что повышает нагрузку на всю систему. MOLAP обычно поддерживает однопользовательский режим записи и многопользовательский режим чтения.
Реляционные хранилища
Такая система называется ROLAP.
Простое хранилище: данные нормализованы по множеству взаимосвязанных таблиц. Технология позволяет интегрировать систему OLAP с уже используемой, например, учетной системой.
Недостаток системы ROLAP заключается в ее медлительности — ведь структура данных в хранилище не оптимизирована для OLAP. Система *ROLAP гораздо лучше масштабируется и способна анализировать обширные и подробные данные.
Гибридные решения
Самая распространенная система OLAP — HOLAP.
Объединяет возможности MOLAP и ROLAP: основные подробные данные находятся в реляционной базе данных, а множество предварительно рассчитанных мер — в кубе. Система обеспечивает самые оптимальные и эффективные решения.
Средства ETL
ETL (Extract, Transform, Load) — это средства извлечения, преобразования и загрузки данных, которые позволяют хранилищу взаимодействовать с окружающим миром. С их помощью данные попадают в хранилище, обрабатываются и конвертируются в нужный формат, выгружаются на сервер для аналитической обработки и возвращаются обратно для просмотра результатов.
Сервер
Ядром системы является сервер — именно он забирает данные из источников, преобразует их с помощью средств ETL, выполняет предварительные расчеты, обрабатывает запросы клиента и руководит работой всей инфраструктуры OLAP.
Аналитические инструменты
Аналитические инструменты — это программы и приложения, которые выступают в роли посредников между пользователем и хранилищем данных. С их помощью аналитики формируют запросы к базам данных и отчеты с наглядным представлением важной для бизнеса информации.
Требования к OLAP-системам
Вместе с понятием аналитической системы OLAP Эдгар Кодд предложил 12 критериев, по которым система признается таковой. Однако, по мнению некоторых специалистов, его подход оказался недостаточно конкретизированным, поэтому через некоторое время были предложены новые критерии, суть которых раскрывает аббревиатура FASMI — Fast Analysis of Shared Multidimensional Information, то есть быстрый анализ доступной многомерной информации. К аналитическим системам OLAP выдвигается пять основных требований:
- Скорость реакции (Fast) — реакция системы должна быть быстрой: время между запросом и откликом не должно превышать пяти секунд. Это важно для оперативного представления информации в системах поддержки принятия решений, чтобы полученный результат строго соответствовал текущей ситуации.
- Аналитические возможности (Analysis) — система должна выполнять любой логический, численный или статистический анализ, требуемый в рамках выполняемых задач, а также представлять и сохранять его результаты в доступном и наглядном виде.
- Доступность данных (Shared) — данные в системе должны быть доступны множеству пользователей, но только в необходимом им объеме, который определяется механизмами разграничения прав или ролей.
- Многомерность представления (Multidimensional) — данные должны быть представлены в многомерных иерархических структурах. Причем это должно отражаться не в физической структуре хранилища, а в логике пользовательских запросов. Это главное требование к системам OLAP.
- Релевантная информация (Information) — система должна работать с нужными данными независимо от их расположения и объема. При этом наличие посторонних нерелевантных приложению данных может негативно сказаться на быстродействии и эффективности всей системы.
Чем отличаются технологии OLAP и OLTP
Описание OLTP | Описание OLAP |
---|---|
OLTP — OnLine Transaction Processing — это технология обработки транзакций в реальном времени. Она обеспечивает непрерывное занесение данных в базу, их модификацию и извлечение. Данные размещаются в простых таблицах и, как следствие, занимают не так много места в хранилище. Но главное: OLTP-системы не предназначены для комплексного анализа данных, скорее, это инструмент их массового сбора и преобразования. | OLAP-системы хранят неизменные многомерные исторические данные и данные транзакций (зачастую собранные системами OLTP), позволяя получать по ним сложную аналитику. |
Назначение OLTP | Назначение OLAP |
Пользователи приложений, где происходит обмен данными | Аналитики данных, которые собираются в приложениях |
Во многих случаях эти технологии образуют тандем, который помогает бизнесу быстро анализировать происходящее и находить лучшие решения.
Преимущества технологии OLAP
- Прямой доступ к данным — пользователь может извлечь и просмотреть любые существующие в базе данные без фильтрации и преобразования.
- Все данные в одном месте — OLAP позволяет реализовать общую платформу для поддержания всех аналитических процессов предприятия.
- Неизменность данных — огромные массивы данных в OLAP обработаны заранее и хранятся в неизменных специализированных архивах, что значительно ускоряет их комплексный анализ.
- Универсальность — OLAP-системы отличаются особой гибкостью: конечные пользователи могут извлекать произвольные данные, формировать любые отчеты и выполнять самые разные аналитические операции.
- Быстрая детализация итоговых данных — иерархическая многомерная структура хранения позволяет оперативно представлять результат анализа данных с нужной степенью детализации.
- Высокая скорость формирования отчетов — все данные рассчитаны заранее, поэтому при составлении отчета нужно дождаться только вывода результатов в заданном виде.
- Возможность выявления скрытых зависимостей — многомерность данных помогает обнаружить неочевидное влияние одних производственных процессов на другие.
OLAP-технологии от Яндекса
В 2009 году специалисты из Яндекса приступили к разработке аналитической СУБД ClickHouse®
Однако самостоятельная поддержка и развитие ClickHouse® требует немало времени и финансовых затрат. Поэтому Yandex Cloud предлагает своим пользователям управляемый сервис Managed Service for ClickHouse®, предназначенный для развертывания и обслуживания кластеров ClickHouse® в среде Yandex Cloud.
С ним вы экономите ресурсы и можете:
- создавать системы, в которых требуется обработка и хранение большого объема данных;
- обрабатывать аналитические запросы в режиме реального времени;
- работать с системами, которым нужна линейная масштабируемость по вертикали и горизонтали;
- обрабатывать запросы параллельно на нескольких процессорных ядрах;
- визуализировать структуру данных на кластере;
- отправлять SQL-запросы к базам из консоли управления Yandex Cloud.
Managed Service for ClickHouse® подойдет для мониторинга инцидентов, внутренней аналитики, аналитики веб-проектов и мобильных приложений. Для пользователей разработаны курсы по работе с сервисом и его интеграции с другими сервисами платформы.
Чтобы начать работу, изучите документацию, где собрана вся необходимая информация для знакомства с Managed Service for ClickHouse®. А если у вас останутся вопросы, найти ответ всегда поможет служба поддержки клиентов.
Альтернативой ClickHouse® может служить YDB
См. также
- Как использовать управляемую базу данных ClickHouse® в Yandex Cloud
- ClickHouse®: обзор и сравнение с традиционными базами данных
- Построение корпоративной аналитической платформы
- SevenTech: как построить гибкую Self‑Service аналитику для сотрудников компании и внешних партнеров
- Бессерверная аналитика: YDB OLAP Serverless
ClickHouse® является зарегистрированным товарным знаком ClickHouse, Inc