Привет, Хабр, на связи Modus! И я, product owner Александр Чебанов, расскажу о том, как работают с данными облачные решения, например, наш Modus BI Cloud.
Modus BI Cloud
Modus BI Cloud – это облачная BI-платформа, которую мы разрабатываем для малого и среднего бизнеса. Система предлагает работать в режиме low-code - можно создавать отчеты, дашборды и аналитические панели любой сложности без навыков программирования.
Продукт новый и на рынок пока не вышел. В июле 2023 года мы провели бета-тестирование основного функционала, получили бэклог инсайтов, результаты UX/UI и нагрузочных тестов (про тестирование я позже расскажу отдельно).
Сейчас продукт дорабатывается и затем выйдет на рынок в MVP-версии.
Как устроен облачный BI
Облачная BI-система может работать с теми же источниками данных, что и on-premise решение, то есть: СУБД, из файлов, «1C», web-сервисов через API и т.п.
Архитектура Modus BI Cloud спроектирована специально для малого и среднего бизнеса. Как правило, в таких компаниях немного (обычно - до пяти) источников данных. В MVP-версии нашей системы мы работаем с 3-мя типами источников:
информационные базы любых конфигураций «1С:Предприятия»;
различные СУБД (PostgreSQL, MSSQL, Vertica, ClickHouse и т.п.);
из подгруженных в систему файлов Excel и Google. Таблиц.
Данные из источников подготавливаются и попадают в облачное хранилище. В Modus BI Cloud в качестве ядра аналитического хранилища мы использовали СУБД ClickHouse.
После загрузки можно описать связи между данными в виде графической схемы. Например, нужно связать данные планов продаж в Excel и фактов продаж, которые ведутся в «1C:Предприятие». Для этого мы создадим набор данных «План продаж» и загрузим его из Excel, так же построим набор фактов продаж, подключившись к данным «1С». Далее выведем новый набор данных, в котором пользователь свяжет данные продаж с данными планов, настроив графическую схему.
Пользователи без навыков программирования смогут строить разнообразные витрины данных в режиме Self-Service и визуализировать информацию в виде отчетов, таблиц, графиков – в общей сложности используются 30 визуальных компонентов.
В базовую версию Modus BI Cloud мы включили только основные функции. Потестируем, и, если будет запрос, включим и другие функции управления данных, которые будут выходить в формате обновлений.
Подключение данных в Modus BI Cloud
Мы разработали интуитивно понятный интерфейс. Пользователь указывает тип подключения, адрес размещения информационной базы, загружает файл или указывает ссылку на файл в облачном хранилище.
Если нужно подключить базу данных «1С:Предприятия», то мы поставляем коннектор, который устанавливается в виде расширения и предоставляет http-интерфейс для выполнения запросов. SQL-система, к которой есть доступ по odbc, также может быть источником для облака.
После подключения пользователь создает правило сбора данных, которое собирает информацию и помещает в хранилище. Из объединенных таблиц формируется модель, которая генерирует запрос, или материализованное представление, которое предподготавливает эти данные в соответствии с моделью.
Предподготовка данных
У нас есть 2 способа работы с данными – подготовка материализованных представлений и выполнение запросов «на лету», т.е. непосредственно в процессе работы. Определенные связи помещаются в таблицу данных колоночной СУБД и на основании них анализируются.
«На лету» мы задаем связи между объектами, формируем модель и, когда работаем с
визуализацией, запрос строится исходя из параметров для конкретной визуализации.
Хранилище данных
Modus BI Cloud хранит витрины данных (т.е. уже структурированные данные) в СlickHouse, а исходники, на основании которых строятся витрины - в отдельном внутреннем защищенном хранилище. Это повышает скорость работы и обеспечивает безопасность данных.
Витрина данных
Витрина данных (от англ. Data mart) – это набор структурированных данных. Чаще всего, специализированных или из определенного раздела или тематики – например, отдела маркетинга или бухгалтерии. Таких витрин может быть множество.
«Почему бы не взять данные сразу из СУБД?», - спросите вы.
В первую очередь, для повышения скорости отображения данных – для анализа большого количества данных в ядре нашего решения находится высокопроизводительная аналитическая СУБД. Во-вторых, чтобы аналитические запросы не нагружали первичные системы. Третье – чтобы данные можно было соединять между собой.
Данные витрин могут автоматически обновляться по расписанию. В случае ошибки загрузки витрина просто не обновится – то есть, не будет следов сбойных операций, дублей и т.п. На самом деле, это тема отдельной большой статьи.
В Modus BI Cloud витрина данных выстраивается на СlickHouse. В зависимости от построенной модели она может быть материализованной, т.е. результат модели помещается в отдельную таблицу и хранится в отдельном хранилище, или не материализованной, когда запрос строится автоматически с разными соединениями, объединениями и т.п.
Пользователь сам выбирает, как будет строится таблица, в зависимости от сложности модели.
Если Вы работаете в сегменте малого или среднего бизнеса, рассматриваете переход на российское BI-решение или задумываетесь о том, чтобы начать работать с аналитикой – напишите нам на почту cloud@modusbi.ru, и мы уведомим вас, когда Modus BI Cloud выйдет на рынок. Базовая версия будет бесплатной.