Технические отличия BI систем (Power BI, Qlik Sense, Tableau)
Время необходимое на прочтение 11 минут
Мы и Квадрат Гартнера 2019 BI:-)
Целью данной статьи является сравнение трёх ведущих BI платформ, которые находятся в лидерах квадранта Gartner:
— Power BI (Microsoft)
— Tableau
— Qlik
Рисунок 1. Gartner BI Magic Quadrant 2019
Меня зовут Жданов Андрей, я руководитель отдела аналитики компании Аналитикс Групп (www.analyticsgroup.ru). Мы строим наглядные отчёты по маркетингу, продажам, финансам, логистике, другими словами занимаемся бизнес аналитикой и визуализацией данных.
Я со своими коллегами уже несколько лет работаем с различными BI платформами. Имеем весьма неплохой опыт проектов, что позволяет нам сравнивать платформы с точки зрения разработчиков, аналитиков, бизнес-пользователей и внедренцев BI систем.
У нас будет отдельная статья по сравнению цен и визуальному оформлению этих BI систем, поэтому тут постараемся оценить эти системы именно с точки зрения аналитика и разработчика.
Выделим несколько направлений для анализа и оценим по 3 бальной системе:
— Порог вхождения и требования к аналитику;
— Источники данных;
— Очистка данных, ETL (Extract, Transform, Load)
— Визуализации и разработка
— Корпоративная среда — сервер, отчеты
— Поддержка мобильных устройств
— Embedded (встроенная) аналитика в сторонние приложения/сайты
1. Порог вхождения и требования к аналитику
Power BI
Я видел много пользователей Power BI, которые не были ИТ специалистами, но могли создать неплохой отчет. Power BI использует тот же язык запросов, что и Excel — Power Query и язык формул DAX. Многие аналитики хорошо знают Excel, поэтому перейти на эту BI-систему у них получается довольно легко.
Большинство действий достаточно не сложно выполняются в редакторе запросов. Плюс есть расширенный редактор с языком M для профессионалов.
Рисунок 2. Конструктор запросов Power BI
Qlik Sense
Qlik Sense выглядит очень дружелюбно — небольшое количество настроек, быстрая возможность создать отчет, можно использовать конструктор загрузки данных.
Поначалу он кажется проще чем Power BI и Tableau. Но из опыта скажу, что через некоторое время, когда аналитик создаст пару простых отчетов и ему понадобится что-то более сложное, он столкнется с необходимостью программировать.
Qlik обладает очень мощным языком загрузки и обработки данных. Есть собственный язык формул Set Analysis. Поэтому аналитик должен уметь писать запросы и соединения, помещать данные в виртуальные таблицы, активно пользоваться переменными. Возможности языка очень широкие, но он потребует его изучения. Наверно все аналитики Qlik, которых я знаю, имеют какой-то серьезный ИТ бэкграунд.
Интеграторы Qlik, вроде нас, часто любят рассказывать про ассоциативную модель, когда при загрузке данных все они помещаются в оперативную память, а связь между данными осуществляется внутренним механизмом платформы. Что при выборе значений, не производится внутренних подзапросов, как в классических базах данных. Данные выдаются почти мгновенно за счет заранее проиндексированных значений и связей.
Правда на практике это приводит к созданию автоматических соединений таблиц, при совпадении названий полей. Например, нельзя иметь разные таблицы без связей, у которых будет одинаковое поле. К этому надо привыкнуть. Приходится либо переименовывать столбцы и следить, чтобы имена не совпадали, либо сводить все таблицы фактов в одну и окружать их справочниками по типу «звезда». Наверно новичкам удобно, а опытным аналитикам уже без разницы.
Типичный интерфейс по загрузке и обработке данных для аналитика выглядит так.
Рисунок 3. Редактор загрузки данных Qlik Sense, таблица Calendar
Заметка: В Power BI ситуация обычно выглядит иначе, ты оставляешь разные таблицы фактов и справочников, можешь вручную соединять таблицы классическим способом, т.е. сопоставляю столбцы друг другу вручную.
Tableau
Tableau разработчики позиционируют как BI с удобным и дружелюбным интерфейсом, который позволит аналитику самостоятельно изучать свои данные. Да, у нас в компании были аналитики, которые без ИТ опыта могли делать свои отчеты. Но оценку Tableau снижу по нескольким причинам:
— Слабая локализация с русским языком
— Сервера Tableau Online находятся не в РФ
— Довольно простой конструктор загрузки начинает вызывать проблемы, когда нужно построить довольно сложную модель данных.
Рисунок 4. Конструктор загрузки данных Tableau
Один из вопросов, который мы задаём на собеседовании аналитикам по Tableau «Как построить модель таблиц фактов с таблицами справочниками, не приводя все в единую таблицу?!» Data Blending требует вдумчивого использования. Я много раз исправлял у своих аналитиков ошибки задвоения данных после таких объединений.
Плюс у Tableau довольно своеобразная система, когда ты каждый график делаешь на отдельном листе Sheet, а потом создаешь Dashboard, где начинаешь размещать созданные листы. Потом можно создать Story, это комбинация разных Dashboard. Разработка в Qlik и Power BI в этом плане проще, ты сразу накидал на лист шаблоны графиков, задал меры и измерения и Dashboard готов. Трудозатраты на подготовку в Tableau мне кажется из-за этого возрастают.
2. Источники данных и загрузка
В этом разделе нет явного лидера, но мы выделим Qlik из-за пары приятных особенностей.
Tableau в бесплатной версии ограничен в источниках, но мы в наших статьях больше ориентируемся на бизнес, а бизнес может позволить себе коммерческие продукты и аналитиков. Поэтому Tableau не стали снижать оценку по этому параметру.
Рисунок 5. Список возможных источников Tableau
В остальном, список источников везде впечатляет — все табличные файлы, все стандартные базы данных, web подключения, все везде работает. Я не сталкивался с нестандартными хранилищами данных, там возможно есть свои нюансы, но в большинстве случае у вас не будет проблем с загрузкой данных. Исключение, пожалуй только 1С. Прямых коннекторов к 1С нет.
Партнеры Qlik в России продают свои собственные коннекторы по 100 000 — 200 000 руб., но в большинстве случае дешевле сделать выгрузки из 1С на FTP в Excel или базу данных SQL. А можно опубликовать базу 1С в вебе и подключаться к ней по протоколу Odata.
PowerBI и Tableau умеют это стандартно, а вот Qlik попросит платный коннектор, поэтому тут тоже проще выгрузить в промежуточную базу данных. В любом случае вопросы все вопросы по подключениям можно решить.
Рисунок 6. Список возможных источников Qlik Sense
Дополнительно стоит отметить особенность Qlik, что отдельным продуктом они поставляют как платные, так и бесплатные коннекторы.
Рисунок 7. Дополнительные коннекторы Qlik Sense
Из опыта добавлю, что при больших объемах данных или многочисленных источниках не всегда целесообразно подключать сразу BI систему. В серьезных проектах обычно используется хранилище данных, база данных с уже подготовленными для анализа данными и т.д. Нельзя взять и выгрузить скажем 1 миллиард записей в BI систему. Тут уже нужно продумывать архитектуру решения.
Рисунок 8. Источники данных Power BI
Но почему же выделили Qlik? Мне очень нравится 3 вещи:
— QVD файлы
Собственный формат хранения данных. Иногда можно построить серьезные коммерческие проекты только на QVD файлах. Например, первый уровень — сырые данные. Второй уровень — обработанные файлы. Третий уровень — агрегированные данные и т.д. Эти файлы можно использовать в разных приложениях, за них могут отвечать разные сотрудники и сервисы. Скорость загрузки из таких файлов в десять раз быстрее чем из обычных источников данных. Это позволяет экономить на базе данных и обмениваться информацией между различными приложениями Qlik.
— Инкрементальная загрузка данных
Да, Power BI и Tableau также могут это делать. Но Power BI потребует дорогой Premium версии, а в Tableau нет той гибкости, как в Qlik. В Qlik на QVD файлах вы может делать слепки систем на разное время и потом обрабатывать эти данные как вам угодно
— Подключение внешних скриптов
Помимо QVD файлов для хранения данных, в Qlik код скрипта также можно вынести за пределы приложения и подключать командой Include. Это уже позволяет организовывать командную работу, использовать системы контроля версий, управлять единым кодом для разных приложений. В Power BI есть расширенный редактор запросов, но такой командной работы у нас не получилось настроить как в Qlik. Вообще у всех BI есть с этим проблемы, управлять одновременно и данными, и кодом, и визуализациями во всех приложениях из единого места просто невозможно. Максимум, что нам удалось сделать, это вынести QVD файлы и код скриптов. Визуальные элементы приходится редактировать внутри самих отчетов, что не позволяет нам массово менять визуализации у всех клиентов одновременно.
А как же такой механизм как Live соединение? Tableau и Power BI поддерживают LIVE соединение к ряду источников, в отличие от Qlik. К этой фиче мы относимся довольно равнодушно, т.к. практика показывает, что когда речь идет о больших данных работать с LIVE соединением становится просто невозможно. А BI в большинстве случаев и нужно для больших данных.
3. Очистка данных, ETL (Extract, Transform, Load)
В этом разделе у меня 2 лидера, Qlik Sense и Power Bi.
Скажем так, Qlik мощно, но сложно. Разберетесь в их SQL подобном языке и вы сможете почти все — виртуальные таблицы, соединения и объединение таблиц, пробежаться циклом по таблице и сгенерировать новые таблицы, куча команд по обработке строк. Например, поле в 1 ячейке, которое забито данными вида «Иванов 851 Белый» на лету можно разложить не только на 3 столбца (как все умеют), а сразу и на 3 строки например. Тоже самое на лету сделать объединение 3 строк в 1 тоже легко.
Рисунок 9. Как загрузить и транспонировать таблицу в Qlik Sense из Google Sheets
Power BI в этом плане представляется попроще, но большинство задач легко решается через конструктор запроса. Выставил ряд параметров, транспонировал таблицу, поработал над данными, и все это без единой строчки кода.
Рисунок 10. Как загрузить и транспонировать таблицу в Power BI из AmoCRM
У Tableau мне кажется другая идеология. Они больше за красоту и дизайн. Подключить кучу разных источников, объединить их все и обработать внутри Tableau мне кажется очень тяжело. В коммерческих проектах в большинстве случаев для Tableau уже подготавливаются и аккумулируются данные в хранилищах и базах данных.
Рисунок 11. Как загрузить и транспонировать таблицу в Tableau
4. Визуализации
В этом разделе мы не стали выделять лидера. У нас будет отдельная статья, где мы на примере одного кейса покажем один и тот же отчет во всех 3 системах (Статья «Аналитика девушек с низкой социальной ответственностью »). Тут больше дела вкуса и мастерства аналитика. На просторах интернета можно найти очень красивые картинки, построенные на базе любой из этих систем. Базовые возможности визуализаций примерно одинаковые у всех. Остальное решается использованием Extensons. Есть платные, бесплатные. Есть расширения от самих вендоров, так и от фрилансеров и интеграторов. Вы сами можете написать собственное расширение визуализации для любой платформы.
Мне нравится стиль Tableau, считаю его строгим и корпоративным. Но получить по настоящему красивую картинку в Tableau тяжело. Отличный пример визуализации Tableau, где использованы одни расширения. Я не смогу так повторить, т.к. у меня нет этих расширений, но смотрится красиво.
Рисунок 12. Внешний вид отчетов Tableau c Extensions
Power BI можно тоже сделать интересно.
Рисунок 13. Внешний вид отчетов Power Bi c Extensions
Единственное, чего я не понимаю в Power BI почему у них такие странные цвета по умолчанию. На любом графике я вынужден менять цвет на свой фирменный, корпоративный и удивляюсь стандартной расцветке.
Qlik Sense также зависит от Extensions. Использование дополнений может изменять отчеты до неузнаваемости. Также можно накатить свою тему и оформление.
Рисунок 14. Внешний вид отчетов Qlik Sense c Extensions
C точки зрения разработчика мне удобнее Qlik Sense из-за стандартных опций как альтернативные измерения и меры. Можно в настройках визуализации задать несколько измерений и мер, и пользователь может легко сам задать что ему смотреть на том или ином графике.
В Power Bi и Tableau мне приходится настраивать параметры, кнопки, программировать поведение системы в зависимости от этих параметров. Удивляюсь, почему так сложно. Тоже самое с возможностью изменить вид вилуазилизаций.
В Qlik можно в одном объекте спрятать разные виды визуализаций, а в Power BI и Tableau c этим сложнее. Опять же, тут больше зависит от мастерства исполнителя. Можно в любой системе сделать шедевр, а без опыта везде будут получаться невыразительные графики.
5. Корпоративная среда — сервер, отчеты
Все продукты имеют корпоративные серверные версии. Я работал со всеми редакциями и могу сказать, что у всех есть сильные и слабые стороны. Выбор продукта должен подбираться из ваших требований к ПО с учетом их нюансов. У всех вендоров можно раздавать права как на уровне учетных записей и групп, так и на уровне Data Row Level Security. Доступно автоматическое обновление отчетов по расписанию.
Qlik Sense Enterprise отличная возможность построить аналитику внутри вашей организации для среднего бизнеса. Это может показаться дороже чем Power BI Pro, но не надо забывать, что сервера Power BI Pro находятся в облаке на территории Microsoft и на производительность вы не можете повлиять, а когда вам нужен будет Power BI Premium, который можно развернуть на ваших серверах, то цена начинается от 5000$ в месяц.
Qlik Sense Enterprise стартует от 230 000 руб. на 5 лицензий (плата за год, далее только тех.поддержка), что гораздо доступнее чем Power BI Premium. И Qlik Sense Enterprise позволит использовать все возможности Qlik. Пожалуй кроме одной. Почему-то Qlik решили, что такая функция как возможность отправлять отчеты в PDF по электронной почте должна поставляться в виде отдельного сервиса NPrinting.
Но Qlik Sense Enterprise мощнее чем Power BI Pro и поэтому тут можно сделать следующее сравнение.
Qlik Sense Enterprise = Power BI Premium, при равных возможностях получается дешевле при средних внедрениях. Крупные внедрения обычно просчитываются уже на стороне вендора, там они могут давать индивидуальные условия под вашу компанию.
В этом плане мы дадим предпочтение Qlik Sense Enterprise, там есть все возможности построить серьезную аналитику на огромных данных. По нашему мнению на больших массивах Qlik будет работать быстрее Power BI, на конференциях Qlik попадались клиенты, которые вначале тестировали свои данные в миллиарды записей и Power BI показывал хуже результат.
Рисунок 15. Внешний вид отчетов сервера Qlik Sense Enterprise
Qlik Sense Cloud = Power BI Pro. Qlik Sense Cloud получается в 1.5 раза дороже* и там есть весьма существенное ограничение, которое нам не позволяет эту платформу. Нельзя использовать Extensions, даже встроенные. А без расширений Qlik несколько теряет свою визуальную красоту.
Рисунок 16. Внешний вид панели управления Power BI Pro
*Альтернативным вариантом является использование Qlik Sense Enterprise по подписке. Но чтобы эта статья не воспринималась как рекламная, своё ценообразование мы освещать не станем
А Tableau стоит немного в стороне для нас. У них есть как облачные подписки по 70$ на разработчика и 15$ на просмотр, так и дорогие серверные решения. Но основная идея Tableau, что для больших данных нужно обработку данных и их хранение организовывать на стороне. Объективно меньший функционал не позволить произвести серьезную обработку данных в Tableau. Визуализировать, анализировать, да. Но для маленького и среднего бизнеса обычно создавать отдельное хранилище бывает проблемно. Я бы занизил бал для Tableau поэтому, если бы не их 1 фишка. Сервер Tableau без проблем отправляет письма по электронной почте по расписанию с вложениями в CSV или PDF. Причем можно делать раздачу прав, автофильтров и прочее. Power BI и Qlik почему то так не могут, а кому то это может быть критично. За счет этого Tableau выдерживает позицию в нашем споре.
Рисунок 17. Внешний вид панели управления Tableau Server
Также в корпоративной среде нужно подумать о стоимости внедрений и обслуживания. В России сложилась практика, что Power BI более распространен в малом бизнесе. Это привело к появлению большого количества вакансий и резюме, появлению небольших интеграторов. Это позволит найти специалистов для небольшого проекта. Но скорее всего у всех у них не будет опыта больших внедрений и работы с большими данными. Qlik и Tableau наоборот. Партнеров Qlik немного, а Tableau и еще меньше. Эти партнеры специализируются на больших внедрениях с большим средним чеком. Вакансий и резюме на рынке не много, порог вхождения в эти продукты сложнее чем в Power BI. Но в России есть успешные внедрения этих продуктов на тысячи пользователей и эти продукты хорошо показывают себя на больших данных. Необходимо просто понимать слабые и сильные стороны продуктов применительно именно к вашему бизнесу.
6. Поддержка мобильных устройств.
В этом разделе мы выделим Power BI и Tableau. Вы можете установить мобильные приложения и они довольно адекватно будут смотреться на экранах мобильных устройств. Хотя нам кажется аналитика на мобильных устройствах проигрывает аналитике на ПК. Все таки не так удобно пользоваться фильтрами, картинки маленькие, цифры плохо видно и т.д.
Рисунок 18. Внешний вид отчета Power BI на iPhone
Рисунок 19. Внешний вид отчета Tableau на iPhone
Рисунок 20. Внешний вид отчета Qlik Sense на iPhone
Почему занизили баллы Qlik? По непонятным нам причинам мобильный клиент доступен только на iPhone, на Android придется пользоваться обычным браузером. Плюс при использовании Qlik сразу приходится понимать, что ряд Extension или визуализаций не уменьшаются или авто позиционируются в мобильных устройствах как ожидается. Отчет который очень красиво смотрится в ПК, на маленьком экране выглядит гораздо хуже. Приходится для мобильных устройств делать отдельный отчет, где убирать фильтры, KPI и еще ряд объектов. Это также касается Power BI или Tableau, но в Qlik особенно сильно проявляется. Мы надеемся Qlik еще поработает над своим мобильным клиентом.
Если у вас много времени планируется проводить аналитику именно с мобильных устройств, то имеет смысл поставить все 3 клиента и на тестовых отчетах проверить их отображение. Любой вендор на своем сайте имеет галерею тестовых отчетов для ознакомления.
7. Embedded (встроенная) аналитика в сторонние приложения/сайты
Использование аналитики как стороннего сервиса не всегда удобно. Возможно вы разрабатываете свой продукт, но не готовы заняться разработкой визуализации и движка аналитики с нуля. Возможно вы хотите развернуть аналитику на своем сайте, чтобы клиент сам регистрировался, загружал свои данные и проводил анализ внутри личного кабинета. Для этого вам необходима встроенная аналитика (Embedded).
Все продукты позволяют это сделать, но в этой категории мы выделим Qlik.
Power Bi и Tableau однозначно говорят, что для таких целей нужно покупать отдельный продукт Tableau Embedded Analytics или Power BI Embedded. Это не дешевые решения в тысячах долларов за месяц, что сразу ограничивает их использование. Большинство проектов сразу становится нерентабельными для наших клиентов. Имеется в виду, что вам нужно не просто опубликовать отчет всей сети Интернет, а обеспечить публикацию отчетов согласно определенных доступов, с защитой данных, авторизацией пользователей и т.д.
А Qlik позволит вам выкрутиться. Конечно, у них тоже есть Qlik Analytics Platform который лицензируется на сервер и организует неограниченное количество подключений. Это также будет дорого как и конкуренты Tableau и Power Bi. И в случае с неограниченными подключениями вариантов особо нет.
Но в Qlik есть такое понятие как Mashup. Допустим у вас есть Qlik Sense Enterprise и 10 лицензий. Стандартная аналитика, внешний вид, все уже надоело. Вы поднимаете собственный сайт или приложение, и можете внедрить всю свою аналитику прямо туда. Фишка в том, что упрощенно говоря, Mashup это визуализация в программном коде. По API вы можете программно задать создание визуализации внутри вашего приложения или сайта. Qlik Sense Enterprise вам по прежнему будет нужен для лицензирования (лицензии на подключения к сайту = лицензиям на подключения к BI), для загрузки данных и т.д., но визуализации будут уже отображаться не на стороне этого сервера, а встраиваться к вам в приложение или сайт. Вы можете использовать CSS стили, задавать новые шрифты, цвета. Ваши 10 пользователей теперь не будут заходить на сервер аналитики, а будут пользоваться вашим корпоративным порталом или приложением. Аналитика выйдет на новый уровень.
Рисунок 21. Внешний вид отчета Qlik Sense внедренного на веб-сайт
Уже сложно будет понять где элементы сайта, а где уже начинается Qlik Sense.
Конечно, вам потребуется программист, а даже скорее несколько. Один для веб-программирования, один для работы с API Qlik. Но результат того стоит.
Выводы. Подведем итоги.
Сложно однозначно сказать, кто лучше, а кто хуже. Power BI и Qlik в нашем соревновании идут наравне, Tableau чуть уступает. Но возможно для вашего бизнеса результат будет другой. В BI платформах очень важна визуальная составляющая. Если вы посмотрели десятки демо отчетов и картинок в интернете по всем BI системам и вам не нравится как выглядит одна из платформ, то скорее всего вы ее не будете внедрять, даже если вас устраивает цена или тех. характеристики.
Далее вам обязательно нужно будет просчитать стоимость лицензий, внедрения и содержания BI платформы. Возможно в вашем случае будет выявлен лидер. Большое значение имеет подрядчик или возможность нанять подходящего специалиста. Без профессионалов в любой платформе результат будет плачевным.
Успешных вам BI-интеграций, Андрей Жданов и Лазарев Владимир, Аналитикс Групп