Отличие QlikView / Qlik Sense от бизнес-анализа на базе OLAP-технологий
Современные системы бизнес-анализа (Business Discovery) имеют следующие отличия от систем бизнес-анализа на базе OLAP-технологий:
- системы бизнес-анализа Business Discovery хранят транзакционные данные, и поэтому нет необходимости постоянно изменять модель/архитектуру данных. Бизнес-задачи решаются и новая отчетность создается на уровне визуализации данных;
- в OLAP-кубах существуют избыточные данные (нули);
- OLAP-кубы сложно связывать;
- в куб сложно добавлять измерения (они стремительно увеличивают размер);
- новый запрос от бизнес-пользователей – часто нужен новый куб данных;
- в кубах хранятся суммы, поэтому для новых разрезов строятся новые кубы;
- гораздо быстрее разрабатывается модель данных: создание OLAP-куба для SAP BW – от 5 дней, решение такой же задачи в QlikView – всего 5 минут;
- любое поле в QlikView может быть и показателем и измерением одновременно;
- с точки зрения бизнес-пользователя в QlikView каждый следующий анализ делается на основе предыдущих;
- решение QlikView может поддерживать 1 человек и туда входит всё: ETL, модель данных, хранение и визуализация. В крупных системах этим занимается минимум 3 человека;
- в существующих системах бизнес-анализа очень много продуктов, за каждый продукт отвечает конкретный человек.
Решения на базе OLAP обеспечивает, теоретически, максимальную скорость обработки запросов, но обладает рядом серьезных недостатков:
- Огромный "взрыв" данных. На кубах с большой размерностью, отношения объема многомерного куба к объему исходных данных, часто, составляет десятки и сотни раз.
- Медленная загрузка данных. Загрузка новой порции данных приводит каждый раз к перестройке всего куба, что происходит непозволительно долго. К тому же, пользователи не могут в это время работать с данными.
- Изменение в структуре куба приводит к его полной перестройке.
- Пользователи не могут осуществлять произвольные запросы к системе, только те, которые были запланированы при проектировании куба. Произвольные запросы невозможны!
Реальность текущих бизнес сценариев выглядит таким образом, что большинство из них являются неоптимальными с точки зрения производительности.
В настоящее время традиционная IT инфраструктура не может полностью удовлетворять потребностям одновременно транзакционных и аналитических систем. Это соответственно ведет к тому, что в архитектуре систем делаются уступки, тем или иным образом компенсирующие слабые стороны. Традиционные архитектуры практически не позволяют сочетать транзакционные среды (продажа товаров, обслуживание заказов, сбор денег) и аналитические (например доходность от продаж в разрезе заказчика или, например, конкретного региона).
Схема ниже показывает достаточно простой бизнес процесс, работающий в рамках традиционной IT инфраструктуры. Конкретный процесс на схеме – «От заказа до оплаты» присутствует практически в каждой компании, которая хочет управлять продажами своих продуктов. На данный процесс можно посмотреть с двух сторон: операционной и аналитической.
Транзакционная: «order to cash» является сквозным бизнес процессом. Его действие затрагивает многие отделы предприятия и требует данных из большого количества систем. В нашем случае данные о товарах и финансовые данные получаются из транзакционной системы. В нашем случае предполагается, что транзакционные данные используются в финансовой системе и в системе поставок. Компании могут создавать миллионы или даже миллиарды документов в день. Таким образом, автоматизированные системы должны иметь возможность обрабатывать и сохранять эти документы очень быстро. Каждый документ может быть достаточно простым по объему данных, которые в нем содержаться, но потенциально может потребоваться большому количеству людей или систем. При этом целостность данных является критичной, и эффективность работы процесса может играть важную роль в успешности жизнедеятельности предприятия.
Аналитическая: каждый документ может в последствие быть загружен в систему другого типа (аналитическую систему) для того, чтобы компания могла понять, изменилось ли что то и можно ли каким то образом улучшить бизнес процесс. В текущем примере данные о товарах и финансовые данные, содержащиеся в финансовой системе и в системе поставок, загружаются в аналитическую систему и анализируются с точки зрения их изменения с течением времени. В аналитической системе можно провести анализ стоимости и доходности на данных загруженных из транзакционных систем, и в случае формирования каких либо выводов по результатам анализа бизнес процессы в транзакционных системах могут быть адаптированы. В противоположность транзакционным системам аналитические системы могут оперировать огромными объемами данных, и анализ может занимать часы, дни или даже недели. В настоящее время стоимость такой архитектуры ограничивает число потенциальных пользователей теми, для кого аналитическая информация является реально критичной.
Цель QlikView и Qlik Sense
Уменьшить сложность и стоимость, связанную с описанным выше примером, где делается деление на транзакционную и аналитическую часть путем объединения их в единое целое. Схема ниже показывает как QlikView или Qlik Sense может обеспечить более простую среду для обеспечения работы того же бизнес процесса.
Основное преимущество заключается в том, что компании могут достигнуть экономии в нескольких областях:
- Более низкая стоимость CPU
- Более низкая стоимость хранения данных
- Более низкая стоимость управления данными
- Более низкая стоимость администрирования систем
- Более низкая стоимость на владения базами данных
- Более низкая стоимость на устройство сетей
Кроме чисто стоимостных выгод присутствует также тема более высокой производительности. QlikView позволяет достичь ускорения обработки данных в сотни или даже тысячи раз.
Преимущества QlikView и Qlik Sense
Не вдаваясь в детали можно было бы выделить несколько потенциальных областей, в рамках которых можно было бы достигнуть потенциального повышения производительности и рассматривать QlikView или Qlik Sense как потенциальную замену каким либо другим средствам аналитики (OLAP).
- Самоиндексация – QlikView сама строит индексы по таблицам. Таким образом, архитекторам и администраторам больше нет необходимости тратить время на создание, администрирование, анализ и оптимизацию индексов в схемах данных.
- Высокая степень сжатия данных – QlikView позволяет обеспечивать сжатие данных до 20 раз по сравнению с их оригинальным состоянием. Таким образом, при миграции 20 ТБ данных могут быть сжаты до 1 ТБ. Более того анализируются непосредственно сжатые данные. Все это позволяет сократить расходы на системы хранения данных и на вычислительные мощности.
- Поколоночное хранение данных – нет необходимости в предварительном построении агрегатов, как следствие, можно достаточно легко анализировать временные последовательности. В данном случае можно привести аналогию с калькулятором с бесчисленным количеством функций. В тоже время традиционные аналитические системы можно сравнить с калькуляторами с 4мя или 5тью предопределенными функциями. В традиционных системах необходимо знать, что конкретно необходимо искать и делать прекалькуяцию для оптимизации времени отклика. В QlikView или Qlik Sense таких требований нет и все типы анализа возможны фактически на лету.
- Хранение данных в памяти – поскольку данные доступны мгновенно, возможны варианты очень быстрого анализа. Есть примеры, когда обработка данных в QlikView или Qlik Sense происходила в 10000, а то и в 100000 раз быстрее.
- Консолидация транзакционных и аналитических данных - данное преимущество будет ключевым для QlikView или Qlik Sense. Объединение транзакционных и аналитических данных (расчета на лету) в едином хранилище, на едином оборудовании/сетевой инфраструктуре может кардинально уменьшить стоимость владения системой, одновременно увеличив и улучшив доступ, качество данных и производительность системы.
- Новые типы бизнес приложений - использование QlikView или Qlik Sense в качестве аналитического инструмента представляет возможности по разработке совершенно новых типов приложений, таких как анализ займов, сегментация покупателей в торговле, онлайн оценка рисков, и т.д.