BI-аналитика в условиях импортозамещения. Как построить удобную вендоро-независимую аналитику.

Всем привет! С вами Евгений Стучалкин. Т.к. настало время импортозамещения, считаю нужным поделиться своим видением того, как нужно подходить к разработке бизнес-аналитики сейчас. Многие аналитики до сих пор пребывают в шоке и пытаются решить задачу из серии “Найти российский аналог Power BI”. В которой, конечно же, терпят фиаско.

Поэтому я расскажу, как приземлить свои ожидания на реальность, и какие шаги нужно пройти, чтобы не только не потерять в функциональности решений, но и приобрести.

А также оптимизировать бюджет на лицензирование. И обеспечить наиболее высокую скорость перехода на новую модель. Без изучения дополнительных языков программирования и множества аналитических библиотек.

Под вендоро-независимостью мы подразумеваем такую организацию аналитического ландшафта, в котором нет замыкания на единственного ключевого поставщика, и разные блоки решения могут быть заменены на альтернативы при необходимости, включая open source.

Какую BI систему выбрать?

Я не знаю 🙂 На самом деле, у нас в фаворитах Visiology и Insight. Но при этом на российском рынке присутствуют как минимум 20 платформ, решающие задачи визуализации данных. Подробнее о них можно узнать в Круге Громова.

У всех разный функционал, подходы, ценовые политики. И не смотря на то, что есть весьма достойные представители, нужно признать факт — на данный момент по степени проработки функционала они серьезно уступают зарубежному ТОП-3: Qlik, Power BI, Tableau. Конечно, разрыв со временем будем уменьшаться. Даже за прошедший месяц те же Visiology очень активно реагируют на обратную связь нахлынувшей аудитории. Но тем не менее, решений остается очень много.

Отдельные соболезнования выражаю коллегам, которые ищут «аналог Power BI» за почти бесплатно (потому что именно столько они платили за Power BI). Ценовая политика и функционал PBI являются результатом вливания огромных средств и трудозатрат одной из самых мощных мировых корпораций. Не существует другой компании, которая может поставить аналогичный инструмент с такой же ценовой политикой входа и функционалом.

Но есть и хорошая новость — в ваших силах собрать аналитическую систему, которая в итоге не только не уступит по бизнес-полезности решениям на ТОП-3 мировых системах, но и поможет получить дополнительные преимущества, которых у вас раньше не было.

Для нас всех, разработчиков и аналитиков, я вижу правильной следующую стратегию: нужно строить аналитический ландшафт, в котором роль BI-системы будет заключаться в использовании максимально готовых данных, созданных с помощью соответствующих инструментов. Тогда у нас появляется возможность выбрать тот визуализатор, который будет лучше всего решать задачи построения интерактивных визуализаций. Даже если у этого BI урезанный или отсутствующий функционал по преобразованию данных (ETL, модели, аналитическое хранилище).

Модульный подход закроет пробелы в функционале

Первое, с чем нужно смириться — вам придется комбинировать несколько программных продуктов для надежного обеспечения полноценного функционала бизнес-аналитики.

Если взять весь пайплайн превращения данных в аналитику, то в нем будут примерно такие этапы:

Если вы раньше пользовались Qlik, то все эти этапы вы могли закрыть средствами стандартной редакции платформы. Если пользовались Power BI — как минимум вам был доступен Power Query, с помощью которого можно было привести данные к нужному формату перед визуализацией. На российском рынке представлены платформы, которые также могут решать схожие задачи. Но при этом стоимость подобных решений и порог входа в них будет не милосердным.

При этом, если ETL функциональность будет работать только для задач BI-платформы, то вы рискуете оказаться заложником. ETL готовит данные для использования в одном инструменте, но вам больше нравится визуал из другого? Что ж, вам не повезло. И чтобы в этой ситуации не оказаться, есть смысл разбить пайплайн преобразования данных на блоки, задачи которых будут решаться специализированными инструментами. Вот как мы видим всю схему:

Данный подход представлен для решения задач бизнес аналитики. В нашем понимании, бизнес-аналитика несет в себе следующую специфику:

  • Необходимость анализа большого количества взаимосвязанных таблиц;
  • Множество источников данных;
  • Необходимость преобразования таблиц источника к удобному для аналитики формату — чтобы загрузил в нужный инструмент, и сразу работаешь;
  • Необходимость генерации данных: прогнозы, рекомендации, и т.д.
  • Непредсказуемое изменение структуры таблиц: добавление новых источников, добавление новых производных расчетов;
  • Возможность работы с агрегированными представлениями больших данных (вам не нужно грузить 10 млрд транзакций за все время, если вы анализируете продажи в разрезе клиентов за год).

Что, по нашему мнению, не входит в задачи бизнес-аналитики:

  • Machine Learning;
  • Онлайн мониторинг;

Разберем блоки схемы детально.

Извлечение данных

