/
Структура платформы

Структура платформы

Высокоуровневая архитектура платформы

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

Ниже представлена высокоуровневая архитектура платформы Visiology с кратким описанием ее основных компонентов.

схема.png

 

В состав платформы входят следующие компоненты:

  • ViQube 2.0 – высокопроизводительное хранилище данных, реализованное на основе ClickHouse. Это логическое объединение нескольких компонентов:

    • Formula Engine – бэкенд-сервис, реализующий Tabular Object Model c помощью ClickHouse. Основные функции:

      • хранение и управление TOM-моделью (Tabular Object Model);

      • хранение больших объемов данных;

      • обработка аналитических запросов на языке DAX;

      • построение оптимальных структур хранения и индексов для более быстрой обработки DAX-запросов;

      • кэширование DAX-запросов;

      • хранение прав доступа к наборам данных.

    • MinIO – простое объектное хранилище, поддерживающее S3 протокол, репликацию, масштабирование, отказоустойчивость и аутентификацию. В данный момент там хранятся временные Excel- и CSV-файлы для загрузки данных в ClickHouse.

    • Data Management Service (DMS) – бэкенд-сервис, предоставляющий доступ к следующим функциональным возможностям:

      • хранение, чтение и редактирование ER-диаграммы для TOM (Tabular Object Model);

      • загрузка данных из различных источников с настройкой маппинга (автоматическая и по запросу):

        • CSV;

        • JDBC-совместимые базы данных;

        • Excel.

      • Настройка расписаний автоматической загрузки данных.

    • JDBC Bridge – работает как простой прокси-сервер без сохранения состояния, который передает SQL-запросы из ClickHouse на внешние СУБД, поддерживающие JDBC-драйвер. Этот прокси-сервер позволяет ClickHouse подключаться к источникам данных с поддержкой JDBC для загрузки данных.

  • Dashboard Service – позволяет создавать и публиковать интерактивные отчеты (дашборды). Данный сервис предоставляет следующие возможности:

    • получение, редактирование и хранение дашбордов;

    • формирование DAX-запросов для получения данных;

    • экспорт данных в формате Excel;

    • взаимодействие с пользовательскими виджетами, темами, пользовательскими JavaScript-скриптами, картинками;

  • Visiology Designer - графический дизайнер, который работает в интернет-браузере (SPA-приложение). Предоставляет следующие возможности:

    • редактирование и просмотр существующих дашбордов;

    • редактирование и просмотр рабочих областей;

    • создание, удаление и просмотр списка наборов данных;

    • редактирование набора данных;

    • редактирование модели данных (ER-диаграммы);

    • загрузка данных и настройка автоматического обновления данных.

  • Dashboard Viewer – данный сервис отвечает за визуализацию виджетов на экране и обеспечивает выполнение следующих операций:

    • получение данных для виджетов; 

    • редактирование исходного кода виджета;

    • отображение виджетов на экране с учетом всех настроек;

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

  • Workspace Service - данный сервис позволяет взаимодействовать с рабочими областями и отвечает за выполнение следующих операций:

    • создание, изменение и удаление рабочих областей;

    • сопоставление ролей пользователей с пользователями или группами пользователей, зарегистрированными в Keycloak, а также хранение информации об этом. Каждый сервис, перед обработкой запроса на доступ, проверяет права пользователя через запрос к Workspace Service;

  • Keycloak – сервис авторизации, который предоставляет следующие функции:

    • создание, редактирование и удаление пользователей и групп для Visiology 3.x;

    • хранение глобальной роли GlobalAdmin в Keycloak и ее сопоставление с пользователями (глобальными администраторами);

    • интеграция с внешними системами авторизации, включая OpenID Connect, LDAP(S), Kerberos и SAML;

    • поддержка протокола OpenID Connect для аутентификации (все описанные сервисы используют этот протокол для аутентификации);

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

  • PostgreSQL - база данных, которая используется только для Keycloak.

  • Мониторинг и анализ производительности (Observability) – включает в себя несколько компонентов для сбора, хранения и анализа логов, трассировок и метрик:

    • Grafana – инструмент для просмотра и анализа логов, трассировок и метрик, который подключается к Loki, Prometheus, Tempo и проходит авторизацию через Keycloak. Доступ к Grafana имеют только пользователи с глобальной ролью GlobalAdmin;

    • Loki – база данных для хранения логов;

    • Prometheus - база данных для хранения метрик;

    • Tempo - база данных для хранения трассировок;

    • Otelcol - сервис для сбора логов в режиме PUSH (все сервисы отправляют информацию в Otelcol) и последующей отправки этих логов, метрик и трассировок в Loki, Prometheus и Tempo.

  • Хранилище метаданных (MongoDB) - В MongoDB хранятся метаданные всех компонентов платформы.

Для работы платформы используется веб-сервер nginx.

Разворачивание и использование

Платформа разворачивается администратором на сервере под управлением операционной системы Linux (см. Разворачивание платформы).

Клиентская часть платформы – Visiology Designer. Это веб-приложение, где загружаются данные, создаются и настраиваются дашборды. Для работы с приложением требуется интернет-браузер.

Вы можете узнать текущую версию платформы, наведя курсор мыши на информационную иконку в левом нижнем углу главного экрана:

Рабочий процесс

Создание дашбордов на платформе состоит из нескольких этапов:

  1. Загрузка данных и построение модели данных в Visiology Designer.

  2. Визуализация загруженных данных (построение дашбордов).

  3. Тонкая настройка созданных дашбордов: переименование виджетов, изменение шрифтов, добавление эффектов, замена цветов и т.д..

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


Смотрите также

Разворачивание платформы
Системные требования
Термины и определения

 

Related content

Создание картосхемы
Создание картосхемы
Read with this
Структура платформы
Структура платформы
More like this
Расчет доли продаж по продуктам внутри бренда
Расчет доли продаж по продуктам внутри бренда
Read with this
Структура платформы
Структура платформы
More like this
Совместная работа
Совместная работа
Read with this
Структура платформы
Структура платформы
More like this