Прежде чем мы сможем визуализировать данные, нам нужно их извлечь из источников. Из некоторых источников извлечение делается легко: Подключения к БД и файлам есть в общем-то во всех инструментах. Но вот для источников типа 1С и облачных сервисов лучше использовать специализированные коннекторы. Вы можете написать их сами, если позволяют навыки. Или приобрести что-то готовое на рынке.

Для 1С мы рекомендуем коннектор ATK BiView. Он позволяет не погружаться в дебри базы 1С, а отправлять к ней человеко понятные запросы, за счет оперирования метаданными.

Для amoCRM и Bitrix24 мы рекомендуем коннекторы собственной разработки. Они выгружают данные в БД на вашей стороне, сразу в удобных представлениях. Также, мы можем разработать коннекторы на заказ.

Как альтернативу коннекторам на облачных сервисах, можете рассмотреть MyBI Connect. Там также есть возможность выгружать данные из amoCRM и Bitrix24, но итоговая структура таблиц слишком запутана, на мой взгляд. Также есть возможность работать с данными из рекламных кабинетов. Данные хранятся в облаке.

Трансформация и очистка данных

Мало получить данные из источника. Нужно привести их к удобному для аналитики виду, или даже сгенерировать новые данные на основе исходных. Мы рекомендуем для этих задач систему Loginom. У нее низкий порог входа и обширная функциональность. С ее помощью можно построить визуальные сценарии, и сохранить полученные данные в аналитическую базу. Loginom обеспечивает преобразование данных, аналог которого вы делали в скриптах Qlik или Power Query.

Я выбрал Loginom, потому что смог разобраться в нем за несколько часов, и сделать прототипы половины ETL процессов из наших проектов. Продукт зрелый (30 лет истории), и это тот самый случай, когда его имеет смысл использовать не только ради импортозамещения, но и тех преимуществ, которые он дает.

Также могу отметить качественную поддержку, которая разбирает конкретно твои кейсы и помогает выстраивать сценарии. В случае, если нужна логика расчетов, недоступная в стандартных блоках, можно использовать компоненты с кодом JavaScript, Python, или произвольные SQL запросы при обращении к БД (в т.ч. динамически генерируемые).

Подготовленные данные экспортируются во множество форматов для дальнейшего использования

Дополнительные плюсы платформы — возможность выполнения сценариев обработки данных в режиме “по запросу”. Например, для задач скоринга: пользователь вбивает параметры клиента, и Loginom прогоняет их через множество алгоритмов и сопоставлений. Либо можно разработать систему корректировок прогнозов, как мы это сделали в проекте с Русской Рыбной Компанией. Либо можно проставлять задачи в рабочие системы сотрудников на основе предрасчитанных данных.

Ведь задача аналитики — не только дать обзор ситуации. но и помочь запустить целевые действия. И часто для таких сценариев визуализации не нужны.

Хранение аналитических таблиц

Для хранения чистовых аналитических таблиц, мы используем  СУБД PostgreSQL. Она достаточно проста в установке и настройке, бесплатна, и неплохо масштабируется для задач бизнес-аналитики. Есть возможность установить плагин для колоночного режима хранения, чтобы снизить объем хранимых данных. Конечно, пересохранять туда миллиарды транзакций из учетной системы смысла не имеет. Для работы с большими данными можно использовать 3 подхода:

  • Сохранять в PostgreSQL агрегированные представления транзакционных данных;
  • Загружать отфильтрованный срез детализированных транзакций на этапе формирования модели данных;
  • Использовать live-connect к БД с транзакциями из BI-инструмента.

Построение моделей данных

Внезапно, но наличие подготовленных аналитических витрин не гарантирует, чтоб в выбранном BI-инструменте вы сможете построить модель данных, которая будет отвечать необходимой логике анализа. А значит, для упрощения входа в BI-инструменты модель данных также нужно готовить на стороне аналитической СУБД.

Наиболее подходящей для задач бизнес-аналитики и визуализации в BI является топология Звезда. В ней таблицы данных соединяются не между собой напрямую, а через центральную промежуточную таблицу. Есть разные вариации звезды, например когда в центральную часть выносятся не только поля для связи, но и поля расчетов мер. Но общий принцип построения не изменен, и это плюс — такая модель будет работать одинаково в разных визуализаторах. Это максимально развязывает вам руки в выборе платформы, и упрощает возможную миграцию между системами аналитики в будущем.

Такие модели можно также строить с помощью Loginom, и эту информацию мы будем давать в обучающем курсе в ближайшее время. Кроме того, у нас есть собственный модуль, который автоматизирует формирование звезды для набора таблиц с любой сложностью связей. Этот функционал также будет презентован в ближайшее время.

Визуализация данных

С таким аналитическим ландшафтом, вы можете выбирать любой визуализатор, исходя из удобства построения интерактивной аналитики. И не минимизируя риск выбрать “не ту” платформу.

Что делать дальше?

Присоединяйтесь к нашей Telegram-группе. Там можно обсудить статьи, задать вопросы, и не пропустить анонсы мероприятий и продуктов.

Добавить комментарий

Ваш адрес email не будет опубликован.

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.